注册 登录
编程论坛 汇编论坛

这是怎么回事求解释啊

az71566 发布于 2014-03-05 15:58, 589 次点击
只有本站会员才能查看附件,请 登录
       mov指令有3个字节为何 mov ax,6622h 而不是 mov ax,6622b8
各寄存器的初始值:CS=2000H,IP=0,DS=1000H,AX=0,BX=0;
①写出CPU执行的指令序列(用汇编指令写出)。
②写出CPU执行每条指令后,CS、IP和相关寄存器中的数值。
mov ax,6622H        CS=2000H  IP=0003H     
jmp 0ff0,0100        CS=0FF0H  IP=0100H
mov ax,2000H        CS=0FF0H  IP=0103H      为何iP不是10003 而是0103
mov ds,ax            CS=0FF0H  IP=0105H
mov ax,[0008]        CS=0FF0H  IP=0108H
mov ax,[0002]        CS=0FF0H  IP=010BH
③再次体会:数据和程序有区别吗?如何确定内存中的信息哪些是数据,哪些是程序?
答:没有区别,CS和IP指示了当前要读取的程序的地址。
2 回复
#2
hu9jj2014-03-06 07:29
要解释什么?
#3
hu9jj2014-03-06 07:32
如果仅仅是第一行,则B8是指令而不是立即数,只有6622H是立即数,所以转换成汇编语言成为mov ax,6622H。
1