汇编、CPU架构、指令集、硬编码之间的关系
● 汇编语言:这是一种低级语言,用于与硬件直接交互。它是由人类可读的机器码或指令组成的,这些指令告诉CPU如何执行特定的任务。每条汇编指令都有一个对应的机器码指令,CPU可以理解和执行这些机器码指令。(最底层的软件语言)
● CPU芯片:这是计算机的核心部件,负责执行所有的计算任务。CPU芯片内部包含了数以亿计的晶体管,这些晶体管以特定的方式排列和组合,形成了各种不同的功能模块,如运算单元、控制单元、缓存等。(CPU是指令集的实例化)
● 硬编码:硬编码是指将数据或程序代码直接编码为二进制形式,通常用于嵌入式系统和硬件电路中。硬编码与汇编和机器码不同,它不是由人类可读的代码转换而来的,而是直接用二进制编码进行编写和执行。在CPU中,硬编码的例子包括机器码(即CPU可以直接执行的二进制代码)和固件(存储在CPU或其他硬件中的低级程序)。(硬编码是指令集的实现)
● 指令集:指令集是CPU可以理解和执行的机器码指令集合。存储于CPU内部,用来引导CPU进行加减运算和控制计算机操作系统的一系列指令集合。指令集是软件与CPU之间的一个接口。(指令集相当于是一套规范)
● CPU架构:CPU架构定义了CPU的内部设计和运行方式。不同的CPU架构会有不同的微结构,包括前端、解码器、执行单元、内存和寄存器等组件,它们共同协作完成CPU的取指、解码、执行等操作。(复杂指令集架构CISR;精简指令集架构RISR)
下面是他们的关系图:
● 下面是软件代码运行在机器上的关系,以飞腾D2000为例。
注:学习中,欢迎指正