微机原理与接口技术

上传人:re****.1 文档编号:568555860 上传时间:2024-07-25 格式:PPT 页数:47 大小:400KB
返回 下载 相关 举报
微机原理与接口技术_第1页
第1页 / 共47页
微机原理与接口技术_第2页
第2页 / 共47页
微机原理与接口技术_第3页
第3页 / 共47页
微机原理与接口技术_第4页
第4页 / 共47页
微机原理与接口技术_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《微机原理与接口技术》由会员分享,可在线阅读,更多相关《微机原理与接口技术(47页珍藏版)》请在金锄头文库上搜索。

1、第第6章章汇编语言程序设计汇编语言程序设计用汇编语言编程属结构化程序设计。用汇编语言编程属结构化程序设计。需按照结构化的思想来进行汇编程需按照结构化的思想来进行汇编程序的设计序的设计微机原理与接口技术分析题意,确定算法分析题意,确定算法根据算法画出程序框图根据算法画出程序框图根据框图编写程序根据框图编写程序上机调试程序上机调试程序执行程序执行程序按照自上而下的设计方法,设计一个汇编程序的步骤:按照自上而下的设计方法,设计一个汇编程序的步骤:微机原理与接口技术顺序程序顺序程序分支程序分支程序循环程序循环程序从结构上来讲,一般的汇编程序可分为:从结构上来讲,一般的汇编程序可分为:微机原理与接口技术

2、Eg:从键盘输入一个字符并存储到字节变从键盘输入一个字符并存储到字节变量量BUF单元中单元中.分析:分析:用用DOS功能调用完成键入,输入功能调用完成键入,输入的字符保存在的字符保存在AL寄存器中寄存器中将将AL中的内容存到定义在数据中的内容存到定义在数据段的变量段的变量BUF所指单元中所指单元中顺序程序设计顺序程序设计微机原理与接口技术.486DATASEGMENTUSE16BUF DB?DATAENDS源程序清单:源程序清单:CODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVAH,1INT 21H;AL=键入字符的键

3、入字符的MOVBUF,ALASIIC码码MOVAH,4CHINT 21HCODEENDSEND BEG微机原理与接口技术分支程序设计分支程序设计转移指令可用来实现分支程序设计转移指令可用来实现分支程序设计分支程序分三种:分支程序分三种:简单分支简单分支复合分支复合分支多分支多分支微机原理与接口技术简单分支简单分支即两路分支,该分支程序结构为:即两路分支,该分支程序结构为:条件满足否条件满足否?程序段程序段1程序段程序段2YN微机原理与接口技术 Eg: Eg: 将将BXBX寄存器的内容以二进制数格式显在寄存器的内容以二进制数格式显在屏幕上屏幕上BX=11110B简单分支简单分支RCLRCL0 0

4、SALSALROLROLCFCFCFCFCFCF微机原理与接口技术486CODESEGMENTUSE16ASSUMECS:CODEBEG:MOVBX,5678HMOVCX,16LAST:MOVAL,0ROLBX,1JNCNEXTMOVAL,1NEXT:MOVAH,0EHINT10HLOOPLASTMOVAH,4CHINT21HCODEENDSENDBEGADCAL,0数数BX,16 CXBX,16 CXC C标标=?=?1AL1AL调调BIOS.0EHBIOS.0EHCX-1CXCX-1CXCX=0CX=00AL0ALBXBX左移一位左移一位10NY返返DOSDOS源程序清单:源程序清单:微机

5、原理与接口技术复合分支复合分支判断的条件是复合条件,称复合判断判断的条件是复合条件,称复合判断复合分支程序结构为:复合分支程序结构为:条件条件1和条件和条件2.满足否?满足否?程序段程序段1程序段程序段2YN微机原理与接口技术Eg:Eg:某科室某科室9人,统计月收入在人,统计月收入在800900间的人数,并用十进制数显示间的人数,并用十进制数显示复合分支复合分支 分析:月收入是无符号数,对一批数处理应该用间址。分析:月收入是无符号数,对一批数处理应该用间址。 数轴数轴: N1 (800) N2 (900)N1 (800) N2 (900)微机原理与接口技术多分支多分支判断条件后有多个出口,判断

6、一次只能选择判断条件后有多个出口,判断一次只能选择一个分支。一个分支。多分支程序结构为:多分支程序结构为:1条件属哪种条件属哪种情况?情况?程序段程序段1程序段程序段n+m.程序段程序段nnn+m微机原理与接口技术例例. .多分支段内转移多分支段内转移要求:键入要求:键入0 0,转,转P0P0程序段程序段 键入键入1 1,转,转P1P1程序段程序段 键入键入9 9,转,转P9P9程序段程序段思路:思路:用比较指令配合直接转移指令实现用比较指令配合直接转移指令实现 CMP CMP 键入字符,键入字符,00 JE P0 JE P0 CMP CMP 键入字符,键入字符,11 JE P1 JE P1

7、用转移地址表配合间接转移指令实现用转移地址表配合间接转移指令实现多分支多分支微机原理与接口技术486DATASEGMENTUSE16TABDWP0,P1,P9; ;汇编后自动装入相应的偏移地址汇编后自动装入相应的偏移地址MESGDB0DH,0AH,strike09:$DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXAGA:MOVAH,9MOVDX,OFFSETMESGINT21HMOVAH,1INT21HCMPAL,0JCAGACMPAL,9JAAGASUBAL,30HMOVZXBX,ALADDBX,BX;2

8、BXBXMOVSI,OFFSETTABJMPBX+SI;DS:BX+SIIPP0:P1:P9:CODEENDSENDBEG或或: :MOVBX,BX+SIJMPBX;BXIP源程序清单:源程序清单:微机原理与接口技术循环程序设计循环程序设计循环程序的组成:循环程序的组成: 循环准备循环准备 循环体循环体 循环控制循环控制微机原理与接口技术1. 1. 循环程序的结构循环程序的结构Y Y预置循环次数预置循环次数其他准备工作其他准备工作循环体循环体循环减循环减1 1计数计数退出循环退出循环结果为结果为0?0?N N(a(a) )单单循循环环结结构构(b(b) ) 双双循循环环结结构构结果为结果为0?

9、0?循环体循环体内循环减内循环减1 1计数计数结果为结果为0?0?外循环减外循环减1 1计数计数退出循环退出循环预置外循环次数预置外循环次数其他准备工作其他准备工作预置内循环次数预置内循环次数其他准备工作其他准备工作N NN NY YY Y微机原理与接口技术Eg: Eg: 假设从假设从BUFBUF单元单元开始为一个开始为一个 ASCII ASCII码字符串码字符串, ,找出其中找出其中的最大数送屏幕显的最大数送屏幕显示。示。循环程序设计循环程序设计思路:思路:ASCASC码数为无符号数,码数为无符号数,无符号数的最小数为无符号数的最小数为0 0Y YN NN N数据区首址数据区首址DS:BXD

10、S:BX无符号最小数无符号最小数ALAL数据个数数据个数CXCXBX ALBX ALBX=AL?BX=AL?BX+1 BXBX+1 BXCX-1 CXCX-1 CX显示结果显示结果返回返回DOSDOSCX=0CX=0? ?Y Y微机原理与接口技术486DATASEGMENTUSE16BUFDBQWERTYUIOP123COUNTEQU$-BUF; ;统计串长度统计串长度MAXDBMAX=,?,0DH,0AH,$DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVAL,0; ;无符号最小数无符号最小数 0 A

11、L 0 ALLEABX,BUF; ;串首址偏移量串首址偏移量BXBXMOVCX,COUNT; ;串长度串长度CXCX LAST:CMPBX,AL; ;比较比较JCNEXTMOVAL,BX; ;大数大数ALALNEXT:INCBXLOOPLAST; ;循环计数循环计数MOVMAX+4,AL ; ;最大数最大数MAX+4 MAX+4 单元单元MOVAH,9MOVDX,OFFSETMAXINT21H; ;显示结果显示结果MOVAH,4CHINT21H; ;返回返回 DOS DOSCODEENDSENDBEG 源程序清单源程序清单1:微机原理与接口技术 486DATASEGMENTUSE16BUFDB

12、QWERTYUIOP123FLAGDB1; ;设置串结束标志设置串结束标志MAXDBMAX=,?,0DH,0AH,$DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVAL,0; ;无符号最小数无符号最小数 0 AL 0 ALLEABX,BUF; ;串首址偏移量串首址偏移量BXBXLAST:CMPBYTEPTRBX,-1;BX=;BX=串结束标志串结束标志 ? ?JEDISP; ;是是, ,转转CMPBX,ALJCNEXTMOVAL,BX; ;大数大数ALALNEXT:INCBXJMPLASTDISP:MO

13、VMAX+4,AL; ;最大数最大数MAX+4 MAX+4 单元单元MOVAH,9MOVDX,OFFSETMAXINT21H; ;显示结果显示结果MOVAH,4CHINT21H; ;返回返回 DOS DOSCODEENDSENDBEG 源程序清单源程序清单2:微机原理与接口技术汇编程序设计举例汇编程序设计举例 代代 码码 转转 换换微机原理与接口技术代码转换代码转换微机原理与接口技术 常见的代码转换有:常见的代码转换有: 二进制数二进制数显示显示 二进制数二进制数十进制数十进制数显示显示 二进制数二进制数十六进制数十六进制数显示显示 BCD BCD码数码数二进制数二进制数微机原理与接口技术代码

14、转换代码转换A一.一.二进制数显示:二进制数显示:例例. .把键盘输入的一位数把键盘输入的一位数(0(09),9),转换成等值二进数显示转换成等值二进数显示显示的格式要求如下:显示的格式要求如下:PleaseEnter:ERROR!PleaseEnter:9 =00001001B微机原理与接口技术代码转换代码转换思路:思路:键盘缓冲区中是键入字符的键盘缓冲区中是键入字符的ASCASC码。码。 0 09 9的的ASCASC码为码为30H30H39H39H。二进制数每一位代码的判断:二进制数每一位代码的判断:本程序采用两种格式设计源程序:本程序采用两种格式设计源程序:一种是一种是EXEEXE文件编

15、程格式,文件编程格式,另一种是另一种是COMCOM文件编程格式。文件编程格式。RCLRCL0 0SALSALROLROLCFCFCFCFCFCF微机原理与接口技术程序框图:程序框图: AL-30HBL AL-30HBL = =屏幕屏幕,8CX ,8CX 0 0 屏屏幕幕1 1 屏屏幕幕CX-1 CXCX-1 CXB B 屏幕屏幕, ,返回返回DOSDOSN NN N给出操作提示给出操作提示键盘输入键盘输入ALALAL=0AL=09?9?CF=?CF=?CX=0?CX=0?BLBL左移一位左移一位Y Y显示错误信息显示错误信息 Y Y0 01 1微机原理与接口技术.486DATASEGMENTU

16、SE16MESG1DBPleaseEnter!,0DH,0AH,$MESG2DB-Error!$DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATABEG:MOVAX,DATAMOVDS,AXMOVAH,9MOVDX,OFFSETMESG1INT21H; ;显示操作提示显示操作提示MOVAH,1INT21H; ;等待键入等待键入CMPAL,3AHJNCERROR; ;99转转CMPAL,30HEXEEXE格式程序清单格式程序清单 JCERROR; ;00转转SUBAL,30HMOVBL,AL;BL=0;BL=09 9 的二进制数的二进制数MOVAH,2MO

17、VDL,=INT21HCALLDISPMOVAH,2MOVDL,BINT21HJMPEXITERROR:MOVAH,9MOVDX,OFFSETMESG2INT21H; ;显示错误信息显示错误信息EXIT:MOVAH,4CHINT21H微机原理与接口技术;-DISPPROC; ;显示显示BLBL中的二进制数中的二进制数MOVCX,8LAST:MOVDL,0RCLBL,1JNCNEXTMOVDL,1NEXT:MOVAH,2INT21HLOOPLASTRETDISPENDPCODEENDSENDBEGEXEEXE格式程序清单格式程序清单 微机原理与接口技术 .486CODESEGMENTUSE16A

18、SSUMECS:CODEORG100HSTART:JMPBEGMESG1DBPleaseEnter!,0DH,0AH,$MESG2DB-Error!$BEG:MOVAH,9MOVDX,OFFSETMESG1INT21H; ;显示操作提示显示操作提示 MOVAH,1INT21H; ;等待键入等待键入CMPAL,3AHJNCERROR; ; 9 9 转转CMPAL,30HJCERROR; ; 0 0 转转SUBAL,30HMOVBL,AL;BL=0;BL=09 9 的二进制数的二进制数MOVAH,2MOVDL,=INT21HCALLDISPMOVAH,2MOVDL,BINT21HJMPEXITMO

19、VDX,OFFSETMESG2INT21H; ;显示错误信息显示错误信息INT21HERROR:MOVAH,9EXIT:MOVAH,4CHCOMCOM格式程序清单格式程序清单 微机原理与接口技术;-DISPPROC; ;显示显示BLBL中的二进制数中的二进制数MOVCX,8LAST:MOVDL,0RCLBL,1JNCNEXTMOVDL,1NEXT:MOVAH,2INT21HLOOPLASTRETDISPENDPCODEENDSENDSTARTCOMCOM格式程序清单格式程序清单 微机原理与接口技术问题:问题:键入的是两位十进制数时,键入的是两位十进制数时,如何将该十进制数的二进制数显如何将该十

20、进制数的二进制数显示在屏幕上?示在屏幕上?代码转换代码转换微机原理与接口技术二二. .二进制数二进制数十六进制数显示十六进制数显示算法:算法:四位二进制数四位二进制数等值的十六进制数等值的十六进制数十六进制数十六进制数 ASC ASC码码算法算法000010011010111109AF30H39H41H46H四位二进制数四位二进制数+30H+30H= = 等值的十六进制等值的十六进制数数ASCASC码码四位二进制数四位二进制数+37H+37H= = 等值的十六进等值的十六进制数制数ASCASC码码代码转换代码转换微机原理与接口技术编程技巧:编程技巧:8 8位二进制数位二进制数截取高截取高4 4

21、位位显示显示显示显示截取低截取低4 4位位XXXX XXXXXXXX0000XXXX00001616进制数进制数ASCASC码码1616进制数进制数ASCASC码码代码转换代码转换微机原理与接口技术例例.设从设从BNUM单元开始,有单元开始,有4个个16位的二进制数,要求位的二进制数,要求把它们转换成把它们转换成16进制数,并送屏幕显示。进制数,并送屏幕显示。 程序清单程序清单 .486DATASEGMENTUSE16BNUMDW10100B;1234HDW11000B;5678HDW01011B;1A2BHDW01101B;3C4DHBUFDB4DUP(?),H$; ;输出缓冲区输出缓冲区C

22、OUNTDB4DATAENDSCODESEGMENTUSE16ASSUMECS:CODE,DS:DATA微机原理与接口技术BEG:MOVAX,DATAMOVDS,AXMOVCX,4MOVBX,OFFSETBNUMAGA:MOVDX,BXSALEDX,16CALLN2_16ASCMOVAH,9MOVDX,OFFSETBUFINT21H; ;显示一个显示一个1616进数进数ADDBX,2; ;地址加地址加 2 2LOOPAGAMOVAH,4CHINT21H; ;二进数二进数十六进数十六进数ACSIIACSII码码N2_16ASCPROCMOVSI,OFFSETBUF; ;输出缓冲区地址输出缓冲区地

23、址SISIMOVCOUNT,4LAST:ROLEDX,4ANDDL,0FHCMPDL,10JCNEXTADDDL,7NEXT:ADDDL,30HMOVSI,DLINCSI; ;地址加地址加1 1DECCOUNT; ;计数计数JNZLASTRETN2_16ASCENDPCODEENDSENDBEGEXEEXE格式程序清单格式程序清单 微机原理与接口技术代码转换代码转换三三.BCD.BCD码码二进制数二进制数例例. .4 4位位BCDBCD码数码数二进制数显示二进制数显示算法:设算法:设4 4位位BCDBCD码数列为码数列为:N3 N2 N1 N0N3 N2 N1 N0,等值二进制数等值二进制数=

24、N31000+N2100+N110+N0=(010+N3)10+N2)10+N1)10+N0编程考虑:编程考虑:4 4位位BCDBCD码最大为码最大为9999H,9999H,等值的二进制数最大为等值的二进制数最大为1616位位( (超过超过8 8位位) ),而且,而且D D1515位肯定为位肯定为0 0分离出分离出BCDBCD千位千位N3,N3,百位百位N2N2,十位,十位N1,N1,个位个位N0N0设计一个设计一个AX10+BX AXAX10+BX AX的子程序供调用,首次调用的子程序供调用,首次调用时,令时,令AX=0,BX=N3,AX=0,BX=N3,共调用共调用4 4次,则次,则AXA

25、X中即为等值的二进中即为等值的二进制数。制数。微机原理与接口技术486CODESEGMENTUSE16ASSUMECS:CODENUMDW4567H;BCD;BCD码表示码表示BEG:MOVCX,4;4;4次调用次调用 MOVAX,0AGA:ROLNUM,4MOVBX,NUMANDBX,000FHIMULAX,10ADDAX,BXLOOPAGA显示显示AX中的二进制数中的二进制数返回返回DOSCODEENDSENDBEG本例数据放在代码段!本例数据放在代码段!本例:本例: 因为因为AXAX的的D D1515=0,=0,是正是正的有符号数,所以可用的有符号数,所以可用IMUL指令指令AX10+B

26、XAXEXEEXE格式程序清单格式程序清单 微机原理与接口技术代码转换代码转换三三. .二进制数二进制数十进制数十进制数方法方法: :比较法,恢复余数法,除法比较法,恢复余数法,除法 8 8位二进制数最大为位二进制数最大为1111111111111111, 等值的等值的十十进制数为进制数为255255, 比较法的关键:比较法的关键:判断某二进制判断某二进制数数( (假设为假设为BEN单元的内容单元的内容) )包含包含几个几个100100,几个,几个1010,几个,几个1 1 1. 1. 8 8位二进制数位二进制数十进制数,十进制数,比较法:比较法: DL+1DL DL+1DL(BEN)-10B

27、EN(BEN)-10BEN(BEN)=100?(BEN)=100?N NY Y(BEN)=10?(BEN)=10?N NY Y0 DL0 DL DL+1DL DL+1DL(BEN)-100BEN(BEN)-100BENDL+30HDL+30H屏幕屏幕 0DL 0DL DL+30H DL+30H屏幕屏幕(BEN)+30H(BEN)+30H屏幕屏幕 返回返回DOSDOS微机原理与接口技术.486CMPDISPMACRONNLOCALLAST,NEXTMOVDL,0;DL;DL清清0 0LAST:CMPBEN,NN; ;比较比较JCNEXT;BEN;BENNNNN转转INCDL;DL;DL加加1 1

28、SUBBEN,NNJMPLASTNEXT:ADDDL,30HMOVAH,2INT21H; ;显示显示ENDMCODESEGMENTUSE16ASSUMECS:CODEBENDB10101110B;=174BEG:CMPDISP100CMPDISP10CMPDISP1MOVAH,4CHINT21HCODEENDSENDBEGEXEEXE格式程序清单格式程序清单 微机原理与接口技术代码转换代码转换2. 2. 8 8位二进制数位二进制数十进制数,恢复余数法(请自学)十进制数,恢复余数法(请自学)3. 3. 8 8位二进制数位二进制数十进制数,十进制数,“除权值求商除权值求商”的算法分析的算法分析把把

29、1111010111110101B十进制数十进制数245245算法:算法:依次用权值依次用权值100,10,1100,10,1去除去除上次的余数,直到余数为上次的余数,直到余数为0 0时停止。时停止。每次除法所得的商数顺序每次除法所得的商数顺序排列,即为十进制数。排列,即为十进制数。111101011100100101101102权值权值(100)(100)101010151011010余数为余数为0 0时止时止1权值权值(1)(1)100410110110101011010权值权值(10)(10)1010微机原理与接口技术例例. . 将将NUMNUM单元中的单元中的1616位二进制数,转换成

30、十进制位二进制数,转换成十进制数显示。数显示。思路:思路: 16 16 位二进制数:最大为位二进制数:最大为1111,其等值的十进制,其等值的十进制数为数为6553565535,故应判断,故应判断NUMNUM单元的数包含几个单元的数包含几个1000010000,几个几个10001000,几个,几个100100,几个,几个1010,几个,几个 1 1设计一个设计一个XXYYXXYY并显示商值的宏指令供调用,并显示商值的宏指令供调用,XXXX为为3232位,位,YYYY为为1616为二进制数。为二进制数。微机原理与接口技术DX,AXDX,AX为被除数为被除数486DIVIDEMACROXX,YYM

31、OVAX,XXMOVDX,0MOVCX,YY;CX;CX为除数为除数DIVCX;AX=;AX=商商, ,且且1010B,DX=1010B,DX=余数余数MOVAH,0EHADDAL,30HINT10HENDMCODESEGMENTUSE16ASSUMECS:CODENUMDW65530 ; ;汇编后为二进制数汇编后为二进制数BEG:DIVIDENUM,10000DIVIDEDX,1000本题在代码段中设置数据,本题在代码段中设置数据,这是这是COMCOM格式?格式?EXEEXE格式?格式?如果改为:如果改为:BEG: MOV BX,OFFSET NUMBEG: MOV BX,OFFSET NU

32、M DIVIDE BX,10000 DIVIDE BX,10000 是错误的,为什么?是错误的,为什么?DIVIDEDX,100DIVIDEDX,10DIVIDEDX,1MOVAH,4CHINT21HCODEENDSENDBEG显示一位商值显示一位商值不能不能颠倒颠倒分析:分析:应写成应写成: :DIVIDE CS:BX,10000DIVIDE CS:BX,10000 程序清单程序清单 微机原理与接口技术代码转换代码转换4. 84. 8位二进制数位二进制数十进制数,十进制数,“除十取余除十取余”的算法分析的算法分析 把把1111010111110101十进制数十进制数245245算法:算法:N

33、N被被(10)(10)1010除,商再被除,商再被(10)(10)1010除除,直到商数为,直到商数为0 0时止。时止。每次所得的余数按倒序方式每次所得的余数按倒序方式排列显示。排列显示。编程技巧:编程技巧:每次除法的余数每次除法的余数栈,栈,除法结束后,再从堆栈中除法结束后,再从堆栈中依次弹出余数依次弹出余数+30H+30H屏。屏。110001111010110101010101010151010即即(10)1010110001010100410100商为商为0 0时止时止10001021010微机原理与接口技术8 8位位3232位二进制数位二进制数转换成十进制数,转换成十进制数,通用的除法

34、求余框通用的除法求余框图图:( (书程序书程序, ,自学自学) )设设N N为待转换的为待转换的8 8位位3232位二进制数位二进制数EAX=EAX=商,商,EDX=EDX=余数,余数,且余数肯定且余数肯定1010B1010B统计除法的次数统计除法的次数CX=0?CX=0?弹出余数弹出余数+30H +30H 显示显示 CX-1 CX CX-1 CX N EAX N EAX除数除数 1010B EBX 1010B EBX 0 CX 0 CX计数器计数器 0 EDX 0 EDX(EDX,EAX)EBX(EDX,EAX)EBX 余数余数堆栈堆栈 CX+1 CX CX+1 CX商为商为0 0?转换完毕

35、转换完毕Y YY YN NN N微机原理与接口技术CODE SEGMENT USE16CODE SEGMENT USE16 ASSUME CS:CODE ASSUME CS:CODEBEN DB 10101110B ;=174BEN DB 10101110B ;=174BEG: CMPDISP 100BEG: CMPDISP 100 CMPDISP 10 CMPDISP 10 CMPDISP 1 CMPDISP 1 MOV AH,4CH MOV AH,4CH INT 21H INT 21HCODE ENDSCODE ENDS END BEG END BEG代码转换代码转换微机原理与接口技术 .

36、486 .486CODE SEGMENT USE16CODE SEGMENT USE16 ASSUME CS:CODE ASSUME CS:CODEBEN DB 10101110B ;=174BEN DB 10101110B ;=174BEG: MOV BL,100BEG: MOV BL,100 CALL CMPDISP CALL CMPDISP MOV BL,10 MOV BL,10 CALL CMPDISP CALL CMPDISP MOV BL,1 MOV BL,1 CALL CMPDISP CALL CMPDISP MOV AH,4CH MOV AH,4CH INT 21H INT 2

37、1H代码转换代码转换微机原理与接口技术 CMPDISP PROCCMPDISP PROC MOV DL,0 ;DL MOV DL,0 ;DL清清0 0LAST: CMP BEN,BL ;LAST: CMP BEN,BL ;比较比较 JC NEXT ;BEN JC NEXT ;BEN BX BX 转转 INC DL ;DL INC DL ;DL加加1 1 SUB BEN,BL ;BEN-BXBEN SUB BEN,BL ;BEN-BXBEN JMP LAST JMP LASTNEXT: ADD DL,30HNEXT: ADD DL,30H MOV AH,2 MOV AH,2 INT 21H ; INT 21H ;显示显示 RET RETCMPDISP ENDPCMPDISP ENDPCODE ENDSCODE ENDS END BEG END BEG代码转换代码转换微机原理与接口技术微机原理与接口技术

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 药学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号