感谢@飞翔的哈士奇
学习链接在
https://blog.csdn.net/weixin_44307065/article/details/104985457
用dosbox和debug配置环境
1,先安装dosbox,
2,设置一个文件夹为c盘
3,将debug.exe放到该文件夹
4,mount c盘和此文件夹
5,转到c盘,敲debug即可。
如下图
文件夹内容
用alt+ L进入dos全屏模式
先用-r查看各个寄存器
用-a命令写汇编,如果只按-a,则默认到cs:IP
汇编指令是从cs:ip开始执行的
从这里开始输入表2.1中的汇编指令,
输入完mov ax, 18后,然后按-t执行,这时候ax=0018,说明确实起到效果了
也可以先写完,再一下下按-t,cs:ip的指针也一步步地往下执行,寄存器的值也在不断改变
因为倒数第二句是Move ax, bx,而bx=0,所以ax=0,最后一句ax+bx也为0了。
这时候执行表2.2,此时的cs:ip指针已经换地址了,所以再次输入-a时变为 073F:010C
从cs:ip指针处开始执行
另外,mov ax,4e20h通不过,应该用move ax, 4e20
一步步-t执行下去,发现最后8226+8226=044c,不用怀疑,高位的1已经超出16位寄存器,保存不了。
先这样吧,王爽确实厉害,