博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
汇编语言实验3
阅读量:5736 次
发布时间:2019-06-18

本文共 1144 字,大约阅读时间需要 3 分钟。

这是汇编语言实验3

  1. 练习11步,编写汇编源程序t1.asm, 源程序代码如图1-1所示。

  

1-1 汇编源程序t1.asm 源代码

2步,对源程序 t2.asm 进行汇编、连接、运行、调试

(1) 运行程序,观察程序输出结果是什么?

 

输出结果为36

(2)  line4line9种寄存器dl 的值分别修改为 0~9 中任何一个数字,重新汇编→ 连接

→运行,观察结果的变化。  

 

Line 4Line9dl的内容由原来的36改为63

 

运行结果为:63

(3) debug对生成的可执行文件 t2.exe 进行调试。

① 使用 r 命令查看。观察寄存器 cx 的值是 多少;观察寄存器 ds cs 的值是多 少,它们之间是否满足关系(cs)=(ds)+10H? 

利用debugt2.exe进行调试后可发现(cs(076a))=(ds(075a)+10h)

② PSP(程序段前缀)的头两个字节是CD 20, debug查看PSP的内容,验证是否 如此。

 

③  使用 u 命令对 t2.exe 进行反汇编,观察反汇编得到的源代码。

 

④  使用 t 命令和 p 命令(遇到 int 命令时,用 p 命令)单步调试,观察结果。

按照四小点的要求调试,中间过程没有出现什么问题,最后的结果为:

 

  1. 练习2

1步,编写汇编源程序2.asm,源程序代码如图1-2所示。

  

       图1-2 汇编源程序2.asm源代码

2步,对源程序 2.asm 进行汇编、连接、运行、调试

 

(1) 2.asm进行汇编、连接后,得到可执行文件2.exe。运行2.exe,观察程序运行 结果,验证是否在屏幕左上方出现红色的数值36

这里确实出现了老师所提出的的问题(经测试,有些平台在 dosbox 下运行这个程序时有些问题,如果屏幕左上方没有 输出结果,请运行程序2.exe前,先输入cls命令清空一下屏幕,然后再执行2.exe。),由是清屏后执行2.exe的到下面的结果

 

(2) 如果(1)结果得到验证,重新打开2.asm,尝试将源代码中line70433h0432h, line10 0436h0439h, 然后重新汇编、连接,得到可执行文件 2.exe。使用 cls 命令清 屏后,再次观察程序运行结果。

 

改动以后的运行结果为:

 

 

(3) 如果(1)结果得到验证,重新打开2.asm,尝试将源代码中line70433h0333h, line10 0436h0336h, 然后重新汇编、连接,得到可执行文件 2.exe。使用 cls 命令清

 

 

改动以后的运行结果为:

 

 

转载于:https://www.cnblogs.com/jdl-TECshadower/p/9973272.html

你可能感兴趣的文章
Maven编译跳过test的设置
查看>>
SQLyog图形化l数据库的操作和学习
查看>>
[LeetCode]22.Generate Parentheses
查看>>
WEB前端 CSS选择器
查看>>
计算A/B Test需要的样本量
查看>>
二叉树前序中序后序遍历的非递归方法
查看>>
mysql 行转列列转行
查看>>
《设计模式系列》---桥接模式
查看>>
[Unity3d]Shader 着色器 学习前了解知识
查看>>
Linux中文件颜色所代表的属性和颜色
查看>>
Redrain duilib中事件委托存在的问题
查看>>
43、我的C#学习笔记9
查看>>
网站建表实践及优化
查看>>
字符串的简单操作
查看>>
C#新功能--命名参数与可选参数
查看>>
strtok和strtok_r
查看>>
维辰超市:借助云商城成功转型新零售
查看>>
web.xml中<load-on-start>n</load-on-satrt>作用
查看>>
python之路---进程
查看>>
1061. Dating (20)
查看>>