博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
实验3 编程、编译、连接、跟踪
阅读量:5898 次
发布时间:2019-06-19

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

一、实验任务

练习1

1、编写汇编源程序 t1.asm, 源程序代码如下:

 

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

(1)运行程序,观察程序输出的结果

 

(2)将line4和line9中寄存器dl的值分别修改为0~9中任何一个数字,重新汇编->连接->运行,观察结果的变化

line4和line9中寄存器dl的值修改为5时

 

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

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

  cx=0016 ; 

  ds=075AH ;    cs=076AH ;    满足关系(cs)=(ds)+10H

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

 

 

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

 

 

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

 

 

 练习2

1、编写汇编源程序 t2.asm,源程序代码如下:

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

 

(1)观察程序运行结果,验证是否在屏幕左上方出现红色的数值 36

 

  emmmmmmm试了很多次都没有 

 

 

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

 

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

 

转载于:https://www.cnblogs.com/1987857612syj/p/9892760.html

你可能感兴趣的文章
amazeui学习笔记--js插件(UI增强3)--折叠面板Collapse
查看>>
搭建MSSM框架(Maven+Spring+Spring MVC+MyBatis)
查看>>
Tensorflow游乐场
查看>>
个人先进事迹如何写--注意三个关键词的把握
查看>>
Nginx系列二:(Nginx Rewrite 规则、Nginx 防盗链、Nginx 动静分离、Nginx+keepalived 实现高可用)...
查看>>
CentOS erlang安装、emqtt
查看>>
xml入门
查看>>
erlang的启动参数设置。
查看>>
python的动态加载机制??
查看>>
支持数据列表分页的帮助类
查看>>
ubuntu下mysqli_connect()显示未定义,mysqli_fetch_all()显示未定义 解决方法
查看>>
14、posix信号量简介
查看>>
jquery 模版
查看>>
php控制器四
查看>>
【百度地图API】自行获取区域经纬度的工具
查看>>
linux:export, source命令
查看>>
Google Maps Android API v2 (4)- 地图类型
查看>>
图的广度优先搜索(BFS)
查看>>
[置顶] think in java interview-高级开发人员面试宝典(一)
查看>>
[置顶] Asp.Net底层原理(一、浏览器和服务器的交互原理)
查看>>