mubcdshl.asm
来自「PIC单片机的汇编源码合集,应用比较广泛,设计程序时可做子程序来用」· 汇编 代码 · 共 37 行
ASM
37 行
;********************MUBCDSHL********************
;本程序实现多字节非压缩BCD码非循环左移1位(即乘10)。
;入口参数: 原数据地址在SADR中,字节数在CNT中。
;出口参数: 结果首地址在SADR中,字节数在CNT中,移出位在SOU中。
;占用资源: W,STATUS,FSR,020H,023H,024H,028H,一重堆栈。
;说 明: 原数据将被冲掉.
IFNDEF MUBCDSHL1
#DEFINE MUBCDSHL1
MUBCDSHL DECF CNT,W
ADDWF SADR,F
MOVF SADR,W
MOVWF FSR ;得到末地址
MOVF SOU,W
MOVWF TEMP1 ;保存移入位
MOVF INDF,W
MOVWF SOU ;移出位
DECF CNT,F
DECF FSR,F
LOOP13 MOVF INDF,W
INCF FSR,F
MOVWF INDF
DECF FSR,F
DECF FSR,F
DECFSZ CNT,F
GOTO LOOP13
INCF FSR,F
MOVF TEMP1,W
MOVWF INDF ;移入位
DECF FSR,W
SUBWF SADR,W
MOVWF CNT ;恢复字节数
MOVF FSR,W
MOVWF SADR
RETLW 0
ENDIF
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?