pic单片机应用开发典型模块_第八章程序

pic单片机应用开发典型模块_第八章程序

ID:797602

大小:189.53 KB

页数:33页

时间:2017-09-05

pic单片机应用开发典型模块_第八章程序_第1页
pic单片机应用开发典型模块_第八章程序_第2页
pic单片机应用开发典型模块_第八章程序_第3页
pic单片机应用开发典型模块_第八章程序_第4页
pic单片机应用开发典型模块_第八章程序_第5页
资源描述:

《pic单片机应用开发典型模块_第八章程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、(1)16×16位定点数加、减法程序LIST            p=16f877    INCLUDE        p16f877.inc    ACCALO     EQU     20 ;存放加数或减数低8位    ACCAHI     EQU     21    ;存放加数或减数高8位    ACCBLO     EQU     23    ;存放被加数或被减数低8位    ACCBHI     EQU     24 ;存放被加数或被减数高8位    ORG    0X0000START    GOTO     MAIN;***双

2、字节减法子程序,入口地址ACCB-ACCA,出口地址ACCB***D_sub    CALL    NEG_A    ;求ACCA的补码;双字节加法子程序,入口地址ACCB+ACCA,出口地址ACCBD_add      MOVF     ACCALO,0;ACCB和ACCA低半字节相加    ADDWF     ACCBLO    BTFSC     STATUS,C;有进位否?    INCF     ACCBHI;有,ACCB高字节加1,再加ACCAHI    MOVF     ACCAHI,0;ACCA、ACCB高半字节相加    A

3、DDWF     ACCBHI    RETURN    ;子程序返回;ACCA取补子程序NEG_A    COMF     ACCALO    ;ACCALO取反加1    INCF     ACCALO    BTFSC     STATUS,Z    ;低8位有进位吗?    DECF     ACCAHI;有,ACCAHI减1,再取反    COMF     ACCAHI;否则ACCAHI直接取反    RETURN;子程序返回(2)16×16位定点数乘法程序LIST    p=16f877    INCLUDE    p16f877

4、.inc    ACCALO     EQU     20   ;存放乘数低8位    ACCAHI     EQU     21    ;存放乘数高8位    ACCBLO     EQU     23   ;存放被乘数低8位和乘积第16~23位    ACCBHI     EQU     24   ;存放被乘数高8位和乘积第24~31位    ACCCLO     EQU     26    ;存放乘积低8位    ACCCHI     EQU     27    ;存放乘积高8位    ACCDLO     EQU     28    

5、;临时寄存器    ACCDHI     EQU     29    ;临时寄存器    TEMP     EQU     2A    ;临时寄存器    SIGN     EQU     2B    ;存放乘积的符号    ORG    0X0000START    GOTO     MAIN    ORG    0X0100D_mpy    CALL     S_SIGN    ;求取乘积的符号,并对负数取补     CALL     SETUP    ;调用子程序,将ACCB的值送ACCD    INCF    TEMP    CLRF

6、     ACCCHI;清ACCC    CLRF     ACCCLOMLOOP    BCF     STATUS,C;清进位位    RRF     ACCDHI ;ACCD右移    RRF     ACCDLO    BTFSC     STATUS,C ;判断是否需要相加    CALL     D_add   ;加乘数至ACCB,见加法程序    BCF     STATUS,C   ;清进位位    RRF     ACCBHI    ;右移部分乘积    RRF     ACCBLO    RRF     ACCCHI   

7、 RRF     ACCCLO    DECFSZ     TEMP;乘法完成否?    GOTO     MLOOP ;否,继续求乘积    BTFSS     SIGN,7   ;是,确定乘积的符号    GOTO     OVER   ;为正,乘法结束    COMF     ACCCLO   ;为负,乘积取补    INCF         ACCCLO    BTFSC        STATUS,Z    DECF         ACCCHI    COMF         ACCCHI    BTFSC         STA

8、TUS,ZNEG_B    DECF         ACCBLO            COMF         ACCBLO    BTFSC         

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。