您好、欢迎来到现金彩票网!
当前位置:2019欢乐棋牌 > 指令集 >

ARM指令集中的ADDC是什么意思?已知C=1R1=100R2=90执行指令ADDCR

发布时间:2019-07-08 21:09 来源:未知 编辑:admin

  可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。

  展开全部ARM 指令集中没有“ADDC”的指令,看题目,你应该是说的 ADC 指令,意思是“带进位加法”,就是普通的加法再加上 C 标志(进位)。

  C = 1,R1 = 100,R2 = 90,执行指令“ADC R0, R1, R2”后,R0 = 191,即 R0 = R1 + R2 + C。更多追问追答追问那带进位加法是什么意思啊?怎么判断呢?追答上面已经解释了啊,带进位的加法,就是普通加法再加上 C 标志。

  你要“判断”什么?追问就是什么叫进位呢?追答进位,就是 C 标志位,用于超过了寄存器宽度的数据的加法。

  比如寄存器宽度是 32 位,当需要进行 64 位数的加法时,需要分两步:“低 32 位数据相加”和“高 32 位数据相加”,就像我们最熟悉的十进制两位数相加一样,要分为“个位”和“十位”两步相加,而个位相加后可能发生“进位”,这个进位的数据需要加到十位上。

  对计算机来说,就使用了 C 标志作为进位的“暂存”位置。举例来说:两个 64 位数据相加:8C92B80A23h + 6DB0C81F9458h

  低 32 位部分相加(92B80A23h + C81F9458h)得 15AD79E7Bh,这个得数已经超过了 32 位,寄存器装不下,于是超过 32 位的部分(只有 1)被放进了 C 标志表示“进位了”,剩余的 32 位(5AD79E7Bh)放进了寄存器。

  然后进行高 32 位部分相加,注意,高 32 位数的相加,就必须使用“带进位的加法”,把刚才进位的值一起加上(8Ch + 6DB0h + 1),才能得出正确的结果 6E3Dh。

http://azetaline.com/zhilingji/229.html
锟斤拷锟斤拷锟斤拷QQ微锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷锟斤拷微锟斤拷
关于我们|联系我们|版权声明|网站地图|
Copyright © 2002-2019 现金彩票 版权所有