0x042444FF; /* inc dword ptr [esp+4] */
0x042444FF
是机器代码,inc dword ptr [esp+4]
而是汇编代码,我知道机器代码不是跨平台的,因为它取决于许多因素。
汇编代码呢,它取决于 CPU 吗?
0x042444FF; /* inc dword ptr [esp+4] */
0x042444FF
是机器代码,inc dword ptr [esp+4]
而是汇编代码,我知道机器代码不是跨平台的,因为它取决于许多因素。
汇编代码呢,它取决于 CPU 吗?
汇编代码不是跨平台的。
通常机器指令和汇编指令之间存在非常直接的映射,因此汇编代码取决于体系结构。
来自维基百科:
汇编语言是用于计算机、微处理器、微控制器和其他集成电路的低级编程语言。它实现了对特定 CPU 架构进行编程所需的二进制机器代码和其他常量的符号表示。这种表示通常由硬件制造商定义,并且基于符号化处理步骤(指令)、处理器寄存器、内存位置和其他语言特征的助记符。因此,汇编语言特定于某种物理(或虚拟)计算机体系结构。这与大多数可移植的高级语言形成鲜明对比。
汇编代码基本上是机器代码的一种文字形式;它旨在使编写机器代码更加方便和可读。两者几乎是一对一的映射,所以一个汇编语句被转换成它的机器代码等价物。Macine 代码依赖于 CPU。因此,汇编也依赖于 CPU。