早教吧 育儿知识 作业答案 考试题库 百科 知识分享

两个4位BCD数码相加,被加数和加数分别存于30H,31H和40H,41H单元中(次序为千位、百位在低地址中,十位、个位在高地址中),和数放在50H、51H、52H中(52H用于存放最高的进位),试编程加法程序.

题目详情
两个4位BCD数码相加,被加数和加数分别存于30H,31H和40H,41H单元中(次序为千位、百位在低地址中,十位、个位在高地址中),和数放在50H、51H、52H中(52H用于存放最高的进位),试编程加法程序.
▼优质解答
答案和解析
CLR C
MOV A,31H
ADD A,41H
MOV 51H,A
MOV A,30H
JC L1 ;判断低八位相加的进位标志,有进位跳转
ADDC A,40H ;没有进位直接加高八位
SJMP L2
L1:CLR C ;先清标志位(这样才不影响高八位的进位标志)
ADD A,40H
ADD A,#01H ;但是这里要多加个1,这样才能补上清除的标志位
L2:JNC L3
MOV 52H,#01H
L3:MOV 52H,#00H
END
看了 两个4位BCD数码相加,被加...的网友还看了以下: