汇编语言-实验3

一、实验目的

  1. 掌握Debug常见指令的使用,以及跟踪程序的运行。
  2. 掌握待执行指令地址的形成方法。
  3. 掌握物理地址的形成方法。
  4. 掌握数据段段基址的设置方法。

二、实验过程和结果

  • 1:用“d 段寄存器:偏移地址”的格式查看内存单元。 能不能用另外的格式查看呢,例如:
d ds:偏移地址
d es:偏移地址
d ds:ax
d cs:偏移地址
d cs:ip
d cs:ax
d ss:偏移地址
d ss:ip
d ss:ax
d ax:偏移地址
dds:bp

思考1:请总结,那种类型可以实现,哪种类型不能实现

d ds:偏移地址   ——可以实现
d es:偏移地址   ——可以实现
d ds:ax      ——不可以实现
d cs:偏移地址   ——可以实现
d cs:ip      ——不可以实现
d cs:ax      ——不可以实现
d ss:偏移地址   ——可以实现
d ss:ip      ——不可以实现
d ss:ax      ——不可以实现
d ax:偏移地址 ——不可以实现
d ds:bp      ——不可以实现

2: 尝试e命令、a命令、u命令后加上“段寄存器:偏移地址”的形式执行。
可执行
3:在内存中15F0:0120处写入如下汇编指令,并执行。

  • 思考2:用T命令执行指令前,需要完成什么设置?
R 命令修改CS和IP的值为15F0:0120
A命令写入汇编指令

4:完成上题后,输入q命令,退出debug,再进入。在内存中15F0:0120处写入如下汇编指令:

  • 思考3:用T命令执行上图中第一条
    (mov ax,1234h)、第三条(mov cx,12h)和第四条(mov dx,34h)指令,不执行第二条(mov bx,5678h)指令,如何操作?(能用jmp吗)
用T 命令执行完第一条指令之后,强行修改IP的值为0126,
在接着用T命令执行后面的汇编指令

5:在内存14F0:0110处中写入如下数据:

  • 思考4:可以将这些数据当作指令执行吗,怎么做?(可截图,也可以文字描述)
先用e 命令修改内存数据,在14F00110 处写入数据
再用 r 命令修改CS和IP的值为14f
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

A cup of tea.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值