天天看點

彙程式設計式:32位無符号數乘法

【任務】用十六位乘法指令完成三十二位無符号數乘法(結果64位),資料用下面的記憶體單元提供:

其中,被乘數x=((x2)*2^16)+(x1),即x2是高16位,x1是低16位;乘數y=((y2)*2^16)+(y1),即y2是高16位,y1是低16位。

【分析】

将把32位的被乘數的乘法分别分割成2個16位的數,分别對其進行16位的乘法,然後将得到的4個16位乘法的乘積,按照各自的位相加的最終乘積,如下圖:

彙程式設計式:32位無符号數乘法

【參考解答】

繼續閱讀