寻址方式PPT
《IBM —PC 汇编语言程序设计》 第三章习题
 

 
 
 
 
 
 
《IBM —PC 汇编语言程序设计》 第三章习题
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
《IBM —PC 汇编语言程序设计》 第三章习题
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
 
《IBM —PC 汇编语言程序设计》 第三章习题
 
1 给定 (BX)=637DH ,(SI)=2A9BH ,位移量 D=7237H ,试确定在以下各种寻址方式下的有效地址是什么?(有效地址也是偏移量EA)
(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;超过了段的边界,最高进位位丢失,因此EA=004FH 。

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, [BX][SI]
(3) ADD 0B2H[BX], CX
(4) ADD WORD PTR [0524H], 2A59H    (WORD PTR相当于指定一个字)
(5) ADD AL, 0B5H

3 写出把首地址为BLOCK 的字数组的第 6 个字送到 DX 寄存器的指令。要求使用以下几种寻址方式:
(1) 寄存器间接寻址
(2) 寄存器相对寻址
(3) 基址变址寻址
答:
(1) MOV BX, OFFSET BLOCK
      ADD BX, (6 – 1)*2
      MOV DX, [BX]
 
补充OFFSET的用法:
《IBM —PC 汇编语言程序设计》 第三章习题
 
(2) MOV  BX, OFFSET  BLOCK      改为:MOV  BX, (6-1)*2
     MOV  DX, [BX+(6 –1)* 2]            也可  MOV  DX, BLOCK[BX]
 
(3) MOV  BX, OFFSET  BLOCK
     MOV   SI, (6–1)* 2
     MOV   DX, [BX][SI]

4.现有 (DS)=2000H ,(BX)=0100H ,(SI)=0002H ,(20100H)=12H , (20101H)=34H ,(20102H)=56H ,(20103H)=78H ,(21200H)=2AH , (21201H)=4CH,(21202H)=B7H ,(21203H)=65H ,试说明下列各条指令执行完后 AX 寄存器的内容。
 
(1) MOV  AX, 1200H
(2) MOV  AX, BX
(3) MOV  AX, [1200H]
(4) MOV  AX, [BX]
(5) MOV  AX, 1100[BX]
(6) MOV  AX, [BX][SI]
(7) MOV  AX, 1100[BX][SI]
 
答:
(1) (AX)=1200H
(2) (AX)=0100H
(3) (AX)=4C2AH
(4) (AX)=3412H
(5) (AX)=4C2AH
(6) (AX)=7856H
(7) (AX)=65B7H

5. 给定 (IP)=2BC0H ,(CS)=0200H ,位移量 D=5119H ,(BX)=1200H ,(DS)=212AH ,(224A0H)=0600H , (275B9H)=098AH ,试为以下的转移指令找出转移的偏移地址。
(1) 段内直接寻址
(2) 使用 BX 及寄存器间接寻址方式的段内间接寻址
(3) 使用 BX 及寄存器相对寻址方式的段内间接寻址 
答: (1) JMP NEAR PTR 5119H ;(IP)=5119H+((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 D[BX] ;(IP)=((DS)*10H+(BX)+D)=098AH ,PA=0298AH

6.设当前数据段寄存器的内容为 1B00H,在数据段的偏移地址 2000H 单元内,含有一个内容为 0FF10H 和 8000H 的指针,它们是一个 16 位变量的偏移地址和段地址,画图表示出来。 
《IBM —PC 汇编语言程序设计》 第三章习题

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.假定 (DS)=2000H ,(ES)=2100H ,(SS)=1500H,(SI)=00A0H ,(BX)=0100H ,(BP)=0010H ,数据段 中变量名 VAL 的偏移地址为 0050H,试指出下列源操作数字段的寻址方式是什么?其物理地址值 是多少?

(1) MOV  AX, 0ABH

(2) MOV  AX, BX

(3) MOV AX, [100H]

(4) MOV AX, VAL

(5) MOV AX, [BX]

(6) MOV AX, ES:[BX]

(7) MOV AX, [BP] 

(8) MOV AX, [SI]

(9) MOV AX, [BX+10]

(10) MOV AX, VAL[BX]

(11) MOV AX, [BX][SI]

(12) MOV AX, VAL[BX][SI] 

答: (1) 立即方式; 操作数在本条指令中

(2) 寄存器寻址方式; 操作数为 (BX)=0100H

(3) 直接寻址方式; PA=20100H

(4) 直接寻址方式; PA=20050H

(5) BX 寄存器间接寻址方式; PA=20100H

(6) 附加段 BX 寄存器间接寻址方式; PA=21100H

(7) BP 寄存器间接寻址方式; PA=15010H

(8) SI 寄存器间接寻址方式; PA=200A0H

(9) BX 寄存器相对寻址方式; PA=20110H

(10) BX 寄存器相对寻址方式; PA=20150H

(11) BX 和 SI 寄存器基址变址寻址方式; PA=201A0H

(12) BX 和 SI 寄存器相对基址变址寻址方式; PA=201F0H 


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)*2]

  MOV [BX+(7)*2], AX

  (2) MOV AX, ARRAY [BX]

  MOV ARRAY [BX+2], AX 


10.如 TABLE 为数据段中 0032 单元的符号名,其中存放的内容为 1234H,试问以下两条指令有什么 区别?指令执行完后 AX 寄存器的内容是什么? 

MOV AX, TABLE

LEA AX, TABLE 

答:

MOV AX, TABLE 是将 TABLE 单元的内容送到 AX ,(AX)=1234H

LEA AX,TABLE 是将 TABLE 单元的有效地址送到 AX ,(AX)=0032H 


 

相关文章:

  • 2021-12-19
  • 2021-11-11
  • 2022-12-23
  • 2022-12-23
  • 2021-10-17
  • 2021-09-26
猜你喜欢
  • 2021-12-11
  • 2021-09-18
  • 2022-02-25
  • 2021-10-07
  • 2021-10-29
  • 2022-02-25
  • 2021-05-01
相关资源
相似解决方案