『菰傢寡亽』 发表于 2013-11-3 22:29:00

9、请问:在DOSBox中,该如何使用汇编指令获取****:0000地址中的数据???

本帖最后由 『菰傢寡亽』 于 2013-11-4 09:23 编辑

问题描述如下:
1、启动DOSBox,用r命令查看各寄存器初始值;(没有问题)




2、查看地址1000:0000往后128个内存单元中的数据如下:(没有问题)




3、1000:0000内存单元中的数据为72H,如果我仅仅只是想通过命令查看这个单元中的数据,那么问题就来了,用-d 1000:00命令可以发现,显示结果还是从1000:0000到1000:007F这128个内存单元中的数据



4、如果这不算问题,那么再往下继续进行,我要把地址为1000:0内存单元中的字节型数据(即:72H)放入到寄存器al中,结果却发现1000:0中的数据无法获取,操作如下:


5、同样也不能获取1000:0地址处的字型数据(即:7372H),结果如下:



6、一开始我猜测是自己的输入方式不对,但是我错了,我用同样的输入方式,获取1000:0001地址处的字节型(即:73H)和字型数据(即:7473H)却没有报错,结果如下:




7、单步调试执行也是正常,结果如下:



8、我试着用MOV AX,DS:0的输入方式获取1000:0处的字型数据,虽然不报错,但是结果却是把段地址0000H赋值给了AX,结果如下:



9、请问:在DOSBox中,该如何使用汇编指令获取****:0000地址中的数据???

『菰傢寡亽』 发表于 2013-11-3 22:35:06

步骤4-6的图片上传不了,大家可以自己试验

福禄娃娃 发表于 2013-11-3 23:15:39

试试换成debug.exe就没这个问题了

网络学习 发表于 2013-11-4 00:25:18

如何使用汇编指令获取****:0000地址中的数据???

『菰傢寡亽』 发表于 2013-11-4 09:29:38

福禄娃娃 发表于 2013-11-3 23:15 static/image/common/back.gif
试试换成debug.exe就没这个问题了

我试了,还是不行哇~!

19℃ 发表于 2013-11-4 09:38:15

我只能说碉堡了

『菰傢寡亽』 发表于 2013-11-4 10:40:55

问题已经解决了,三楼版主正解~!~!

『菰傢寡亽』 发表于 2013-11-4 10:41:43

福禄娃娃 发表于 2013-11-3 23:15 static/image/common/back.gif
试试换成debug.exe就没这个问题了

感谢版主,换了好几个debug,问题解决了!

福禄娃娃 发表于 2013-11-4 12:19:44

『菰傢寡亽』 发表于 2013-11-4 10:41 static/image/common/back.gif
感谢版主,换了好几个debug,问题解决了!

不客气,互相帮助,一起加油!

libinqi456 发表于 2013-11-4 15:24:47

{:5_102:}占用了多少个字节
页: [1]
查看完整版本: 9、请问:在DOSBox中,该如何使用汇编指令获取****:0000地址中的数据???