

- [游客] 博主真是我偶像啊,精神可嘉,值得学习!!! 01/30 01:53
- [游客] 不错,但还是有点浑 04/18 21:30
- [游客] 楼主的学习精神可佳 在下佩服佩服 希望你有更多好文章发表 让我们大家共同进步 03/19 23:48
- [游客] 很好!! 这种精神值得学习 发扬! 11/28 08:52
- [nono] 我刚学汇编,很有帮助,写了。。。 10/31 19:33
- [游客] 谢谢了,哈 04/18 17:02
- [游客] 很好!对我很有帮助! 03/11 21:51
- [游客] 大家共同促进中国的计算机事业吧! 02/27 19:41
- [gjcqfdy] 我也在用emu8086 由于在做实验七的时候发现emu8086好像不支持 bx.idata[si]形 02/16 00:15
- [laoshu0824] 太好了,,,我很仔细的读了王爽老师的第一章,,不过看了这篇文章侯,,发现有几个知识点我还是没有注意到 12/15 15:42
- [yc2010] 这个问题是实验16中的代码不懂。 table: dw sub1,sub2,sub3,sub4 09/07 21:55
- [lxc345] 谢谢!!! 希望以后多多指教啊. 05/06 16:07
[ yc2010 发表于 2010-09-07 21:55 ]
这个问题是实验16中的代码不懂。
table: dw sub1,sub2,sub3,sub4
set: push ax
push bx
cmp ah,3
ja sret
mov bl,ah
mov bh,0
add bx,bx ----------->这里为什么要bx*2
call word ptr table[bx]
sret: pop bx
pop ax
ret
-----------------------------------------
mov bl,ah
mov bh,0
add bx,bx ----------->这里为什么要bx*2 2个问题
call word ptr table[bx]
----------------------------------
ah是8位寄存器(字节),用来传送子程序编号。
bx是16位寄存器(字),已经是word了,为什么还要add bx,bx呢?
还有就是add bx,bx的话,那不就是dd(双字)了吗?
2个问题怎么就是没个人能解答下。
这个问题是实验16中的代码不懂。
[ lxc345 发表于 2008-05-06 16:07 ]
谢谢!!!
希望以后多多指教啊.