📄 bin8bcd.asm
字号:
;
;********************************************************************
; Binary To BCD Conversion Routine
;
; This routine converts the 8 bit binary number in the W Register
; to a 2 digit BCD number.
; The least significant digit is returned in location LSD and
; the most significant digit is returned in location MSD.
;
; Performance :
; Program Memory : 10
; Clock Cycles : 81 (worst case when W = 63 Hex )
; ( i.e max Decimal number 99 )
;*******************************************************************
;
LSD equ 10
MSD equ 11
;
INCLUDE "picreg.h"
;
BinBCD clrf MSD
movwf LSD
gtenth movlw .10
subwf LSD,W
BTFSS STATUS,CARRY
goto over
movwf LSD
incf MSD
goto gtenth
over retlw 0
;*******************************************************************
;
main movlw 63 ; W reg = 63 Hex
call BinBCD ; after conversion, MSD = 9 & LSD = 9
self goto self ; ( 63 Hex = 99 Decimal )
;
org 1FF
goto main
;
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -