debug和masm编译的区别
来源:柠檬就是酸     阅读:784
黑蚁网络
发布于 2018-08-11 23:01
查看主页

先新建asm文档,写出如下代码:

assume cs:codesegcodeseg segmentzhaochenyu:mov ax,2000H           mov ds,ax           mov al,[0]           mov bl,[1]           mov cl,[2]           mov dl,[3]           mov ax,4c00H           int 21Hcodeseg endsend zhaochenyu 

而后在dosbox中进行编译链接,1.png

此时,debug这个程序,输入:

debug 2.exe

在debug中查看寄存器状态并用d命令查看段地址2000,偏移地址为0的空间内容,一共四个字节:

2.png

接下来t命令单步执行程序:

3.png

注意看到指令变成了mov BL,01,下一步中BL被赋值成了01,而不是将段地址ds为2000,偏移地址为1的内存单元中的内容赋值到了BL中,用u命令查看:4.png

可以看出来,中括号[]是没使用的。

但是在debug中用a命令写指令中括号[]就有使用了。

可以看出来,在debug中写命令和使用编辑器写好asm文件而后masm编译是不一样的。具体起因在onenote中。

免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 系统环境 服务器应用
相关推荐
常使用的WEB服务器简介
写给想学和在学编程的你们,学习编程的7个好处
Android 分享微信小程序之图片优化
小说:黑客小伙穿回千禧年,遇到网络诈骗,直接通过防火墙查IP
程序员思想——"蝼蚁之穴溃,千里之堤",版本控制的重要性
首页
搜索
订单
购物车
我的