SM4ED 使用浮点或向量寄存器吗?
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
SM4ED 使用 opcode 0110011(0x33)、funct3 000、funct7 0011000。rs1 和 rs2 字段选择两个源寄存器,rd 字段选择目标寄存器。
sm4ed 是 Zksed 扩展的 SM4 加解密轮函数加速指令,适用于 RV32 和 RV64。它从 rs2[31:0] 中按 bs 选择一个字节,应用 SM4 S-Box 和数据轮函数线性层,将结果旋转到 bs 对应字节位置后与 rs1[31:0] 异或并写入 rd;在 RV64 上 32 位结果符号扩展到 XLEN。SM4 加密和解密使用相同核心操作,差异在轮密钥顺序。
SM4ED 是 Zksed 标量密码指令,SM4 加解密轮函数字节步骤。页面内容按官方标量密码扩展校对,避免把算法轮函数、密钥调度和寄存器来源混淆。
结合 «sm4ed a0, a1, a2, 0» 等实际代码理解该场景。
结合 «sm4ed a0, a1, a2, 0» 等实际代码理解该场景。
不使用。标量密码扩展的这些指令使用整数 X 寄存器。
不是。它是 AES、SHA、SM3 或 SM4 中的一个低级步骤,软件仍需按算法顺序组合多条指令和轮常数/轮密钥。