Intel 指令集参考中提到的唯一区别是使用溢出标志而不是进位标志。什么时候使用ADOX
而不是ADCX
执行带有进位的无符号加法?
问问题
491 次
1 回答
9
当您不想覆盖进位标志时,可以使用 ADOX,就像您存储了诸如旋转输出之类的东西一样。
然而,它们的主要用途是加速 big-int 算术,因为现在您可以并行进位进行两次加法运算mulx
来自英特尔的论文New Instructions Support Large Integer Arithmetic
ADCX/ADOX 指令
adcx
和adox
指令是指令的扩展,adc
旨在支持两个独立的进位链。它们被定义为:adcx dest/src1, src2 adox dest/src1, src2
两条指令都计算
src1
和src2
加上一个进位,并生成一个输出和 dest 和一个进位。这两条指令的区别在于adcx
进位和执行使用 CF 标志(保持 OF 标志不变),而adox
指令使用 OF 标志进行进位和执行(保持 CF 标志不变)。
有关的:
于 2017-07-11T11:42:08.363 回答