指令集架构(ISA)和机器语言之间有什么区别?

指令集架构(ISA)和机器语言之间有什么区别?

指令集架构 (ISA) 和机器语言之间有什么区别?它们是同一个概念吗?即代码可以直接在计算机上运行的语言?谢谢!

答案1

机器语言是 CPU 执行的实际二进制流。

汇编语言使用助记符和标准语法,这更方便人们使用。汇编程序将获取由此类文本组成的文本文件并进行翻译,或者集合将其转换为二进制目标文件包含机器语言。

可能有一个中间步骤叫做链接如果您在多个文件中都有代码,并且有“调用”其他文件中的例程的指令。高级汇编程序与编译器没有太大区别。

一个指令集架构是CPU厂商特定定义或实现的机器语言+其助记符和标准语法。

大多数 ISA 都已经存在了很长时间,因此通常有很多修订版本。因此,您有一个 Intel x86 ISA,但根据您谈论的是旧 8086、80286、80386 等,修订版本也各不相同。ARM 也一样,有 ARMv5、ARMv6、ARMv7 等。

相关内容