指令序列完成两个 128 位数的加法

以下指令序列完成两个 128 位数的加法,第一个数由高到低存放在寄存器 R7~R4,第二个数由
高到低存放在寄存器 R11~R8,运算结果由高到低存放在寄存器 R3~R0:
ADDS R0,R4,R8 ; 加低端的字 
ADCS R1,R5,R9 ; 加第二个字,带进位
ADCS R2,R6,R10 ; 加第三个字,带进位
ADC R3,R7,R11 ; 加第四个字,带进位

注意,这4行,代表一个整体,需要纵向看。

首先加法计算,都是从低位往高位加的,这个需要明白,比如15+14 =29,先计算各位,再计算10位数,这里汇编也是如此.

第一行,可以理解先计算各位,其结果存放再低位寄存器R0中,以此类推,至于进位,这是肯定要考虑的
 

ADD不关心之前是否有进位,也不关心加了后是否有进位
ADDS不关心之前是否有进位,但关心加了后是否有进位
ADC只关心之前是否有进位,不关心加了后是否有进位
ADCS关心之前是否有进位,关心加了后是否有进位

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

flybirding10011

谢谢支持啊999

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值