《汇编语言》第三章主要介绍CPU对内存的访问方式:通用内存访问方式和栈内存访问方式。通用内存和栈内存只是访问方式不同,在存储器上没有区别。CPU对内存的访问都是通过“段+偏移”的方式,其中通用内存访问方式,应用的是DS寄存器指定待访问内存的段地址,偏移量直接用数值表示,相关的指令是“mov指令”;而栈内存访问方式,通过SS指定栈空间的段地址,SP指定偏移量,相关的指令是“push/pop”。本文将给出《汇编语言》第三章的习题答案和知识点总结。
一、习题答案
检测点3.1
1,在debug中,用“d 0:0 1f”查看内存,结果如下:
0000:0000 70 80 F0 30 EF 60 30 E2-00 80 80 12 66 20 22 60
0000:0010 62 26 E6 D6 CC 2E 3C 3B-AB BA 00 00 26 06 66 88
下面的程序执行之前,AX = 0, BX = 0,写出每条汇编指令执行完后相关寄存器的值
mov ax,1
mov ds,ax
mov ax,[0000] AX = 2662 H
mov bx,[0001] BX = E626 H
mov ax,bx AX = E626 H
mov ax,[0000] AX =2662 H
mov bx,[0002] BX =D6E6 H
add ax,bx AX =FD48 H
add ax,[0004] AX =2C14 H
mov ax,0 AX =0000 H
mov al,[0002]