实验二

Posted byxy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验二相关的知识,希望对你有一定的参考价值。

实验结论

1.使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。

为了便于验证结果,调整如下:

在使用a命令输入指令调试前,使用e命令将内存单元0021:0-0021:7连续8个字节修改为 30h,31h,32h,33h,34h,35h,36h,37h

将第一行的 mov ax,ffff改为mov ax,0021

以下为理论分析指令执行后的值

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

技术分享图片

与理论上分析一致。

在使用t命令单步调试过程中,涉及到的内容:中断机制。它是我们后半部分课程中的一个主题。现在我们只要知道这一点就可以了:Debug的T命令在执行修改寄存器SS的指令时,下一条指令也紧接着被执行。

2.仔细观察实验过程,分析:为什么2000:0-2000:f中的内容会发生改变?

技术分享图片

技术分享图片

猜测 2000为ax的值,07 3f 01 08为cs:ip的值,存23 31入ax

技术分享图片

p72页说

mov ax,2000

mov ss,ax

mov sp,10

为安排2000:0000-2000:000f为栈空间,初始化栈顶

2000:0-2000:f中的内容会根据ax中的值发生变化,也会根据栈操作而发生变化,栈操作push ax

就是在栈底2000:e的位置存入31 23,以小端法存入,再存入2000:c中33 66。

 实验总结与体会

cs:ip 必须指向debug处理D命令的代码,ss:sp要指向栈顶,一般都默认段地址在ds中。

一段内存,可以既是代码的存储空间,还可以是栈空间,也可以什么也不是,关键在于CPU中寄存器的设置。即cs、ip,ss、sp,ds的指向。

以上是关于实验二的主要内容,如果未能解决你的问题,请参考以下文章

通信原理实验二 角度调制实验

20165223 实验二 面向对象程序设计

计算机系统 实验二 数据表示实验

实验二 组合逻辑电路设计;实验三 时序逻辑电路设计

区块链技术与应用实验报告(实验二)

实验二 20155335 实验报告 固件程序设计