单字节十六进制小数转换成单字节BCD码小数.txt

来自「C51常用子程序 [精]」· 文本 代码 · 共 17 行

TXT
17
字号
 标号: HBD功能:单字节十六进制小数转换成单字节BCD码小数

入口条件:待转换的单字节十六进制小数在累加器A中。
出口信息:CY=0时转换后的BCD码小数仍在A中。CY=1时原小数接近整数1。
影响资源:PSW、A、B 堆栈需求: 2字节

   HBD:	MOV B,#100 ;原小数扩大一百倍
	MUL AB
	RLC A ;余数部分四舍五入
	CLR A
	ADDC A,B
	MOV B,#10 ;分离出十分位和百分位
	DIV AB
	SWAP A
	ADD A,B ;拼装成单字节BCD码小数
	DA A ;调整后若有进位,原小数接近整数1
	RET

⌨️ 快捷键说明

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