实验环境

实验二和后边的实验三都是在机房完成的,没有找到机房里的截屏工具,所以只能用简陋的移动设备给拍下来,虽然这样很影响观感,下次上机把自己的笔记本带上。

 

实验任务

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

mov ax,ffff

mov ds,ax

 

mov ax,2200

mov ss,ax

 

mov sp,0100

 

mov ax,[0]                          ;ax=5BEA

add ax,[2]                           ;ax=5CCA

mov bx,[4]                          ;bx=30F0

add bx,[6]                           ;bx=6024

 

push ax                              ;sp=00FE; 修改后的内存单元的地址是2200:FE内容为5CCA

push bx                              ;sp=00FC; 修改后的内存单元的地址是2200:FC内容为6024

pop ax                                ;sp=00FE; ax=6024

pop bx                                ;sp=0100; bx=5CCA

 

push [4]                              ;sp=00FE; 修改后的内存单元的地址是2200:FE内容为30F0

push [6]                              ;sp=00FC; 修改后的内存单元的地址是2200:FC内容为6024

 

以下是debug程序的图片

 

机房实验二

机房实验二

 

机房实验二

机房实验二

 

 (2)观察实验过程,然后分析:为什么2000:0~2000:f中的内容会发生改变?

机房实验二

机房实验二

学到这章的时候,就一直看到关于中断机制的说法,但是编者也没有具体解释到底谁是什么原因,在网上看到有人有同样的困惑,最终在250页12.12发现了解释

用T命令执行一条指令后,CPU响应单步中断,在mov ss,ax指令执行后,CPU根本就不响应任何中断,CPU接着向下执行后边的指令mov sp,10,然后响应单步中断,我们才看到结果

 

实验总结

 经过这次实验,把之前书上看到的内容感受了一下, 加深了理解,而且也有自己去寻找自己不明白的解释,最终回归了书本,

下次一定要带电脑去机房。

 

相关文章:

  • 2021-11-13
  • 2021-12-12
  • 2021-05-18
  • 2021-11-12
  • 2021-12-15
  • 2022-01-28
  • 2021-07-19
  • 2021-11-04
猜你喜欢
  • 2021-09-16
  • 2021-09-22
  • 2021-04-10
  • 2022-12-23
  • 2021-12-14
  • 2022-01-25
相关资源
相似解决方案