实验一:查看CPU指令

目录

一.Debug的使用

二.实际操作 

1.基础指令

2.具体操作 

一.Debug的使用

我一开始对着书上那 windows 2000教程开始郁闷,我这Win11该怎么搞。于是我上网搜索发现了一个APP可以用来操作,这里我找到了dosbox的下载地址:https://www.dosbox.com/download.php?main=1

 

 这里我转载一个博主的文章,我就是从那里学到的https://blog.youkuaiyun.com/2301_80191662/article/details/142901345,博主有相关资料,可以下载,一切完成后就可以进入下面的操作。

二.实际操作 

1.基础指令

  • 用Debug的R指令查看,改写CPU寄存器的内容
  • 用Debug的D指令查看内存中的内容
  • 用Debug的E指令改写内存中的内容
  • 用Debug的U指令将内存中的机器指令翻译成汇编指令
  • 用Debug的T指令执行一条机器指令
  • 用Debug的A指令以汇编指令的格式在内存中写入一条机器指令

2.具体操作 

 ①先查看寄存器中内容

 

 这里要注意CS,IP中的内容,这是决定CPU从何处执行命令的“指挥长”,如果要修改寄存器中的内容。就在R后面加上要修改寄存器的名称:

②查看内存中的内容 

如果我们想知道内存10000H中的内容,根据物理地址的组成,我们可以这么写“D 段地址(1000):偏移地址(0)” 

 如果想查看某个区间的内存中的内容,就可以“D 1000:0 a"


 

 ③修改内存中的内容

  • 可以一次性修改

  •  也可以选择性修改

 

与直接修改不同,选择性修改可以一个一个选择,要修改的在.后面写上修改的数据,不修改的就按空格键,完成后按enter键

也可以写入字符和字符串,修改右边的值 :

计算机的romantic (浪漫)嘻嘻嘻

④ 用U查看机器码所对应的汇编指令

先用E写入机器码,再用U查看

 

 ⑤那么如何执行这个命令,就要用到T指令

 要让CPU执行这个指令,需要让CS,IP指向这个地址

⑥机器码不会或记不住,就用A指令以汇编的形式写入

三.关于后面的操作

我想通过这个实验一起讲完,因为容易搞混(亲身经历)

首先是DS这个寄存器,与CS,IP要进行区分,DS所存放的是段地址,以便CPU读取内存单元;而CS,IP是让CPU执行指令的地址

执行这个操作后

 

寄存器CS的内容进入到内存单元,高八位进入到1000:0001,低八位进入到1000:0000,完成了寄存器和内存单元的交互(前面都是数据与寄存器或内存单元和数据的交互)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值