没有合适的资源?快使用搜索试试~ 我知道了~
山东大学汇编语言实验报告1.2
资源推荐
资源详情
资源评论
信息科学与工程学院
2023-2024 学年第一学期
实 验 报 告
课程名称: 微处理器原理与应用
实验名称: 掌握 DEBUG 基本命令及其功能
山东大学·微处理器原理与应用·实验报告
- 1 -
实验报告
【实验目的】
1.掌握 DEBUG 的基本命令及其功能
2.掌握 win11 使用 DEBUG 功能
【上篇】查看 CPU 和内存,用机器指令和汇编指令编程
【实验要求】
1.使用 Debug,将指定的程序段写入内存,逐条执行,观察每条指令执行后,CPU
中相关寄存器中内容的变化。(逐条执行,每条指令执行结果截图)
提示:可用 E 命令和 A 命令以两种方式将指令写入内存。注意用 T 命令执行时,CS:IP
的指向。
2.将下面 3 条指令写入从 2000:0 开始的内存单元中,利用这 3 条指令计算 2 的 8
次方。
mov ax,1 (从 2000:0 开始的内存单元)
add ax,ax
jmp 2000:0003 (观察跳到什么地方了?)
3.查看内存中的内容
PC 机主板上的 ROM 中写有一个生产日期,在内存 FFF00H~FFFFFH 的某几个单元
中,请找到这个生产日期并试图改变它。(内存 ffff:0005~ffff:000C(共 8 个字节单元中)
处)
如果使用 DOSBOX 虚拟环境,这个显示是不正确的,想想为什么?
DOS 环境下 使用 wmic bios get description 看看有什么情况发生?
山东大学·微处理器原理与应用·实验报告
- 2 -
【实验具体内容】
【第一个实验】
(1)实验源代码(粘贴源代码):
机器码 汇编指令
b8 20 4e mov ax,4E20H ;相当于 AX=4E20H
05 16 14 add ax,1416H ;相当于 AX=AX+1416H
bb 00 20 mov bx,2000H ;相当于 BX=2000H
01 d8 add ax,bx ;相当于 AX=AX+BX
89 c3 mov bx,ax ;相当于 BX=AX
01 d8 add ax,bx ;相当于 AX=AX+BX
b8 1a 00 mov ax,001AH ;相当于 AX=001AH
bb 26 00 mov bx,0026H ;相当于 BX=0026H
00 d8 add al,bl ;相当于 AL=AL+BL
00 dc add ah,bl ;相当于 AH=AH+BL
00 c7 add bh,al ;相当于 BH=BH+AL
b4 00 mov ah,0 ;相当于 AH=0
00 d8 add al,bl ;相当于 AL=AL+BL
04 9c add al,9CH ;相当于 AL=AL+9CH
(2)实验代码、过程、相应结果(截图)并对实验进行说明和分析:
使用 E 命令进行更改:
①首先进入 DOSBox0.74 中的 DOS 环境;
山东大学·微处理器原理与应用·实验报告
- 3 -
②再用 DEBUG 中的 R 命令查看各寄存器中的状态,可以看到一般的寄存器中为未更改
的默认状态,CS:IP 指向 073F:0100,我们不作更改,使用该地址为指向;
③再用 D 命令来查看 CS:IP 指向 073F:0100 位置的内存中的状态,我们可以看到
073F:0100 和 073F:0110 两行都存在少部分的数值,其他都为空值,所以我们准备从
073F:0120 的位置开始输入机器码,以便来进行进一步的写入;
④使用 E 命令来从 073F:0120 地址开始进行逐一地写入机器码,以此来进行复现执行;
⑤在用 E 命令输入完机器码后,我们再用 U 命令将其转成汇编语言查看机器码输入的
正确性,显然,我们输入的机器码经汇编语言转换后是正确的,可以进一步地进行操作;
剩余19页未读,继续阅读
资源评论
Jaspin.
- 粉丝: 10
- 资源: 42
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功