指令的字节顺序
Endianness of instructions
我了解数据的字节顺序,但指令呢?比方说,一条 64 位指令。它是如何存储在内存中的?
我找不到任何关于此的说明。每个人都在谈论数据的字节顺序w.r.t。
仅当讨论超过一个字节的数值时,字节顺序才有意义。指令不是数值,因此字节顺序的概念不适用于它们。
但是,它确实适用于出现在指令中的多字节数值。例如,假设您有一条指令 "Load the decimal value 1,094 into register X"。其中包含一个多字节数值,1,094。如果指令被编码为一系列字节(大多数 CPUs 编码指令),那么字节顺序的概念将适用于 1,094 在指令中的编码方式。通常这遵循 CPU 的数据字节序规则,但指令中的常量可以(至少在理论上)有自己的规则。指令集的文档将指定常量的编码方式。
我了解数据的字节顺序,但指令呢?比方说,一条 64 位指令。它是如何存储在内存中的?
我找不到任何关于此的说明。每个人都在谈论数据的字节顺序w.r.t。
仅当讨论超过一个字节的数值时,字节顺序才有意义。指令不是数值,因此字节顺序的概念不适用于它们。
但是,它确实适用于出现在指令中的多字节数值。例如,假设您有一条指令 "Load the decimal value 1,094 into register X"。其中包含一个多字节数值,1,094。如果指令被编码为一系列字节(大多数 CPUs 编码指令),那么字节顺序的概念将适用于 1,094 在指令中的编码方式。通常这遵循 CPU 的数据字节序规则,但指令中的常量可以(至少在理论上)有自己的规则。指令集的文档将指定常量的编码方式。