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

实验任务:

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

以汇编指令的形式向内存中写入指令:A命令

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

修改CS、IP的值

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

执行指令: T命令

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

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

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

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

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

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

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

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

  mov ax,1 
  add ax,ax 
  jmp 2000:0003 (每次遇到这条指令又跳转到2000:0003处执行,从而实现add ax,ax的多次执行 )

ax = 1  2  4  8  16......

手动按t命令来执行

当程序执行结果  ax=100H 也就是我们要得结果了  28此方等于256 用十六进制表示是 100H

3、查看内存中的内容。

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

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

任意修改内存中的值,日期并没有发生改变,因为地址A000H~FFFFH的空间为各个ROM的地址空间(无法被修改)。

4、向内存从B8100H开始的单元中填写数据,并观察。

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

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

随着填写的不同数据,图案也发生了改变,因为地址8000H~9FFFH的空间为显存地址空间,填写的这些会被显示卡输出到显示器上。