谢谢你^O^!
能否帮我写写这个程序呢?感激不尽
追答MOV A,R0 ;R0存储要运算的数据
ANL A,#0FH ;取低四位
CJNE A,#0AH,NEXT_L ;不等于10,跳转
ADD06H: ADD A,#06H
MOV 30H,A
LJMP HIG
NEXT_L: JC NOADDL ;小于10,跳转
LJMP ADD06H
NOADDL: MOV 30H,A
HIG: MOV A,R0
ANL A,#0F0H ;取高四位
ADD A,30H ;加低位进位
ANL A,#0F0H
CJNE A,#0A0H,NEXT_H
ADD60H: ADD A,#60H
MOV 31H,A
LJMP ADDALL
NEXT_H: JC NOADDH
LJMP ADD60H
NOADDH: MOV 31H,A
ADDALL: MOV A,30H
ANL A,#0FH
ADD A,31H
MOV R1,A ;运算结果保存于R1
RET
能把程序写给我吗,谢了!~
追答就是如果底四位大于9的,就加06h
如果高四位大于9的,就加60h\
如果高低四位都大于9的就加66h
例子:mov a,#0ah;
add a,#06h;
立即数A就为十进制的10;
mov a,#0a0h;
add a,#060h;
立即数A0就为十进制的100;
mov a,#0aah;
add a,#66h;
立即数Aa就为十进制的110;
那如果是不使用ADD语句,又要实现add的功能,怎么弄呢
求指教呀
追答直接 da a就可以了,这样就将十六进制转成十过制了
追问谢谢你了!