yeahhook 发表于 2011-7-26 22:43:42

div问题

本帖最后由 yeahhook 于 2011-7-27 19:09 编辑

div word ptr
(ax)=[(dx)*10000H+(ax)]/((ds)*16+(bx)+(si)+8)
我不理解这个为什么要乘以10000

请大家仔细点{:5_92:}

bevin 发表于 2011-7-26 23:41:45

div word ptr ,这个是除数为16为的除法,被除数默认是储存在DX和AX中的,其中DX是高16位。。。。所以除法的被除数为DX*10000H+AX,除数为((ds)*16+(bx)+(si)+8)
。。。即为(ax)=[(dx)*10000H+(ax)]/((ds)*16+(bx)+(si)+8)

yeahhook 发表于 2011-7-27 08:12:16

bevin 发表于 2011-7-26 23:41 static/image/common/back.gif
div word ptr ,这个是除数为16为的除法,被除数默认是储存在DX和AX中的,其中DX是高16位。。。。所以除法的 ...

static/image/smiley/lovely/20080925104601644.gif我知道dx存放是高位哇,但是还是不知道为什么要*10000

bevin 发表于 2011-7-27 08:17:13

本帖最后由 bevin 于 2011-7-27 08:56 编辑

这么说吧,假如是被除数是12345678H,那么DX=1234H,AX=5678H。(dx为高16位)而12345678H=1234H*10000H+5678H=(DX)*10000H+AX................

yeahhook 发表于 2011-7-27 08:35:35

bevin 发表于 2011-7-27 08:17 static/image/common/back.gif
这么说吧,假如是被除数是12345678H,那么DX=1234H,AX=5678H。(dx为高18位)而12345678H=1234H*10000H+567 ...

{:5_99:}谢谢bevin,一语道破天机。。。。

zzxxcc89 发表于 2011-7-27 16:20:14

我也看懂了,前面在作实验10的第2个实验的时候就在这一步卡住了

yeahhook 发表于 2011-7-27 18:45:34

zzxxcc89 发表于 2011-7-27 16:20 static/image/common/back.gif
我也看懂了,前面在作实验10的第2个实验的时候就在这一步卡住了

{:5_109:}一起进步哈 。。

页: [1]
查看完整版本: div问题