码迷,mamicode.com
首页 > 其他好文 > 详细

实验二

时间:2018-11-02 01:47:18      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:push   数据   通过   image   定义   bug   png   修改   执行   

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

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= 00FE ;修改的内存单元的地址是 2200:FE到FF 内容为   62       64                

 

push bx           ;sp= 00FC ;修改的内存单元的地址是 2200:FC到FD 内容为   6A        6C                

 

pop ax                 ;sp= 00FE           ;ax=  6C6A             

 

pop bx                ;sp=0100            ;bx=   6462           

 

push [4]        ;sp= 00FE    ;修改的内存单元的地址是  2200:FE到FF   内容为   34      35               

 

push [6]        ;sp= 00FC  ;修改的内存单元的地址是  2200:FC到FD   内容为    36      37                

 

 技术分享图片

 

 技术分享图片

技术分享图片

 

 技术分享图片

 通过实践更直观了解栈的运行,数据处理特点,pop以及push指令

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

技术分享图片

技术分享图片

mov ss,ax  ;  mov sp,10 定义了栈 改变了其中的数据

实验二

标签:push   数据   通过   image   定义   bug   png   修改   执行   

原文地址:https://www.cnblogs.com/xyy9899/p/9893298.html

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