Intel instruction set reference中提到的唯一区别是使用overflow-flag而不是carry-flag。什么时候使用ADOX
代替ADCX
来执行带进位的无符号加法?
答案 0 :(得分:8)
当您不想覆盖进位标记时,可以使用ADOX,就像您已存储旋转输出一样。
然而,他们的主要用途是加速大型算术,因为现在你可以与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标志进位和进位out(保持CF标志不变)。
相关:
What is the difference between the ADC and ADCX instructions on ia32/ia64?