5.3在Debug中跟踪用loop指令实现的循环程序
来源:互联网 发布:^ c语言 编辑:程序博客网 时间:2024/06/05 15:58
问题:计算ffff:0006单元中的数乘以3,结果存储在dx中。
解答:
一:分析思路:
1.运算后的结果是否会超出dx所能存储的范围? ffff:0006单元中的书是一个字节型的数据,8位的,其范围在0到2的八次方之间,取其最大值是2的8次方,即255。则用它和3相乘后的值是255×3=765=02fdh。而dx所能存储的最大数值是2的16次方,即65535=0ffffh,很明显的是02fdh是小于0ffffh的。所以结论是可以在dx中存放。
2.将其乘以3,等同于把其相加3次,可以考虑用循环了。可以先把ffff:0006单元的值放入ax中,但是ffff:0006中的数据是8位的,而ax是16位的。故应该把ax的高位清零。其次,要循环3次,把3送入cx中。
二:源代码编写:
三:编译连接过程如下:
运行masm.exe,然后输入源代码路径
运行link.exe 输入需要连接的obj文件
三:调试过程如下
从过程可以看出结果为012fh。如果我们想跳过开始的几个步骤直接跳到循环出执行,可以先查看循环出的内存单元地址应该是多少,如本题中为cs:0010,则可以用指令g 0010,当按下enter键之后,程序将会执行到add dx,ax处停下来,等待我们开始继续调试。如果想让循环一次执行完,可以用p命令来达到目的。当然也可以用 g 0014也可以达到同样的目的。
- 5.3在Debug中跟踪用loop指令实现的循环程序
- 【Clojure】在loop-recur中实现多重循环
- 循环指令loop
- 汇编语言中loop指令的使用
- 用debug实现汇编的循环功能
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪[转]
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪
- 用Debug函数实现API函数的跟踪(1)
- 用Debug函数实现API函数的跟踪(2)
- 用Debug函数实现API函数的跟踪(3)
- c++ 虚函数的实现机制
- [转] 什么是BI(商业智能)
- 字符、字符数组、char、string的区别分析
- 创业要借势吗?——蒋涛 PK Leo实录(9)
- 如何将VS6.0单文档工程中的任务栏设置上自己需要的信息显示?
- 5.3在Debug中跟踪用loop指令实现的循环程序
- VC6 插件 visual assist x 的设置
- 全局变量、局部变量、extern
- 怎样成为优秀的软件模型设计者?
- 谈C/C++指针精髓(1)[转帖]
- 谈C/C++指针精髓(2)[转帖]
- 谈C/C++指针精髓(3)[转帖]
- MySQL中文乱码问题
- 你的DNN站点慢了么?