检测点3.1
本帖最后由 郝凡呀 于 2021-3-6 11:40 编辑(1)在Debug中,用“d0:01f”查看内存,结果如下。
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,AX=2662
mov bx,BX=E626
mov ax,bx AX=E626
mov ax,AX=2662
mov bx,BX=D6E6
add ax,bx AX=FD48
add ax, AX=2C14
mov ax,0 AX=0000
mov al, AX=00E6
mov bx,0 BX=0000
mov bl, BX=0026
addal,bl AX=000C
提示,注意ds的设置。
各寄存器的初始值CS=2000H,IP=0,DS=1000H,AX=0 BX=0
①写出cpu执行指令的序列,写出CPU执行各条指令后,CS、IP和相关寄存器中的数据。
mov ax,6622H IP=3 CS=2000H ax=6622
jmp offo:0100 CS=2000H
mov ax,2000H IP=6 DS=1000H ax=2000H
mov ds,ax ds=2000H IP=3
mov ax,ax=C389IP=5
mov bx,ax bx=C389CS=1000H IP=8
mov ax,ax=EA66
数据和程序没有区别,ds指向的是数据,CS:IP指向的是代码。
其实这个IP的变化我并不是很清楚,望赐教。
如有错误,望您可以不吝赐教,谢谢!{:5_110:}
萌新刚学感觉倒数第二句mov bl,这一句的结果应该是 BX=0026 xiehoukey 发表于 2021-3-2 20:07
萌新刚学感觉倒数第二句mov bl,这一句的结果应该是 BX=0026
已改正,谢谢!{:5_110:} 兄台第二题的这个mov bx,ax bx=C389CS=1000H IP=8 机器应该算不到这里的吧 谢谢,你给与的参考 多谢提供参考 物理地址=段地址*16+偏移地址
页:
[1]