单片机中十进制调整指令:DA A是什么意思?
展开全部
BCD码转换指令;
比如说:
81D+91D=172D
而:
81H+91H=112H
这里为了将81H+91H结果与81D+91D一致,经过DA有:
DA(112H)=112H+60H=172H
虽然一个是16进制一个是10进制但172在形式上是相等的。
MOV R5,#81H
MOV A, #91H
ADD A, R5
DA A
首先81H+91H=112H,此时AC=0,Cy=1,A=12H,所以DA A后A=12H+60H=72H,AC=0,Cy=1,结果为172H,当然运算应该理解为81D+91D=172D。
比如说:
81D+91D=172D
而:
81H+91H=112H
这里为了将81H+91H结果与81D+91D一致,经过DA有:
DA(112H)=112H+60H=172H
虽然一个是16进制一个是10进制但172在形式上是相等的。
MOV R5,#81H
MOV A, #91H
ADD A, R5
DA A
首先81H+91H=112H,此时AC=0,Cy=1,A=12H,所以DA A后A=12H+60H=72H,AC=0,Cy=1,结果为172H,当然运算应该理解为81D+91D=172D。
展开全部
这条指令对累加器中由上一条加法指令(加数和被加数均为要所BCD吗)所获得的8位结果进行调整,使它调整为八位压缩BCD码的数。
例如:(A)=55,(R5)=67
ADD A,R5
DA A
结果为(A)=23,CY=1.
例如:(A)=55,(R5)=67
ADD A,R5
DA A
结果为(A)=23,CY=1.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
DA A,就是把A中的操作数转换成10进制
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
一般用在加法运算中,作用:把A中的数,变为BCD码的形式
结果在:CY,AC,和A中
例如:
MOV A,#100
ADDc A,#25
DA A
结果是:A=83H,CY=0,AC=1
结果在:CY,AC,和A中
例如:
MOV A,#100
ADDc A,#25
DA A
结果是:A=83H,CY=0,AC=1
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询