- [游客] 以前遇到过。看了讲解,明白不少。 如果我们把断点设置到int 21以后就没事了? 04/09 12:48
- [游客] 这样的问题还是发到论坛好,在这里很容易就被埋没了,嘿嘿~ 12/26 15:17
- [游客] debug下默认是16进制的,也就是说用a命令输入mov ax,354 ,结果变成ax=3 12/26 15:14
- [游客] 支持。 12/22 21:21
- [游客] 博主厉害。 12/22 21:18
- [游客] 博主的第一小题有问题吧。 存放位移的为一个十六位寄存器,它所能表示的最大值为65535,所以最大转 12/22 21:15
- [游客] 检测点11.2 add al,80h ;cf=1,of=1,sf=1,zf=1,pf=1 12/22 20:50
- [mouse] 我前两天也调了半天才把这个弄出来,还费了半天劲精简,我看博主的代码也是可以再精简点的~ 12/22 20:36
- [mouse] 写的真好,我的还没做出来呢 呜呜~~ 12/22 20:33
- [游客] 书上的代码基本都全了,没有问题,自己可以验证后把结果也贴上来~_~ 12/22 20:27
[2007-10-24 18:58] 检测点2.1(已阅)
mov ax,62627 AX=F4A3H
mov ah,31H AX=31A3H
mov al,23H AX=3123H
add ax,ax AX=6246H
mov bx,826CH BX=826CH
mov cx,ax CX=6246H
mov ax,bx AX=826CH
add ax,bx AX=04D8H
mov al,bh AX=0482H
mov ah,bl AX=6C82H
add ah,ah AX=D882H
add al,6 AX=D888H
add al,al AX=D810H
mov ax,cx AX=6246H
(2)实现2的4次方
mov al,2
add al,al
add al,al
add al,al
还有没其他方法啊,这个
[ lion 发表于 2007-10-24 20:45 ]
如果只用目前学过的指令,这个方法是最好的方法。
[ 游客 发表于 2007-10-25 10:45 ]
第一题可以自己在debug中验证一下,还顺便熟悉了一下debug,一举双得啊,呵呵
[ walkmanilove 发表于 2007-10-26 09:27 ]
debug 中不能输入 mov ax,62627
显示“7”错误,是62627被认为16进制吗?
[ 游客 发表于 2007-10-28 12:49 ]
mov ax,62627 AX=F4A3H
ax数值对了。这个答案现在只能手动算,在debug中用a命令时候出错(等学完第四章,可以在程序中验证没有问题)。
ax可以表示无符号数0~65536
也可以表示有符号数-32768~32767(可以参看附录的补码)
我觉得在debug中当作了有符号处理,62627已经超出ax的范围,所以才报错。
[ 游客 发表于 2007-10-28 12:50 ]
在debug中,写入mov ax,-10没有出现错误 ax=...
[ walkmanilove 发表于 2007-10-31 12:59 ]
我在debug中输入 mov ax,354
"354"是当作16进制处理呢,还是10进制呢,
如果是16进制,我认为:62627超过了ax能存放的4位16进制范围。
知道的解答下。。!
[ 游客 发表于 2007-12-17 21:55 ]
mov ax,62627 AX=F4A3H
ax 是16位,ax该是2627
AX=F4A3H
是什么意思啊
请高手指教
[ 游客 发表于 2007-12-26 15:14 ]
debug下默认是16进制的,也就是说用a命令输入mov ax,354
,结果变成ax=354h。
回答楼上:
mov ax,62627
-------------
62627是十进制数据,转换成十六进制是F4A3H.也就是ax=62627=F4A3H
[ 游客 发表于 2007-12-26 15:17 ]
这样的问题还是发到论坛好,在这里很容易就被埋没了,嘿嘿~