汇编网首页登录博客注册
zouhehui的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
  •  没有什么不可以
  • 『姓名』:QINGYUAN
  • 『性别』:男『发送消息
  • 个人说明:生活中本来就有很多的无奈,幼稚在老练面前当然显得那么的无能为力;谦虚谨慎与自命不凡那或许是两种不同的境界;珍重、爱惜自己才会懂得如何去关心、在乎别人;很多事情没必要再去记起,听说快乐只源于卓有成效的工作后,我有一点点的诧异!
  • 详细信息『加为好友』
学习动态

[2009-12-04 00:08] 检测点3.1

(1)下面的程序执行前,AX=0,BX=0,写出每条指令执行完后相关的寄存器的值。
mov ax,1 
mov ds,ax 
mov ax,[0000]        AX=2662H 
mov bx,[0001]        BX=0E626H 
mov ax,bx            AX=0E626H 
mov ax,[0000]        AX=2662H 
mov bx,[0002]        BX=0D6E6H 
add ax,bx            AX=0FD48H 
add ax,[0004]        AX=2C14H 
mov ax,0             AX=0000H 
mov al,[0002]        AX=00E6H 
mov bx,0             BX=0000H 
mov bl,[000c]        BX=0026H 
add al,bl            AX=000CH
(2)各寄存器的初值:CS=2000H,IP=0,DS=1000H,AX=0,BX=0
1.写出CPU执行的指令序列(用汇编指令写出)
2.写出CPU执行每条指令后,CS,IP和相关寄存器中的值。
3.再次体会:数据和程序有区别吗?如何确定内存中的信息哪些是数据,哪些是程序?
1.
指令序列
MOV AX,6622H
JMP OFFO:0100
MOV AX,2000H
MOV DS,AX
MOV AX,[0008]
MOV AX,[0002]
2.
执行完MOV AX,6622H 后CS=2000H,IP=0003H,AX=6622H

执行完JMP OFFO:0100 后CS=0FF0H,IP=0100H,AX=6622H

执行完MOV AX,2000H 后CS=0FF0H,IP=0103H,AX=2000H

执行完MOV DS,AX 后,CS=0FF0,IP=0105H,AX=2000H,DS=2000H

执行完MOV AX,[0008] 后,CS=0FF0,IP=0108H,AX=C389H,DS=2000H

执行完MOV AX,[0002]后,CS=0FF0H,IP=010BH,AX=0EA66H,DS=2000H,
3.
在计算机的内存中数据和程序是没有区别的,被CS:IP指向过的内存单元的信息CPU把它看做指令,没有被CS:IP指向过的内存单元的信息CPU把它当做数据处理。
评论次数(2)  |  浏览次数(915)  |  类型(汇编作业) |  收藏此文  | 

[  游客   发表于  2009-12-04 14:12  ]

理解都对着呢。

[  zouhehui   发表于  2009-12-04 18:04  ]

呵呵,谢谢!

 
 请输入验证码  (提示:点击验证码输入框,以获取验证码