为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

单片机两个双字节无符号数相乘程序举例.doc

2017-11-11 3页 doc 12KB 87阅读

用户头像

is_751406

暂无简介

举报
单片机两个双字节无符号数相乘程序举例.doc单片机两个双字节无符号数相乘程序举例.doc 单片机两个双字节无符号数相乘程序举例 本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送 R4R5R6R7。 用移位和迭加的方式,步骤如下: 1)清部分积(高16位)R4R5=0。循环数16。 2) 把R4R5R6R7右移一位,从最低位开始检查乘数R6R7的各个位。 3)如乘数位为1 本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送R4R5R6R7。 用移位和迭加的方式...
单片机两个双字节无符号数相乘程序举例.doc
单片机两个双字节无符号数相乘程序举例.doc 单片机两个双字节无符号数相乘程序举例 本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送 R4R5R6R7。 用移位和迭加的方式,步骤如下: 1)清部分积(高16位)R4R5=0。循环数16。 2) 把R4R5R6R7右移一位,从最低位开始检查乘数R6R7的各个位。 3)如乘数位为1 本程序适用于Intel的51系统单片机 例 将(R2R3)和(R6R7)两个双字节无符号数相乘,结果送R4R5R6R7。 用移位和迭加的方式,步骤如下: 1)清部分积(高16位)R4R5=0。循环数16。 2)把R4R5R6R7右移一位,从最低位开始检查乘数R6R7的各个位。 3)如乘数位为1,则被乘数R2R3加到部分积R4R5中,否则不加。 4)循环数减1,不到16次再返回1)。 NMUL:MOV R4,#0 MOV R5,#0 ;积的高16位=0 MOV R0,#16 ;乘数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
/
本文档为【单片机两个双字节无符号数相乘程序举例.doc】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索