subcdadd.asm

来自「pic单片机常用的汇编程序,很有用的,分成各个小模块」· 汇编 代码 · 共 26 行

ASM
26
字号
;********************SUBCDADD********************
;本程序实现单字节非压缩BCD码加法。
;入口参数:被加数在SOU中,加数在RLT中。
;出口参数:结果在SOU中,进位位在STATUS:C中。
;占用资源:W,STATUS,024H,026H,一重堆栈。

           IFNDEF       SUBCDADD1
            #DEFINE     SUBCDADD1
                        
SUBCDADD    MOVF        RLT,W
            ADDWF       SOU,W
            BTFSS       STATUS,DC   ;检查半进位
            GOTO        NODC1        
            ADDLW       6           ;加6处理
OVER2       ANDLW	0FH
            MOVWF       SOU
            BSF         STATUS,C
            RETURN
NODC1       ADDLW       6
            BTFSC       STATUS,DC   ;DC为1,表明原结果大于9
            GOTO        OVER2
            ADDLW       0FAH        ;恢复原值
            MOVWF       SOU
            BCF         STATUS,C    ;清除进位
            RETURN
           ENDIF

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?