微机原理与接口技术第二版课后习题问题详解完整版.doc

上传人:李司机 文档编号:1180873 上传时间:2022-07-15 格式:DOC 页数:43 大小:264.19KB
返回 下载 相关 举报
微机原理与接口技术第二版课后习题问题详解完整版.doc_第1页
第1页 / 共43页
微机原理与接口技术第二版课后习题问题详解完整版.doc_第2页
第2页 / 共43页
微机原理与接口技术第二版课后习题问题详解完整版.doc_第3页
第3页 / 共43页
微机原理与接口技术第二版课后习题问题详解完整版.doc_第4页
第4页 / 共43页
微机原理与接口技术第二版课后习题问题详解完整版.doc_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《微机原理与接口技术第二版课后习题问题详解完整版.doc》由会员分享,可在线阅读,更多相关《微机原理与接口技术第二版课后习题问题详解完整版.doc(43页珍藏版)》请在三一办公上搜索。

1、习题11. 什么是汇编语言,汇编程序,和机器语言?答:机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合。汇编语言是面向与其的程序设计语言。在汇编语言中,用助记符代替操作码,用地址符号或标号代替地址码。这种用符号代替机器语言的二进制码,就把机器语言编程了汇编语言。使用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序。2. 微型计算机系统有哪些特点?具有这些特点的根本原因是什么?答:微型计算机的特点:功能强,可靠性高,价格低廉,适应性强、系统设计灵活,周期短、见效快,体积小、重量轻、耗电省,维护方便。这些特点是由于微型

2、计算机广泛采用了集成度相当高的器件和部件,建立在微细加工工艺根底之上。3. 微型计算机系统由哪些功能部件组成?试说明“存储程序控制的概念。答:微型计算机系统的硬件主要由运算器、控制器、存储器、输入设备和输出设备组成。“存储程序控制的概念可简要地概括为以下几点: 计算机指硬件应由运算器、存储器、控制器和输入/输出设备五大根本部件组成。 在计算机内部采用二进制来表示程序和数据。 将编好的程序和原始数据事先存入存储器中,然后再启动计算机工作,使计算机在不需要人工干预的情况下,自动、高速的从存储器中取出指令加以执行,这就是存储程序的根本含义。 五大部件以运算器为中心进展组织。4. 请说明微型计算机系统

3、的工作过程。答:微型计算机的根本工作过程是执行程序的过程,也就是CPU自动从程序存放的第1个存储单元起,逐步取出指令、分析指令,并根据指令规定的操作类型和操作对象,执行指令规定的相关操作。如此重复,周而复始,直至执行完程序的所有指令,从而实现程序的根本功能。5. 试说明微处理器字长的意义。答:微型机的字长是指由微处理器内部一次可以并行处理二进制代码的位数。它决定着计算机内部存放器、ALU和数据总线的位数,反映了一台计算机的计算精度,直接影响着机器的硬件规模和造价。计算机的字长越大,其性能越优越。在完成同样精度的运算时,字长较长的微处理器比字长较短的微处理器运算速度快。6. 微机系统中采用的总线

4、结构有几种类型?各有什么特点?答:微机主板常用总线有系统总线、I/O总线、ISA总线、IPCI总线、AGP总线、IEEE1394总线、USB总线等类型。 7. 将如下十进制数转换成二进制数、八进制数、十六进制数。10=2=8=1610=2=8=1610=2=8=168. 将如下二进制数转换成十进制数。2=102=102=109. 将如下十进制数转换成8421BCD码。 2006=0010 0000 0000 0110BCD 123.456=0001 0010 0011.0100 0101 0110BCD10. 求如下带符号十进制数的8位基2码补码。 +127补=01111111 -1补=111

5、11111 -128补=10000000 +1补=0000000111. 求如下带符号十进制数的16位基2码补码。 +655补= 0000001010001111 -1补 -3212补 +100补=0000000001100100习题 21. 8086 CPU在内部结构上由哪几局部组成?各局部的功能是什么?答:8086 CPU内部由两大独立功能部件构成,分别是执行部件和总线接口部件。执行部件负责进展所有指令的解释和执行,同时管理有关的存放器。总线接口部件是CPU在存储器和I/O设备之间的接口部件,负责对全部引脚的操作。2. 简述8086 CPU的存放器组织。答:8086 CPU内部共有14个1

6、6位存放器,按用途可分为数据存放器,段存放器,地址指针与变址存放器和控制存放器。数据存放器包括累加器,基址存放器,计数器,和数据存放器。段存放器用来存放各分段的逻辑段基值,并指示当前正在使用的4个逻辑段。地址指针与变址存放器一般用来存放主存地址的段内偏移地址,用于参与地址运算。控制存放器包括指令存放器和标识存放器。3. 试述8086 CPU标志存放器各位的含义与作用。答:标志存放器是16位的存放器,但实际上8086只用到9位,其中的6位是状态标识位,3位是控制标识位。状态标志位分别是CF,PF,AF,ZF,SF,和OF;控制标志位包括DF,IF,TF。CF:进位标志位。算数运算指令执行后,假如

7、运算结果的最高位产生进位或借位,如此CF=1,否如此CF=0。PF:奇偶标志位。反响计算结果中1的个数是偶数还是奇数。假如运算结果的低8位中含有偶数个1,如此PF=1;否如此PF=0.AF:辅助进位标志。算数运算指令执行后,假如运算结果的低4位向高4位产生进位或借位,如此AF=1;否如此AF=0.ZF:零标志位。假如指令运算结果为0,如此ZF=1;否如此ZF=0。SF:符号标志位。它与运算结果最高位一样。OF:溢出标志位。当补码运算有溢出时,OF=1;否如此OF=0。DF:方向标志位。用于串操作指令,指令字符串处理时的方向。IF:中断允许标志位。用来控制8086是否允许接收外部中断请求。TF:

8、单步标志位。它是为调试程序而设定的陷阱控制位。4. 8086 CPU状态标志和控制标志有何不同?程序中是怎样利用这两类标识的?8086的状态标志和控制标识分别有哪些?答:状态标志位反响了当前运算和操作结果的状态条件,可作为程序控制转移与否的依据。它们分别是CF,PF,AF,ZF,SF,和OF。控制标志位用来控制CPU的操作,由指令进展置位和复位,控制标志位包括DF,IF,TF。5. 将1001 1100和1110 0101相加后,标识存放器中CF, PF, AF, ZF, SF, OF各为何值?答:CF=1,PF=1,AF=1,ZF=0,SF=1,OF=06. 什么是存储器的物理地址和逻辑地址

9、?在8086系统中,如何由逻辑地址计算物理地址?答:逻辑地址是思维性的表示,由段地址和偏移地址联合表示的地址类型叫逻辑地址。物理地址是真实存在的唯一地址,指的是存储器中各个单元的单元号。在8086系统中,物理地址=段地址10H偏移地址7. 段存放器CS=1200H,指令指针存放器IP=4000H,此时,指令的物理地址为多少?指向这一地址的CS指和IP值是唯一的吗?答:此指令的物理地址=1200H10H4000H=16000H 并且指向这一物理地址的CS值和IP值并不是唯一的。8. 在8086系统中,逻辑地址FFFF:0001,00A2:37F和B800:173F的物理地址分别是多少?答:逻辑地

10、址FFFF:000100A2:3TFB800:173F物理地址FFFF1H00D9FHB973FH9. 在8086系统中,从物理地址388H开始顺序存放如下3个双字节的数据651AH,D761H和007BH,请问物理地址388H,389H,38AH,38BH,38CH和38DH 6个单元中分别是什么数据?答:388H=1AH,389H=65H,38AH=61H,38BH=DTH,38CH=7BH,38DH=00H10. 8086微处理器有哪几种工作模式?各有什么特点?答:8086微处理器有最大和最小工作模式。在最小模式下:8086 CPU直接产生全部总线控制信号DT/R,DEN,ALE,M/I

11、O和命令输出信号RD,WR,INTA并提出请求访问总线的逻辑信号HOLD,HLDA。在最大工作模式下,必须配置8288总线控制器,并且根据8086提供的状态信号S2,S1,S0,输出读写控制命令,可以提供灵活多变的系统配置,以实现最优的系统性能。11. 简述8086引脚信号中M/IO,DT/R,RD,WR,ALE,DEN和BHE的作用。答:M/IO:输出信号,高电平时,表示CPU与存储器之间数据传输;低电平时,表示CPU与I/O设备之间数据传输。 DT/R:控制其数据传输方向的信号。DT/R=1时,进展数据发送;DT/R=0时,进展数据接收。RD:CPU的读信号,RD=0时,表示8086为存储

12、口或I/O端口读操作。WR:CPU的写信号,WR =0时,表示8086为存储口或I/O端口写操作。ALE:地址存锁信号,在T1能时刻有效。DEN:数据选通信号,当DEN有效时,表示允许传输。BHE:数据总线允许信号,与A0组合使用,表示是否访问奇地址字节。12. 简述8086读总线周期和写总线周期和引脚上的信号动尖态变化过程。8086的读周期时序和写周期时序的区别有哪些?答:在8086读周期内,有关总线信号的变化如下:M/:在整个读周期保持有效,当进展存储器读操作时,M/为高电平;当进展I/O端口读操作时,M/为低电平。A19/S6A16/S3:在T1期间,输出CPU要读取的存储单元或I/O端

13、口的地址高4位。T2T4期间输出状态信息S6-S3。/S7:在T1期间,输出BHE有效信号(为低电平),表示高8位数据总线上的信息可以使用,信号通常作为奇地址存储体的体选信号(偶地址存储体的体选信号是最低地址位A0)。T2T4期间输出高电平。ADl5AD0:在T1期间,输出CPU要读取的存储单元或I/O端口的地址A15A0。T2期间为高阻态,T3T4期间,存储单元或I/O端口将数据送上数据总线。CPU从ADl5AD0上接收数据。ALE:在T1期间地址锁存有效信号,为一正脉冲,系统中的地址锁存器正是利用该脉冲的下降沿来锁存A19/S6A16/S3,ADl5AD0中的20位地址信息以与。:T2期间

14、输出低电平送到被选中的存储器或I/O接口,注意,只有被地址信号选中的存储单元或I/O端口,才会被RD信号从中读出数据(数据送上数据总线ADl5AD0)。DT/:在整个总线周期内保持低电平,表示本总线周期为读周期,在接有数据总线收发器的系统中,用来控制数据传输方向。:在T2T3期间输出有效低电平,表示数据有效,在接有数据总线收发器的系统中,用来实现数据的选通。总线写操作的时序与读操作时序相似,其不同处在于:ADl5AD0:在T2T4期间送上欲输出的的数据,而无高阻态。:从T2T4,引脚输出有效低电平,该信号送到所有的存储器和I/O接口。注意,只有被地址信号选中的存储单元或I/O端口才会被信号写入

15、数据。DT/:在整个总线周期内保持高电平,表示本总线周期为写周期,在接有数据总线收发器的系统中,用来控制数据传输方向。习题3 1. 假定DS=2000H,ES=2100H,SS=1500H,SI=00A0H,BX=0100H,BP=0010H,数据变量VAL的偏移地址为0050H,请指出如下指令原操作数是什么寻址方式,其物理地址是多少?(1) MOV AX, 0ABH (2) MOV AX, 100H(3) MOV AX, VAL (4) MOV BX, SI(5) MOV AL, VALBX (6) MOV CL, BXSI(7) MOV VALSI, BX (8) MOV BPSI, 10

16、0答:(1) 立即数寻址,无物理地址(2) 直接寻址,物理地址=2000H10H+100H=20100H(3) 直接寻址,物理地址=2000H10H+0050H=20050H(4) 存放器间接寻址,物理地址=2000H10H+00A0=200A0H(5) 相对存放器寻址,物理地址=2000H10H+0050+0100H=20150H(6) 基址加变寻址,物理地址=2000H10H+0100H+00A0H=201A0H(7) 存放器寻址,无物理地址(8) 立即数寻址,无物理地址2. SS=0FFA0H,SP=00B0H,先执行两条把8057H和0F79H分别进栈的PUSH指令,再执行一条POP指

17、令,试画出堆栈区和SP内容变化的过程示意图。答:“8057H进栈,如此SP自动从00B0H指向00B2H,“0F79H进栈,如此SP自动从00B2H指向00B4H;执行一条POP指令,“0F79H被弹出栈,SP从00B4H指向00B2H。图略。3. 设有关存放器与存储单元的内容如下:(DS)=2000H, (BX)=0100H, (AX)=1200H, (SI)=0002H, (20100H)=12H, (20101H)=34H, (20102H)=56H, (20103H)=78H, (21200H)=2AH, (21201H)=4CH, (21202H)=0B7H, (21203H)=65

18、H.试说明如下各条指令单独执行后相关存放器或存储单元的内容。(1) MOV AX, 1800H (2) MOV AX, BX(3) MOV BX, 1200H (4) MOV DX, 1100BX(5) MOV BXSI, AL (6) MOV AX, 1100BXSI答:(1) (AX)=1800H (2) (AX)=0100H (3) (BX)=4C2AH (4) (DX)=4C2AH (5) (20102H)=00H (6) (AX)=65B7H4. 写出实现如下计算的指令序列。(1) Z=W+(X+Z) (2) Z=W-(X+6)-(R+9)答:(1) MOV AX, Z ADD AX

19、, X ADD AX, W MOV Z, AX (2) MOV AX, W ADD X, 6 SUB AX, X ADD R, 9 SUB AX, R MOV Z, AX5. 假如在数据段中从字节变量TABLE相应的单元开始存放了015的平方值,试写出包含XLAT指令的指令序列查找N015中的某个平方数。答:LEA BX, TABLE MOV AL, CL XLAT6. 写出实现如下计算的指令序列。(1) Z=(W*X)/(R+6) (2) Z=(W-X)/5*Y)*2答:(1) MOV AX, W IMUL X ADD R, 6 IDIV R MOV Z, AX (2) MOV AX, W

20、SUB AX, X MOV BL, 5 IDIV BL CBW IMUL Y MOV BX, 2 IMUL BX MOV Z, AX7. 假定,CF=1, 试确定如下各条指令单独执行后DX的值。(1) SHR DX, 1 (2) SHL DL, 1 (3) SAL DH, 1 (4) SAR DX, CL(5) ROR DX, CL (6) ROL DL, CL (7) RCR DL, 1 (8) RCL DX, CL答:(1) (DX)=0110 0100 1101 1100B (2) (DX)=1100 1001 0111 0010B(3) (DX)=1001 0010 1011 1001

21、B (4) (DX)= 1111 1001 0011 0111B(5) (DX)= 0011 1001 0011 0111B (6)(DX)= 0100 1101 1100 1110B (7) (DX)= 1110 0100 1101 1100B (8) (DX)= 1001 0011 0111 0011B8. 程序段如下:MOV AX, 1234HMOV CL, 4ROL AX, CLDEC AXMOV CX, 4MUL CXINT 20H试问:1每条指令执行后,AX存放器的内容是什么?2每条指令执行后,CF,SF与ZF的值分别是什么?3程序运行完毕后,AX与DX存放器的值为多少?答:MOV

22、 AX, 1234H (AX)=1234H, CF=0,SF=0,ZF=0 MOV CL, 4 ROL AX,CL (AX)=2341H,CF=1,SF=0,ZF=0 DEC AX (AX)=2340H,CF=1,SF=0,ZF=0 MOV CX,4 MULL CX (AX)=8D00H, CF=0,SF=1,ZF=0INT 20H完毕后,(DX)=0000H, (AX)=8000H9. 试分析如下程序段:ADD AX, BXJNC L2SUB AX, BXJNC L3JMP SHORTL5如果AX,BX的内容给定如下:AX BX(1) 14C6H 80DCH(2) B568H 54B7H问该

23、程序在上述情况下执行后,程序转向何处。答:1转到L2处2转到L3处习题41如下语句在存储器中分别为变量分配多少字节空间?并画出存储空间的分配图。VAR1 DB 10,2 VAR2 DW 5 DUP?,0 VAR3 DB HOW ARE YOU?,3 DUP1,2VAR4 DD -1,1,0 答:字节空间:VAR1:2;VAR2:12;VAR3:13;VAR4:8。存储空间的分配图:2假定VAR1 和VAR2 为字变量,LAB 为标号,试指出如下指令的错误之处。1ADD VAR1,VAR2 2SUB AL,VAR1 3JMP LABCX 4JNZ VAR1 5 MOV 1000H,100 6SH

24、L AL, 4 答:(1) 在算术运算指令中,两个操作数不能同时为存储器寻址方式 (2) AL 为字节,VAR1 为字变量,字长不相等; (3) 错误1:存放器相对寻址方式,只能使用基址或变址存放器,不能使用CX存放器。错误2:汇编格式错误,无法判段是段内转移还是段间转移。 (4) 转向地址应为标号,不能是变量; (5) 目的操作数的类型不确定; (6) SHL 指令中,当所移位数超过1 时,必须用CL取代所移位数。3对于下面的符号定义,指出如下指令的错误。A1 DB ?A2 DB 10 K1 EQU 1024 1 MOV K1,AX 2MOV A1,AX 3CMP A1,A2 4K1 EQU

25、 2048 答:(1)K1 为常量,不能用MOV 指令赋值;(2)A1 为字节,AX 为字变量,类型不一致;(3)A1 和A2同为存储器寻址方式,不符合语法规如此;(4)K1 重新赋值前,必须用PURGE 释放。4数据定义语句如下所示: FIRST DB 90H,5FH,6EH,69H SECOND DB 5 DUP(?) THIRD DB 5 DUP(?) FORTH DB 4 DUP (?)自FIRST 单元开始存放的是一个四字节的十六进制数(低位字节在前),要求: 编一段程序将这个数左移两位后存放到自SECOND 开始的单元,右移两位后存放到自THIRD 开始的单元,求补后放到FORTH

26、开始的单元。(注意保存移出局部) 答:DATA SEGMENT FIRST DB 90H,5FH,6EH,69H SECOND DB 5 DUP(?) THIRD DB 5 DUP(?) FORTH DB 4 DUP (?)DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX LEA SI,FIRST LEA DI,SECOND MOV CX,2 CLC;左移2 位MOV AX,WORD PTR SI ;AX=5F90H 为低十六位数据INC SI INC SI MOV DX,WORD PTR SI

27、;DX=696EH 为高十六位数据PUSH DX ;保存原有的高十六位数据PUSH AX ;保存原有的低十六位数据ROL DX,CL;将高位数据不带进位循环左移两位,即高2 位数据在DL 的低2 位AND DL,03H ;让DL 中仅保存移出的高2 位数据MOV DI+4 ,DL;将移出的高2 位数据放入SECOND 中的最高单元中ROL AX,CL;将低位数据不带进位循环左移两位,即AX 的高2 位在AL 的低2 位AND AL,03H;让AL 中仅保存移出的AX 高2 位数据MOV BL ,AL;将AL 中的数据放入BL 中保存POP AX;弹出原有的低十六位数据POP DX;弹出原有的高

28、十六位数据SHL DX,CL;将高位数据算术逻辑左移2 位SHL AX,CL;将低位数据算术逻辑左移2 位OR DL,BL;将AX 中移出的高2 位数据放入DX 的低2 位MOVWORD PTR DI ,AX MOVWORD PTR DI+2 ,DX ;右移2 位LEA SI,FIRST LEA DI,THIRD MOV CX,2 CLC MOV AX,WORD PTR SI ;AX=5F90H 为低十六位数据INC SI INC SI MOV DX,WORD PTR SI ; DX=696EH 为高十六位数据PUSH DX;保存原有的高十六位数据PUSH AX;保存原有的低十六位数据ROR

29、AX,CL;将低位数据不带进位循环右移两位,即低2 位数据在AH 的高2 位AND AH,0C0H;让AH 中仅保存移出的低2 位数据PUSH CX MOV CX,6 SHR AH,CL POP CX MOV DI ,AH ;将移出的低2 位数据放入THIRD 中的最低单元中ROR DX, CL;将低位数据不带进位循环左移两位,即AX 的高2 位在AL 的低2 位AND DH,0C0H ;让DH 中仅保存移出的DX 低2 位数据MOV BL ,DH ;将DH 中的数据放入BL 中保存POP AX ;弹出原有的低十六位数据POP DX ;弹出原有的高十六位数据SHR DX,CL ;将高位数据算术

30、逻辑左移2 位SHR AX,CL ;将低位数据算术逻辑左移2 位OR AH,BL ;将DX 中移出的低2 位数据放入AX 的高2 位MOVWORD PTR DI+1 , AX MOV WORD PTR DI+3 ,DX ;求补LEA SI,FIRST LEA DI,FORTHMOV AX,WORD PTR SI ;AX=5F90H 为低十六位数据INC SI INC SI MOV DX,WORD PTR SI ; DX=696EH 为高十六位数据 XOR AX, 0FFFFH ;将低十六位取反 XOR DX, OFFFFH ;将高十六位按位取反 CLC ADD AX,01H ;低位加1,即可为

31、原数的求补 ADC DX,0 ;高位加低位加法时的进位MOVWORD PTR DI , AX MOV WORD PTR DI+2 ,DX MOV AH,4CH INT 21H CODE ENDS END START 5. 试编程序将内存从40000H到4BFFFH的每个单元中均写入55H,并再逐个单元读出比拟,看写入的与读出的是否一致。假如全对,如此将AL置7EH; 只要有错,如此将AL置81H。答:DATA SEGMENTDA1 DB 55HCODE SEGMENTASSUME CS:CODE,DS:DATASTART: MOV AX,4000H MOV DS,AX MOV CX,0C000

32、H MOV BX,0000H MOV AH,55H NEXT1: MOV byte ptrBX,AH INC BX LOOP NEXT1 MOV BX,0000H MOV CX,0C000H MOV AL,81H NEXT2: MOV AH, BX CMP AH,55H JNZ EXIT INC BX LOOP NEXT2 MOV AL,7EHEXIT: MOV AH,4CH INT 21H CODE ENDS END START6. 在当前数据段4000H开始的128个单元中存放一组数据,试编程序将它们顺序搬移到A000H开始的顺序128个单元中,并将两个数据块逐个单元进展比拟; 假如有错将

33、BL置00H; 全对如此将BL置FFH,试编程序。答:DATA SEGMENTORG 400HDA1 DB 128 DUP(?)ORG 0A00HDA2 DB 128 DUP(?)DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATASTART: MOV AX,DATA MOV DS,AX LEA SI,DA1 LEA DI,DA2 MOV CX,128AGAIN:MOV AL,SI INC SI INC DILOOP AGAINLEA SI, DA1LEA DI, DA2MOV CX,128NEXT:MOV AL,SI MOV BL,DI CM

34、P AL,BL JNZ ERROR INC SI INC DI MOV BL,0FFH LOOP NEXT JMP EXITERROR: MOV BL,00HEXIT: MOV AH,4CH INT 21H CODE ENDS END START7. 设变量单元A、B、C存放有3个数,假如3个数都不为零,如此求3个数的和,存放在D中; 假如有一个为零,如此将其余两个也清零,试编写程序。答:DATA SEGMENTA DB ?B DB ?C DB ?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX CMP

35、 A,00H JNZ LP1 MOV B,0 MOV C,0 JMP LP4LP1:CMP B,00HJNZ LP2MOV A,0MOV C,0JMP LP4LP2:CMP C,00HJNZ LP3MOV A,0MOV B,0JMP LP4LP3:MOV AL,AADD AL,BADD AL,CMOV AH,4CHLP4: INT 21HCODE ENDSEND START8. 有一个100个字节的数据表,表内元素已按从大到小的顺序排列好,现给定一元素,试编程序在表内查找,假如表内已有此元素,如此完毕; 否如此,按顺序将此元素插入表中适当的位置,并修改表长。答:DATA SEGMENTBUFF

36、 DB 100 DUP(?)DA1 DB (?)LENGTH DB 0DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV SI,0 MOV AL,DA1 MOV CX,100FIND0: CMP BUFFSI,AL JZ EXIT INC SI LOOP FIND0 MOV DI,99 MOV SI,0PARE: CMP BUFFDI,AL JG INSERT MOV BL,BUFFDI MOV BUFFDI+1,BL DEC DI CMP DI,SI JNL PARE JMP EXITINSER

37、T:MOV BUFFDI+1,ALMOV LENGTH , 101EXIT:MOV AH,4CHINT 21HCODE ENDSEND START9. 内存中以FIRST和SECOND开始的单元中分别存放着两个16位组合的十进制(BCD码)数,低位在前。编程序求这两个数的组合的十进制和,并存到以THIRD开始的单元。答:DATA SEGMENTFIRST DD 34341212H SECOND DD 78785656HTHIRD DB ?,?,?,?DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX LE

38、A SI,FIRST LEA DI,SECOND LEA BX,THIRD MOV CX,4 CLCAGAIN:MOV AL,BYTE PTRSI MOV DL,BYTE PTRDI ADC AL,DL DAA MOV BYTE PTRBX,AL INC SI INC DI INC BXLOOP AGAIN JC AA MOV BYTE PTRBX,0 JMP EXITAA:MOV BYTE PTRBX,1EXIT:MOV AH,4CHINT 21H CODE ENDS END START10. 编写一段程序,接收从键盘输入的10个数,输入回车符表示完毕,然后将这些数加密后存于BUFF缓冲区中

39、。加密表如下: 输入数字: 0,1,2,3,4,5,6,7,8,9; 密码数字: 7,5,9,1,3,6,8,0,2,4。答:DATA SEGMENT MITAB DB 7591368024 CONT EQU $-MITABBUFFDB 10 DUP (?),$YUANWENDB 10 DUP (?),$ DATA ENDSCODE SEGMENT ASSUMECSCODE,DSDATA START: MOV AX,DATA MOV DS,AX MOV SI,0 MOV CX,CONTINPUT: MOV AH,1 INT 21HCMP AL,13 JZ EXITAND AL,0FHMOV YUANWENSI ,AL INC SI LOOP INPUTEXIT : LEA BX,MITAB MOV CX,SI MOV SI,0JIAMI: MOV AL,YUANWENSIXLAT M

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号