. : : Assembly Language : : .  |  首页  |  我提出的问题  |  我参与的问题  |  我的收藏  |  消息中心   |  游客  登录  | 
提问 | 未解决 | 已解决 | 精华区 | 搜索 |
  《汇编语言》论坛 ->CALL和RET指令
主题 : :  第十章乘法问题  [待解决] 回复[ 13次 ]   点击[ 453次 ]  
mengdewan
[帖 主] [ 发表时间:2009-03-06 08:33 ] 
荣誉值:2
信誉值:5
注册日期:2008-12-18 16:07
计算N的3次方
mov ax,bx   ;把bx的传给ax做乘数
mul bx      ;bx与ax相乘
mul bx      ;这个不懂   乘数不是ax吗?此时的ax已经变了,存储的应该是上次的结果的低位吧,这样bx跟低位乘,结果成什么了?
不耻下问   求教了
wuhucome
[第7楼] [ 回复时间:2009-06-05 14:49 ] 
荣誉值:4
信誉值:2
注册日期:2009-05-26 10:52
如果第一次平方的结果出来后不超过16位,即小于65536,则第二次算出来的数从 DX * 16 + AX = N^3
如果第一次平方的结果已经超过16位,后面的计算没啥实际意义。

另外:
Page 187~188   10.8 mul指令
在187页(1)中描述:........如果是8位,一个默认放在AH中,另一个放在8位寄存器或......
在188页举得例子中
(1)计算 100 * 10
mov  al,100
mov  bl,10
mul  bl 
定义用ah,举例用了al,应该弄错了吧??
需要登录后才能回帖 -->> 请单击此处登录
    Copyright © 2006-2024   ASMEDU.NET  All Rights Reserved