在书中提到,将ax,bx清零.用的是sub ax,ax
sub bx bx
也可以用mov ax,0
mov bx,0
为什么mov ax,0的机器码是三个字节,而sub ax,ax是两个字节.
ax不是16位寄存器吗?那对ax赋值也是16位即两个字节呀,怎么是三位字节呢?不懂??????...


- [游客] 个人的解法,不知道是否正确 请指教 0001H-十进制-1 偏移X16,基础地址-10 已知1 03/20 22:15
- [hxqt12] 第二题,说实话第一次接触汇编的话我不能理解。 只能看的出状况,却无法理解原因。 等学到后面,你就 03/03 00:29
- [menpoo] 第二题,试了下,在程序执行mov ss,ax后,查看了栈地址的内容,发现里面放入了一些寄存器的值,执 03/02 23:26
- [menpoo] 谢谢wdm,我意思是理解了,然后在写分析时,头脑乱了,呵呵,把话说反了.唉,文化少了!!! 03/02 23:17
- [wdm] 对,每个题目都要实践,才能发现问题。 03/02 19:48
- [wdm] 分析:同上,只不过这是个出栈,顺序为,先执行出栈指令,再执行sp=sp-2,程序如下 ====== 03/02 19:24
- [wdm] 博主的分析和对应的程序反了吧?是失误还是理解上有问题? 03/02 19:21
- [mouse] 第一题比较简单,debug显示的就是真正的结果。 博主也可以自己想想第二题,仔细看还是能看出好 03/02 16:42
- [mouse] 答案完全正确。~ 03/02 16:36
- [menpoo] 看了cook702给的链接,好像懂了,mov ax,0 首先mov ax,0这条指令要占一个字节, 03/01 14:35
[2008-03-01 00:52] 书中问题3.8的疑问?
阅读全文 |
评论次数(5) |
浏览次数(1195) |
所属类型(疑问点)
[2008-02-29 21:00] debug的疑问
昨天在用debug时,首先用d b810:0000查看了下内存的内容,然后用e b810:0000 63写入了一个值进去,再用d b810:0000查看时,怎么很多单元的内容都变了,为什么不应该只有b810:0000处的值变为63呢?我用不同的色彩划出了变化了值的单元...
阅读全文 |
评论次数(3) |
浏览次数(683) |
所属类型(疑问点)
[2008-02-28 21:51] debug实验的困惑
今天看到debug的实验,然后自己在电脑上试验了一下,这不问题来了
在debug中,用a命令及T命令让程序运行一下,可结果却是ax=0020 ??
程序如下: mov ax,8
add ax,ax
add ax,ax
两次累加结果应为:32呀
会不会是指针的原因,然后我又再进入debug,重新编了一下,
程序如下: mov ax,8
add ax,ax
add ax,ax
jmp 0c66:0100 ...
在debug中,用a命令及T命令让程序运行一下,可结果却是ax=0020 ??
程序如下: mov ax,8
add ax,ax
add ax,ax
两次累加结果应为:32呀
会不会是指针的原因,然后我又再进入debug,重新编了一下,
程序如下: mov ax,8
add ax,ax
add ax,ax
jmp 0c66:0100 ...
阅读全文 |
评论次数(3) |
浏览次数(692) |
所属类型(疑问点)
页码数(1):
1