SHA512SIG0H 使用浮点或向量寄存器吗?
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
SHA-512 σ0 结果的高32位(RV32):从rs1和rs2的64位输入计算σ0并返回bits[63:32]
SHA512SIG0H 使用 opcode 0110011(0x33)、funct3 110、funct7 0101110。rs1 和 rs2 字段选择两个源寄存器,rd 字段选择目标寄存器。
sha512sig0h 是 Zknh 扩展的 SHA-512 σ0 函数的高位指令(仅 RV32)。将 rs1(高 32 位)和 rs2(低 32 位)拼接为 64 位输入,计算 σ0(x) = ROTR(x, 1) ⊕ ROTR(x, 8) ⊕ SHR(x, 7),然后返回结果的 bits[63:32](高 32 位)写入 rd。与 sha512sig0l 配对使用以在 RV32 上实现完整的 64 位 SHA-512 σ0 函数。
SHA512SIG0H 是 Zknh 标量密码指令,SHA-512 RV32 拆分变换。页面内容按官方标量密码扩展校对,避免把算法轮函数、密钥调度和寄存器来源混淆。
结合 «sha512sig0h a0, a1, a2» 等实际代码理解该场景。
结合 «sha512sig0h a0, a1, a2» 等实际代码理解该场景。
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
不是。它是 AES、SHA、SM3 或 SM4 中的一个低级步骤,软件仍需按算法顺序组合多条指令和轮常数/轮密钥。