紧急救命3:谁有四字节二进制整数转成压缩BCD码的51汇编子程序啊,救急啊!!!

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/27 22:26:05
各位高手们谁有能将四个字节的二进制整数(四个字节表示一个数)转换成压缩BCD码的51汇编子程序啊,我跪求了!!!!!!!!能给我一个算法 也不胜感激。先将30分送上,如果可用,我再加50分。谢谢各位了。
这个我有,改了,不成功。能再找找么?你有四位数压缩BCD码乘法的子程序么?这个也可以!

下面有一个双字节转换的子程序,你看着改一下吧

功能:双字节十六进制整数转换成三字节BCD码整数
入口条件:待转换的双字节十六进制整数在R6、R7中。
出口信息:转换后的三字节BCD码整数在R3、R4、R5中。
影响资源:PSW、A、R2~R7 堆栈需求: 2字节

HB2: CLR A ;BCD码初始化
MOV R3,A
MOV R4,A
MOV R5,A
MOV R2,#10H ;转换双字节十六进制整数
HB3: MOV A,R7 ;从高端移出待转换数的一位到CY中
RLC A
MOV R7,A
MOV A,R6
RLC A
MOV R6,A
MOV A,R5 ;BCD码带进位自身相加,相当于乘2
ADDC A,R5
DA A ;十进制调整
MOV R5,A
MOV A,R4
ADDC A,R4
DA A
MOV R4,A
MOV A,R3
ADDC A,R3
MOV R3,A ;双字节十六进制数的万位数不超过6,不用调整
DJNZ R2,HB3 ;处理完16bit
RET