單片機兩個雙字節(jié)無符號數(shù)相乘程序舉例.doc
《單片機兩個雙字節(jié)無符號數(shù)相乘程序舉例.doc》由會員分享,可在線閱讀,更多相關(guān)《單片機兩個雙字節(jié)無符號數(shù)相乘程序舉例.doc(3頁珍藏版)》請在裝配圖網(wǎng)上搜索。
單片機兩個雙字節(jié)無符號數(shù)相乘程序舉例 本程序適用于Intel的51系統(tǒng)單片機 例 將(R2R3)和(R6R7)兩個雙字節(jié)無符號數(shù)相乘,結(jié)果送R4R5R6R7。 用移位和迭加的方式,步驟如下: 1)清部分積(高16位)R4R5=0。循環(huán)數(shù)16。 2)把R4R5R6R7右移一位,從最低位開始檢查乘數(shù)R6R7的各個位。 3)如乘數(shù)位為1 本程序適用于Intel的51系統(tǒng)單片機 例 將(R2R3)和(R6R7)兩個雙字節(jié)無符號數(shù)相乘,結(jié)果送R4R5R6R7。 用移位和迭加的方式,步驟如下: 1)清部分積(高16位)R4R5=0。循環(huán)數(shù)16。 2)把R4R5R6R7右移一位,從最低位開始檢查乘數(shù)R6R7的各個位。 3)如乘數(shù)位為1,則被乘數(shù)R2R3加到部分積R4R5中,否則不加。 4)循環(huán)數(shù)減1,不到16次再返回1)。 NMUL:MOV R4,#0 MOV R5,#0 ;積的高16位=0 MOV R0,#16 ;乘數(shù)16位二進制 CLR C NMLP:MOV A,R4 RRC A MOV R4,A MOV A,R5 RRC A MOV R5,A MOV A,R6 RRC A MOV R6,A MOV A,R7 RRC A MOV R7,A ;(R4R5R6R7)右移一位 JNC NMLN MOV A,R5 ;若移出位=1,則(R4R5)=(R4R5)+(R2R3) ADD A,R3 MOV R5,A MOV A,R4 ADDC A,R2 MOV R4,A NMLN:DJNZ R0,NMLP MOV A,R4 ;最后再移位一次 RRC A MOV R4,A MOV A,R5 RRC A MOV R5,A MOV A,R6 RRC A MOV R6,A MOV A,R7 RRC A MOV R7,A ;(R4R5R6R7)右移一位 RET- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 單片機 兩個 字節(jié) 符號 相乘 程序 舉例
鏈接地址:http://www.hcyjhs8.com/p-7872199.html