首页 > ASM, 原创 > 王爽汇编语言(第2版)实验1

王爽汇编语言(第2版)实验1

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

注意在进入debug模式时 AX 和 BX 的初始数据为 0000H

机器码 汇编指令
b8 20 4e    mov ax,4E20H    使用T命令读入指令后 IP = IP + 3  执行指令后 AX=4E20H
05 16 14    add ax,1416H    使用T命令读入指令后 IP = IP + 3   执行指令后 AX=6236H
bb 00 20   mov ax,2000H    使用T命令读入指令后 IP = IP + 3  执行指令后 AX =2000H
01 d8     add ax,bx    使用T命令读入指令后 IP = IP + 2  执行指令后 AX=2000H,BX=0000H
89 c3     mov bx,ax    使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2000H,BX=2000H
01 d8     add ax,bx    使用T命令读入指令后 IP = IP + 2 执行指令后   AX=4000H,BX=2000H
b8 1a 00     mov ax,001AH    使用T命令读入指令后 IP = IP + 2 执行指令后  AX=001AH,BX=2000H
bb 26 00     mov bx,0026H   使用T命令读入指令后 IP = IP + 3 执行指令后 AX=001AH,BX=0026H
00 d8      add al,bl   使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0040H,BX=0026H
00 dc      add ah,bl    使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2640H,BX=0026H
00 c7     add bh,al    使用T命令读入指令后 IP = IP + 2 执行指令后 AX=2640H,BX=4026H
b4 00     mov ah,0  使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0040H,BX=4026H
00 d8     add al,bl    使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0066H,BX=4026H
04 9c     add al,9CH    使用T命令读入指令后 IP = IP + 2 执行指令后 AX=0002H,BX=4026H
注意,以上结果是102H,担al是8位寄存器,高位1不能存放在al中
提示,可用E命令和A命令以两种方式将将指令写入内存。注意用T命令执行时,CS:IP的指向。


(2)将下面3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。
mov ax,1
add ax,ax
jmp 2000:0003

进入debug模式
用A命令写入汇编指令到2000:0开始的内存单元,见图:
debug1
用R命令修改CS:IP指向2000:0,见图:
debug2
用T命令执行CS:IP指向的指令,需要执行T命令16次来计算2的8次方,见图:
debug3
指令执行序列为:
1. mov ax,1
2. add ax,ax
3. jmp 2000:0003
4. 转到第2步执行

(3)查看内存中的内容。
PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它。
提示,如果读者对实验的结果感到疑惑请仔细阅读第1章中的1.15节。

根据给出的物理地址算出段地址
存放主板日期的起始地址(基础地址)为FFF00H,段地址为:FFF00H / 10H = FFF0H
FFF0H  x 16 + 00FFH = FFFFFH (结束物理地址)
我们要查找生产日期的段地址范围是 FFF0:0000 ~ FFF0:00FF
debug4

尝试修改生产日期失败。

(4)向内存从B8100H开始的单元中填写数据,如:
-e B810:0000 01 01 02 02 03 03 04 04
请读者先填写不同的数据,观察产生的现象;再改变填写的地址,观察产生的现象。
提示,如果读者对实验的结果感到疑惑,请仔细阅读第1章中的1.15节。
输入 -e B810:0000 01 01 02 02 03 03 04 04 时产生图像:
debug5
输入 -e B810:0000 30 30 31 31 32 32 33 33 时产生图像:
debug6

根据1.15节的内容,B81000是属于显存在内存地址空间中内存单元,向它写入数据时,就是向显存中写入数据,计算机会将可打印的字符输出到屏幕上

分类: ASM, 原创 标签:
  1. 本文目前尚无任何评论.