汇编语言第三五章课后题答案

上传人:cl****1 文档编号:494190036 上传时间:2022-09-19 格式:DOCX 页数:43 大小:207.83KB
返回 下载 相关 举报
汇编语言第三五章课后题答案_第1页
第1页 / 共43页
汇编语言第三五章课后题答案_第2页
第2页 / 共43页
汇编语言第三五章课后题答案_第3页
第3页 / 共43页
汇编语言第三五章课后题答案_第4页
第4页 / 共43页
汇编语言第三五章课后题答案_第5页
第5页 / 共43页
点击查看更多>>
资源描述

《汇编语言第三五章课后题答案》由会员分享,可在线阅读,更多相关《汇编语言第三五章课后题答案(43页珍藏版)》请在金锄头文库上搜索。

1、3.1给定(BX)=637DH, (SI)=2A9BH,位移量D=7237H,试确定在以下各种寻址方式下的 有效地址是什么?(1) 立即寻址(2) 直接寻址(3) 使用BX的寄存器寻址(4) 使用 BX 的简接寻址(5) 使用 BX 的寄存器相对寻址(6) 基址变址寻址(7) 相对基址变址寻址答:(1) 操作数在指令中,即立即数;(2) EA=D=7237H;(3) 无 EA,操作数为(BX)=637DH;(4) EA=(BX)=637DH;(5) EA=(BX)+D=0D5B4H;(6) EA=(BX)+(SI)=8E18H;(7) EA=(BX)+(SI)+D=1004FH;超过了段的边界

2、,最高进位位丢失,因此EA=004FH。3.2 试根据以下要求写出相应的汇编语言指令(1) 把BX寄存器和DX寄存器的内容相加,结果存入DX寄存器中。(2) 用寄存器BX和SI的基址变址寻址方式把存储器中的一个字节与AL寄存器的内容 相加,并把结果送到 AL 寄存器中。(3) 用寄存器BX和位移量0B2H的寄存器相对寻址方式把存储器中的一个字和(CX)相 加,并把结果送回存储器中。(4) 用位移量为0524H的直接寻址方式把存储器中的一个字与数2A59H相加,并把结 果送回存储单元中。(5) 把数0B5H与(AL)相加,并把结果送回AL中。答:(1) ADD DX, BX(2) ADD AL,

3、 BXSI(3) ADD BX+0B2H, CX(4) ADD WORD PTR 0524H, 2A59H(5) ADD AL, 0B5H3.3写出把首地址为BLOCK的字数组的第6个字送到DX寄存器的指令。要求使用以下几 种寻址方式:(1) 寄存器间接寻址(2) 寄存器相对寻址(3) 基址变址寻址答:(1) MOV BX, OFFSET BLOCKADD BX, (6 - 1)*2MOV DX, BX(2) MOV BX, OFFSET BLOCK改为: MOV BX, (6-1)*2MOV DX, BX+(6 - 1)*2也可MOVDX,BLOCKBX(3) MOV BX, OFFSET

4、BLOCKMOV SI, (6 - 1)*2MOV DX, BXSI(20101H)=34H,(20102H)=56H, (20103H)=78H, (21200H)=2AH, (21201H)=4CH,(21202H)=B7H,3.4 现有(DS)=2000H , (BX)=0100H , (SI)=0002H , (20100H)=12H ,(21203H)=65H,试说明下列各条指令执行完后AX寄存器的 内容。(1) MOV AX, 1200H(2) MOV AX, BX(3) MOV AX, 1200H(4) MOV AX, BX(5) MOV AX, 1100BX(6) MOV AX

5、, BXSI(7) MOV AX, 1100BXSI 答:(1) (AX)=1200H(2) (AX)=0100H(3) (AX)=4C2AH(4) (AX)=3412H(5) (AX)=4C2AH(6) (AX)=7856H(7) (AX)=65B7H3.5 给定(IP)=2BC0H, (CS)=0200H,位移量 D=5119H, (BX)=1200H, (DS)=212AH, (224A0H)=0600H, (275B9H)=098AH,试为以下的转移指令找出转移的偏移地址。(1) 段内直接寻址(2) 使用BX及寄存器间接寻址方式的段内间接寻址(3) 使用BX及寄存器相对寻址方式的段内间

6、接寻址答:(1) JMP NEAR PTR 5119H ; (IP)=51 19H+(IP)+03H)=7CDCH ,物理地 址 PA=09CDCH(IP)+03H是JMP NEAR PTR 5119H指令的下一条指令的首地址。(2) JMP WORD PTR BX;(IP)=(DS)*10H+(BX)=0600H,PA=02600H(3) JMP DBX;(IP)=(DS)*10H+(BX)+D)=098AH,PA=0298AH3.6设当前数据段寄存器的内容为1B00H,在数据段的偏移地址2000H单元内,含有一个 内容为0FF10H和8000H的指针,它们是一个16位变量的偏移地址和段地址

7、,试写出 把该变量装入AX的指令序列,并画图表示出来。答:MOVBX, 2000H;图示如上所示。MOVAX, 2000H+2MOVBX, 2000HMOVES, AXLESBX, BXMOVAX, ES:BXMOVAX, ES :BX3.7在0624H单元内有一条二字节JMP SHORT OBJ指令,如其中位移量为(1) 27H, (2) 6BH,(3) 0C6H,试问转向地址OBJ的值是多少?答:(1) OBJ=0624H+02H+27H=064DH(2) OBJ=0624H+02H+6BH=0691H(3) OBJ=0624H+02H+0C6H=05ECH; C6H 对应的负数为-3AH

8、 (向上转移,负位移量)3.8 假定(DS)=2000H, (ES)=2100H,(SS)=1500H,(SI)=00A0H, (BX)=0100H, (BP)=0010H,数据段中变量名VAL的偏移地址为0050H,试指出下列源操作数字段的寻址方式是什么?其物理地址值是多少?(2) MOVAX, BX(4) MOVAX, VAL(6) MOVAX, ES:BX(8) MOVAX, SI(10) MOV AX, VALBX (12) MOV AX, VALBXSI 操作数在本条指令中 操作数为 (BX)=0100HPA=20100HPA=20050HPA=20100HPA=21100HPA=1

9、5010H(1) MOVAX, 0ABH(3) MOVAX, 100H(5) MOVAX, BX(7) MOVAX, BP(9) MOVAX, BX+10(11) MOV AX, BXSI 答:(1) 立即方式;(2) 寄存器寻址方式;(3) 直接寻址方式;(4) 直接寻址方式;(5) BX寄存器间接寻址方式;(6) 附加段BX寄存器间接寻址方式;(7) BP 寄存器间接寻址方式;(8) SI 寄存器间接寻址方式;PA=200A0H(9) BX 寄存器相对寻址方式;PA=20110H(10) BX 寄存器相对寻址方式;PA=20150H(11) BX和SI寄存器基址变址寻址方式;PA=201A

10、0H(12) BX和SI寄存器相对基址变址寻址方式;PA=201F0H3.9在ARRAY数组中依次存储了七个字数据,紧接着是名为ZERO的字单元,表示如下:ARRAY DW 23, 36, 2, 100, 32000, 54, 0 ZERO DW ?(1)如果BX包含数组ARRAY的初始地址,请编写指令将数据0传送给ZERO单元。(2)如果BX包含数据0在数组中的位移量,请编写指令将数据0传送给ZERO单元。答: (1) MOV AX, BX+(7-1)*2MOV BX+(7)*2, AX(2) MOV AX, ARRAY BXMOV ARRAY BX+2, AXTABLE 0AH00H14H

11、TABLE+3 00H1EH00H28H00H32H00H3.11 题的 TABLE存储方式3.10如TABLE为数据段中0032单元的符号名,其中存放的内容为1234H,试问以 下两条指令有什么区别?指令执行完后AX寄存器的内容是什么?MOVAX, TABLELEAAX, TABLE答:MOV AX, TABLE是将TABLE单元的内容送到AX,(AX)=1234HLEAAX,TABLE是将TABLE单元的有效地址送到AX,(AX)=0032H3.11执行下列指令后AX寄存器中的内容是什么?TABLE DW 10, 20, 30, 40, 50; 000AH, 0014H, 001EH, 0

12、028H, 0032HENTRY DW 3IIIMOV BX, OFFSET TABLEADD BX, ENTRYMOV AX, BX答: (AX)=1E00H(TABLE的存储方式如右图所示)3.12下列ASCII码串(包括空格符)依次存储在起始地址为CSTRING的字节单元中:CSTRING DB BASED ADDRESSING请编写指令将字符串中的第1个和第7个字符传送给DX寄存器。 答:MOV DH, CSTRINGMOV DL, CSTRING+7-13.13已知堆栈段寄存器SS的内容是0FFA0H,堆栈指针寄存器SP的内容是00B0H,先执 行两条把8057H和0F79H分别进栈

13、的PUSH指令,再执行一条POP指令。试画出堆栈 区和SP的内容变化过程示意图(标出存储单元的物理地址)。答:堆栈区和SP的内容变化过程示意图如下左图所示。FFAACH79H再次进栈(SP)(SP)-21B00:20008000H0FH/ 出栈时(SP)(SP)+21B00:20022B00HFFAAEH57H4首次进栈(SP)(SP)-280HFFAB0H2B00:8000x3.13题的堆栈区和SP的内容变化过程示意图3.14题的存储区情况3.14设(DS)=1B00H, (ES)=2B00H,有关存储单元的内容如上右图所示。请写出两条指令把 字变量X装入AX寄存器。答: MOV BX, 2

14、000HMOV AX, ES:BX3.15求出以下各十六进制数与十六进制数62A0H之和,并根据结果设置标志位SF、ZF、 CF 和 OF 的值。(1) 1234H(2) 4321H(3) CFA0H(4) 9D60H答: (1) 和为 74D4H;SF=0, ZF=0, CF=0, OF=0(2) 和为 A5C1H;SF=1, ZF=0, CF=0, OF=1(3) 和为 3240H;SF=0, ZF=0, CF=1, OF=0(4) 和为 0000H;SF=0, ZF=1, CF=1, OF=03.16求出以下各十六进制数与十六进制数4AE0H的差值,并根据结果设置标志位SF、ZF、 CF 和 OF 的值。(1) 1234H(2) 5D90H(3) 9090H(4) EA04H答: (1) 差为 C754H;SF=1, ZF=0, CF=1, OF=0(2) 差为 12B0H;SF=0, ZF=0, CF=0, OF=0(3) 差为 45B0H;SF=0, ZF=0, CF=0, OF=1(4) 差为 9F24H;SF=1, ZF=0, CF=0, OF=03.17写出执行以下计算的指令序列,其中X、Y、Z、R、W均为存放16位带符号数单元的 地址。(1) ZW+(Z-X)(2) ZW-(X+6)-(

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

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