压缩bcd码转为二进制数

51单片机这个算法有什么错误50h51h是压缩bcd码转换后放回50h51h程序如下:ORG0000HMOVR0,#50HLCALLBCD10INCR0LCALLBCD1... 51单片机 这个算法有什么错误 50h 51h 是压缩bcd码 转换后放回 50h 51h
程序如下:
ORG 0000H
MOV R0,#50H
LCALL BCD10
INC R0
LCALL BCD10
BCD10: MOV A,@R0
ANL A,#0F0H
SWAP A
MOV B,#10
MUL AB
XCH A,@R0
ANL A,#0FH
ADD A,@R0
MOV @R0,A
RET
CLR C
MOV A,51H
MOV R3,#0
MOV R2,51H
JZ OVER
MOV A,50H
MOV R4,A
LOOP: MOV A,R4
ADD A,#100
MOV R4,A
CLR A
ADDC A,R3
MOV R3,A
CLR C
DJNZ R2,LOOP
MOV 50H,R4
MOV 51H,R3
OVER: SJMP $
END
展开
 我来答
做而论道
高能答主

2010-03-26 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.1亿
展开全部
程序的结构混乱。
……
LCALL BCD10 --调用子程序,之后执行什么?
BCD10: MOV A,@R0 --之后,又执行到子程序里面了!
ANL A,#0F0H
SWAP A
MOV B,#10
MUL AB
XCH A,@R0
ANL A,#0FH
ADD A,@R0
MOV @R0,A
RET --返回到何处?
CLR C --返回指令后面的程序,还能执行吗?
MOV A,51H
MOV R3,#0
……
上海巴鲁图工程机械科技有限公司_
2022-05-15 广告
增量编码器一般输出信号是两路正交脉冲信号和一路参考信号,之所以叫增量是因为它的位置信号是通过对脉冲计数累加得到,依靠计数设备的内部记忆来记住位置,并且同每圈输出的参考信号来清除累计误差. 缺点就是断电后,需要重新寻找初始位置. 例如打印机扫... 点击进入详情页
本回答由上海巴鲁图工程机械科技有限公司_提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式