|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 axix005 于 2015-7-31 09:11 编辑
---------------------------------
cs= 2000h ,ip=0, ds=1000h,ax=0 ,bx=0;
写出cpu执行的指令序列 汇编指令
写出CPU执行每条指令后,CS。IP和相关寄存器中的数值。
3体会,数据和程序有区别吗?如何确定内存中的信息哪些是数据,哪些是程序
mov ax,6622 CS=2000h ip=0003 ds=1000 ax=6622 bx=0
jmp 0ff0:0100 CS=1000 ip=0 ds=1000 ax=6622 bx=0
mov ax,2000h cs=1000 ip=3 ds=1000 ax=2000 bx=0
mov ds,ax cs=1000 ip=5 ds=2000 ax=2000 bx=0
mov ax,[0008] cs=1000 ip=8 ds=2000 ax=0089 bx=0
mov ax,[0002] cs=1000 ip=B ds=2000 ax=0066 bx=0
为什么mov ax,[0008] mov ax,[0002] 和网上答案不一样?
图片要的不是0008和0002吗,为什么是整个c389和6622了
你没发现ds=2000,而mov ax,[0008],在没有段前缀的情况下,CPU在取数据的时候都是使用默认的段前缀。也就是说,数据段使用的是数据段寄存器ds,上面指令等价于mov ax,ds:[0008].所以取得是C389
|
|