在一个答案中,jww指出1的补码仍然用于编码智能体系结构上的向量指令,Ruslan澄清说这些指令的使用更多,因为自动矢量化变得很常见。
1的补码是否有优势导致它继续用于这些指令,还是仅仅因为历史原因而被使用?
引用jww:
从Intel® 64 and IA-32 Architectures Software Developer’s Manual 2A,第3-8页:
3.1.1.8说明部分
然后通过多个信息部分描述每个指令。 “描述”部分更详细地描述了指令和所需操作数的用途。
说明部分中可能使用的术语摘要:
的简写
*传统SSE:指SSE,SSE2,SSE3,SSSE3,SSE4,AESNI,PCLMULQDQ以及任何引用XMM寄存器且未使用VEX前缀编码的未来指令集。
* VEX.vvvv。指定源或目标寄存器的VEX位域(以1的补码形式) * rm_field:ModR / M r / m字段和任何REX.B的简写 * reg_field:ModR / M reg字段和任何REX.R
答案 0 :(得分:3)
那篇文章并不是说1用于整数存储的补码。甚至VEX编码的整数指令也会对2的恭维整数起作用。
所有这一点都表示,VEX指令中的编码寄存器ID需要具有用于ID寄存器ID的正常位。该问题中的一些人推测这是为了防止与现有说明冲突,这对我来说很有意义。