diff --git a/SM2-WWMM-(2).md b/SM2-WWMM-(2).md index d8c17a3..76c4e19 100644 --- a/SM2-WWMM-(2).md +++ b/SM2-WWMM-(2).md @@ -606,3 +606,17 @@ $T_3=(t_4+Y-Y>>32) \ast 2^{256}+(t_3 - Y<<32) \ast 2^{192} + (t_2 - Y) \ast 2^{1 | 方案二 | 3 | 2 | 9 | 3 | 看来在支持**MULXQ/ADCXQ/ADOXQ**的情况下,使用方案一(MULX/ADCX/ADOX)更好! + +## 两个移位vs.一个乘法 +两个移位操作和一个乘法操作的性能哪个好? +```asm + MOVQ t0, AX + MOVQ t0, DX + SHLQ $32, AX + SHRQ $32, DX +``` +vs. +```asm + MOVQ t0, AX + MULQ $0x100000000 +```