一。实验
(1)任务:使用debug,将下面的程序段写入内存,逐条执行,观察每条指令执行后,CPU中相关寄存器中内存的变化。
- 机器码 汇编指令
- b8 20 4e mov ax,4E20H
- 05 16 14 add ax,1416H
- bb 00 20 mov bx,2000H
- 01 d8 add ax,bx
- 89 c3 mov bx,ax
- 01 d8 add ax,bx
- b8 1a 00 mov ax,001AH
- bb 26 00 mov bx,0026H
- 00 d8 add al,bl
- 00 dc add ah,bl
- 00 c7 add bh,al
- b4 00 mov ah,0
- 00 d8 add al,bl
- 04 9c add al,9CH
(1)用A命令将指令写入内存,用T命令单步执行
(2)用E命令将指令写入内存,用T命令单步执行
(2)、将下面3条指令写入写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方
mov ax,1
add ax,ax
jmp 2000:0003
AX=0100即为2的8次方(256的16进制即为100H)
(3)查看内存中的内容
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它
用E命令试图改写:
从而可知ROM上的内容无法修改
(4)向内存从B8100H开始的单元中填写数据,如:
-e B810:0000 01 01 02 02 03 03 04 04
(填写不同数据和地址,观察现象)
最后显示图案时,一定要让地址在显示地址空间内,否则无法显示图案
二:实验结论
1:我们可以用A指令和E指令两种不同的指令方法来完成任务
2:在一些内存单元中CPU是无法改变其中的数据的
3:改变一些段单元中的数据可以改变视觉效果