鱼C论坛

 找回密码
 立即注册
查看: 2774|回复: 1

请教一个debug显示问题

[复制链接]
发表于 2016-10-28 16:54:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
今天学到loap指令了,视频中又讲到一个题目,意思就是先修改2000:1000的值和2000:1001的值,再执行相应的步骤,后来我自己调试的时候老师mov ax,[bx]的时候错误,老是E1E,开始以为是程序写错了,但是仔细对照一遍是对的,然后以为是那段内存空间被别的程序占用了,换了一段内存1000:1000和1000:1001,到mov ax,[bx]的时候结果还是E1E,最后发现了一个小问题,就是小甲鱼视频中debug的时候 r指令显示出来的数据都是 十进制,而我的都是16进制。所以程序的前几步都是没有错,但是到了mov ax,[bx]这一步的时候,bx的值是03E8(也就是1000对应的16进制),ds的值也是03E8,所以这时候就把03E8:03E8地址的值付给了ax,而不是我所期望的1000:1000的值给了ax。所以开始的时候应该把1000:1000先计算成对应的16进制的3E8,在3E8:3E8和3E8:3E9出的值修改才不会出错。
最后我想问一下怎么把自己的debug显示的数据都变成10进制的状态,百度了一大堆全都不是自己想要的结果。顺便附上程序的代码
assume cs:abc
abc segment
start:  mov ax,1000
        mov ds,ax
        mov bx,1000
        mov ax,[bx]
        inc bx
        inc bx
        mov [bx],ax
        inc bx
        inc bx
        mov [bx],ax
        inc bx
        mov [bx],al
        inc bx
        mov [bx],al
abc ends

end start
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-29 11:07:26 | 显示全部楼层
”就是小甲鱼视频中debug的时候 r指令显示出来的数据都是 十进制”
哪一集?
我去看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-19 14:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表