单片机中调整指令:DA A是什么意思

问问题描述

单片机中调整指令:DA A是什么意思,有没有人理理我?急需求助!

答精选答案

最佳答案

BCD码转换指令;比如说:81D+91D=172D而:81H+91H=112H这里为了将81H+91H结果与81D+91D一致,经过DA有:DA(112H)=112H+60H=172H 虽然一个是16进制一个是10进制但172在形式上是相等的。MOV R5,#81HMOV A, #91HADD A, R5DA A首先81H+91H=112H,此时AC=0,Cy=1,A=12H,所以DA A后A=12H+60H=72H,AC=0,Cy=1,结果为172H,当然运算应该理解为81D+91D=172D。

答其他回答(1条)

  • 这是用汇编写程序,计算十进制时常用的指令,是十进制调整指令。例,计算15+16,而且是用BCD码表示时,是00010101+00010110计算和为:00101011,是2BH,并不是31,这时就可以用DAA指令进行整调,就变成00110001,这就是31的BCD码了。DAA指令,只对加法计算结果有调整作用。

本文来自作者[Nougat]投稿,不代表公众科技网立场,如若转载,请注明出处:https://www.cpst.net.cn/changshijingxuan/202609/1087410.html

赞 (0)

发表回复

本站作者后才能评论

评论列表(4条)

  • Nougat
    Nougat 2026年09月30日

    我是公众科技网的签约作者“Nougat”!

  • Nougat
    Nougat 2026年09月30日

    希望本篇文章《单片机中调整指令:DA A是什么意思》能对你有所帮助!

  • Nougat
    Nougat 2026年09月30日

    本站[公众科技网]内容主要涵盖:教育咨询,知识百科

  • Nougat
    Nougat 2026年09月30日

    本文概览:BCD码转换指令;比如说:81D+91D=172D而:81H+91H=112H这里为了将81H+91H结果与81D+91D一致,经过DA有:DA(112H)=112H+60H=172H 虽然一个是16进制一个是10进制但172在形式上是相等的。MOV R5,#81HMOV A, #91HADD A, R5DA A首先81H+91H=112H,此时AC=0,Cy=1,A=12H,所以DA A后A=12H+60H=72H,AC=0,Cy=1,结果为172H,当然运算应该理解为81D+91D=172D。

联系我们

联系:143 0457 151

工作时间:周一至周五,9:30-18:30,节假日休息

关注我们