mirror of
https://github.com/emmansun/gmsm.git
synced 2025-05-10 19:16:18 +08:00
Updated Golang s390x asm Reference (markdown)
parent
1cc6215218
commit
75307f5481
@ -39,8 +39,12 @@ Addressing modes:
|
||||
- VAC - Vector Add With Carry. 带进位无符号数加法;相当于3个数加法。
|
||||
- VACC - Vector Add Compute Carry. 无符号数加法,计算进位。只有进位结果。
|
||||
- VACCC - Vector Add With Carry Compute Carry. 带进位无符号数加法,计算进位。相当于3个数加法,只有进位结果。
|
||||
- VS - Vector Substract. 无符号数减法。
|
||||
- VSBCBI - Vector Substract With Borrow Compute Borrow Indication. 带借位计算借位。
|
||||
- VSBI - Vector Substract With Borrow Indicator. 带借位减法。
|
||||
- VSCBI - Vector Substract Compute Borrow Indication. 计算借位。
|
||||
|
||||
所以,两个数相加要同时使用多个指令。示例演示T1||T0, RED2||RED1两个256位数的加法,得到 T2||T1||T0。
|
||||
所以,两个数相加要同时使用多个指令。下面示例演示 T2||T1||T0 = T1||T0 + RED2||RED1。
|
||||
```asm
|
||||
VACCQ T0, RED1, CAR1
|
||||
VAQ T0, RED1, T0
|
||||
@ -49,6 +53,14 @@ Addressing modes:
|
||||
VAQ T2, CAR2, T2
|
||||
```
|
||||
|
||||
下面示例演示 T2||TT1||TT0 = T2||T1||T0 - ZERO||PH||PL。
|
||||
```asm
|
||||
VSCBIQ PL, T0, CAR1
|
||||
VSQ PL, T0, TT0
|
||||
VSBCBIQ T1, PH, CAR1, CAR2
|
||||
VSBIQ T1, PH, CAR1, TT1
|
||||
VSBIQ T2, ZER, CAR2, T2
|
||||
```
|
||||
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user