码迷,mamicode.com
首页 > 其他好文 > 详细

实验1 查看CPU和内存,用机器指令和汇编指令编程

时间:2018-10-27 21:14:02      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:内存   实验   inf   变化   写入   deb   计算   img   理解   

1.使用Debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后CPU中相关寄存器中内容的变化。

   ?(1)用E命令修改从0:200开始的内存单元,写入机器码

技术分享图片

    (2)用U命令查看内存中机器码的含义

技术分享图片    (3)CPU初始状态CS=073F,IP=0100,故先用R命令修改CS、IP中的内容

技术分享图片

   (4)用T命令逐条执行


技术分享图片


技术分享图片

   技术分享图片

     ?(1)用A命令将汇编指令写入内存

技术分享图片

      (2)用D命令查看内存中的机器码

技术分享图片

      (3)用T命令逐条执行(如上)

2.将下面3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。

    (1)用A命令将指令写入从2000:0开始的内存单元中

技术分享图片

    (2)修改CS、IP的值,并用T命令单步执行

技术分享图片

    (3)执行16次T命令,此时AX=0100

技术分享图片

 3.查看内存中的内容。

(1)用D命令查看内存中的生产日期,找到生产日期为01/01/92

技术分享图片

 (2)用E命令尝试修改此日期,再用D命令查看,发现修改失败


技术分享图片

 4.向内存从B8100H开始的单元中填写数据。

 技术分享图片

改变填写的数据和填写的地址,发现一个图案是由两个内存单元控制的,前者控制样式,后者控制颜色。

技术分享图片

技术分享图片实验总结与体会

   ?CPU向内存地址为C0000到FFFFF的内存中写入数据的操作是没有结果的,单元中的内容不会被改变,因为这等于改写只读存储器的内容。

   ?在第一个任务需要修改CS、IP的值时,我一开始没有用R命令,而是用 JMP指令,结果报错了,我发现虽然JMP指令和R命令都能修改CS、IP的值,但它们使用的情况是不同的,这也加深了我对JMP指令的理解。

 

实验1 查看CPU和内存,用机器指令和汇编指令编程

标签:内存   实验   inf   变化   写入   deb   计算   img   理解   

原文地址:https://www.cnblogs.com/547hh/p/9853549.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!