zoukankan      html  css  js  c++  java
  • 实验一(自闭的第一天)

    四.实验结论

    实验任务

    (1)使用Debug,观察每条指令执行后CPU中相关寄存器中内容的变化

    1.输入指令:

    2.由于初始的CS:IP是073F:0100,而自己写入的地址为1000:0,于是用r命令先修改CS和IP的值,再用t命令单步执行

     

     

     

    CS:IP由1000:00→1000:03→1000:06继续t命令单步执行,发现变化的只有IP的值,由0006→009→000B→000D→000F→0012→0015→0017→0019→001B→001D→001F

    (2)利用以下三条指令计算2的8次方

    具体操作过程如下:

     

     

     

     

     

    (3)查看内存中的生产日期

     

    可以看出生产日期是1992年1月1日

    接着尝试修改:

     

     可以发现无法修改

    (4)向内存的单元中填写数据

    输入书本中所给的内存地址和数据

     

    同一内存地址存放不同数据:

     

    不同内存地址存放相同的数据:

     

    五.总结与体会

    在第一个任务中,我是用a命令将指令写入内存,并用t命令进行单步执行,并关注每一次执行时ax与bx的变化,只能说掌握了相关命令的使用。

    在第二个任务中, 第一次是2,二三次是4,第五六次是8 ,然后居然变成了10,当时一直想不通为什么会这样,理论上应该是16的,然而在看了论坛以后,发现  结果10是对的 这里的10是十六进制形式表示的  10h的十进制是32,也就是2的5此方。 当程序执行结果为100H时 也就是我们要得结果了2的8此方等于256 ,用十六进制表示是 100H。

    在第三个任务中 ,找到生产日期,阅读了书的1.15节之后明白C0000——FFFFF表示各类ROM地址空间,而在这些内存单元中写入数据是无效的。

    在第四个任务中,发现相同的数据填写在不同的内存地址中会显示在不同的地方,而相同的内存地址中填写不同的数据则会显示不同的内容。

  • 相关阅读:
    常用源代码管理工具与开发工具
    项目发布
    学期总结
    个人博客
    个人博客
    阅读笔记6
    阅读笔记5
    阅读笔记4
    团队代码
    团队代码
  • 原文地址:https://www.cnblogs.com/nilicon/p/9833569.html
Copyright © 2011-2022 走看看