w1550441298 发表于 2016-10-28 16:54:35

请教一个debug显示问题

今天学到loap指令了,视频中又讲到一个题目,意思就是先修改2000:1000的值和2000:1001的值,再执行相应的步骤,后来我自己调试的时候老师mov ax,的时候错误,老是E1E,开始以为是程序写错了,但是仔细对照一遍是对的,然后以为是那段内存空间被别的程序占用了,换了一段内存1000:1000和1000:1001,到mov ax,的时候结果还是E1E,最后发现了一个小问题,就是小甲鱼视频中debug的时候 r指令显示出来的数据都是 十进制,而我的都是16进制。所以程序的前几步都是没有错,但是到了mov ax,这一步的时候,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,
        inc bx
        inc bx
        mov ,ax
        inc bx
        inc bx
        mov ,ax
        inc bx
        mov ,al
        inc bx
        mov ,al
abc ends

end start

人造人 发表于 2016-10-29 11:07:26

”就是小甲鱼视频中debug的时候 r指令显示出来的数据都是 十进制”
哪一集?
我去看看
页: [1]
查看完整版本: 请教一个debug显示问题