码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言之实验二

时间:2018-10-29 00:04:20      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:为什么   查找   ext   命令   执行   http   机制   bubuko   bug   

实验2 用机器指令和汇编指令编程 

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

e 0021:0  0021:7  30H,31H,32H,33H,34H,34H,35H,36H,37H

mov ax,0021

mov ds,ax

mov ax,2200

mov ss,ax

mov sp,0100

 

mov ax,[0]    ;ax= 3130

add ax,[2]    ;ax= 6462

mov bx,[4]    ;bx= 3534

add bx,[6]    ;bx= 6c6A

 

push ax       ;sp= 00FEH ,修改的内存单元地址是 2200:00FE 内容为 6462H

push bx       ;sp= 00FCH ,修改的内存单元地址是 2200:00FC 内容为 6c6AH

pop ax        ;sp= 00FEH ,ax= 6c6AH

pop bx        ;sp= 0100H ,bx= 6462H

 

push [4]      ;sp= 00FEH ,修改的内存单元地址是 2200:00FE 内容为 3534

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

以上是实验指令执行后结果

按照要求输入指令,使用a指令输入。

技术分享图片

 逐条执行,执行后,根据执行后寄存器内容,填写

 技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 

 

实验2 用机器指令和汇编指令编程 

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

输入指令

技术分享图片

 

 执行

 技术分享图片

实验二的预备知识里面有这一块的知识,关于中断机制,Debug的T命令在执行修改寄存器SS的指令时,下一条指令也紧接着被执行。

后来查找资料,得知

中断过程使用当前栈空间存放cpu关键数据,所以,你的栈里就有些不是所操作的数据。 

 

汇编语言之实验二

标签:为什么   查找   ext   命令   执行   http   机制   bubuko   bug   

原文地址:https://www.cnblogs.com/bowentianxia/p/9867913.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!