7.2算术运算程序的设计 例3多位十进制数加法。 DA A DA A DA A 多位十进制加法算法 单片机原理与应用
2021/2/6 单片机原理与应用 11 7.2 算术运算程序的设计 例3 多位十进制数加法。 DA A + DA A DA A 多位十进制加法算法
7.2算术运算程序的设计 例4多位十进制减法 2位十进制数减法算法: Ⅹ-Y=X+100-Y→>X+9AH-Y 把十进制减法变换成二进制减法(求十进制减数 的补码)和十进制加法2步进行。多位十进制数减 法也采用了同样的算法。 单片机原理与应用
2021/2/6 单片机原理与应用 12 7.2 算术运算程序的设计 例4 多位十进制减法 2位十进制数减法算法: X-Y=X+100-Y→ X+9AH-Y 把十进制减法变换成二进制减法(求十进制减数 的补码)和十进制加法2步进行。多位十进制数减 法也采用了同样的算法
7.2算术运算程序的设计 (1)2位十进制数减法子程序: 入口条件:R0指出被减数所在单元的地址;R1指出减数 所在单元的地址; 出口条件:R0指出差所在单元的地址,进位在Cy中; SH SUB MOV A #9AH SUBB A, aRI ADD A, RO DA A MOV aRO, A INC RO INC RI CPL C RET 单片机原理与应用 13
2021/2/6 单片机原理与应用 13 7.2 算术运算程序的设计 (1)2位十进制数减法子程序: 入口条件:R0指出被减数所在单元的地址;R1指出减数 所在单元的地址; 出口条件:R0指出差所在单元的地址,进位在Cy中; SH_SUB: MOV A, #9AH SUBB A, @R1 ADD A, @R0 DA A MOV @R0, A INC R0 INC R1 CPL C RET
7.2算术运算程序的设计 (2)6位十进制数加法程序: MOV RO.#20H MOV RI #30H MOV R5.#03H CLR C DOSUB ACALL SH SUB DJNZ R5. DOSUB RET 单片机原理与应用
2021/2/6 单片机原理与应用 14 7.2 算术运算程序的设计 (2)6位十进制数加法程序: MOV R0, #20H MOV R1, #30H MOV R5, #03H CLR C DOSUB: ACALL SH_SUB DJNZ R5, DOSUB RET
7.2算术运算程序的设计 例5多字节数二进制乘法 卑斤机原理与迥用 15
2021/2/6 单片机原理与应用 15 XYH3 XYH2 XYH1 XH XL YH YL × XH XL YH × XH XL YL × XYL3 XYL2 XYL1 XYH3 XYH2 XYH1 XYL3 XYL2 XYL1 XY4 XY3 XY2 XY1 7.2 算术运算程序的设计 例5 多字节数二进制乘法