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

Posted maycry

tags:

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

实验任务

(1)使用Debug,将下面的程序段写入内存,逐条执行,根据指令执行后的实际运行情况填空。(为了便于验证实验结果,对「2. 实验任务」中的(1)做如下两点调整:  ① 在使用 a 命令输入指令调试前,使用 e 命令将内存单元 0021:0 ~0021:7 连续 8 个字节数据修改为 30H, 31H, 32H, 33H,34H,35H,36H,37H  ② 将 P74 实验任务(1)中第 1行的 mov ax, ffff → 改为 mov ax, 0021)

  mov ax,ffff

  mov ds,ax

  mov ax,2200

  mov ss,ax

  mov sp,0100

  mov ax,[0]

  add ax,[2]

  mov bx,[4]

  add bx,[6]

  push ax

  push bx

  pop ax

  pop bx

  push [4]

  push [6]

技术分享图片

技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 技术分享图片

技术分享图片

技术分享图片

 

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

技术分享图片

技术分享图片

技术分享图片

 

 技术分享图片

第一行汇编指令功能:将2000送入AX寄存器

第二行:将ax的值赋给ss

第三行:将0100赋给ss

初始时栈顶和栈底分别是2000:0010和2000:000E。

至于2000:0~f会改变的原因似乎是因为在使用t指令进行调试时,会产生中断现象,导致CPU先将标志寄存器进栈。

总结与体会

在实验任务1中,理论分析各填空的值与实际操作得出的值有不少差错,没有熟练掌握;实验任务2中未能理解“中断”概念。在实验中对于栈有了更深刻的了解。


以上是关于实验 2 用机器指令和汇编指令编程的主要内容,如果未能解决你的问题,请参考以下文章

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

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

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

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

汇编语言实验1 查看CPU和内存,用机器指令和汇编指令编程

[汇编语言]实验一:查看CPU和内存,用机器指令和汇编指令编程。