微指令

微架构、指令集架构与汇编语言的关系

和自甴很熟 提交于 2020-01-06 18:57:43
最近老是碰到x86 IA32 MIPS什么的对应的汇编又是有好几种,感觉很迷。遂查资料理清这些个概念如下(大部分内容来自维基百科,如有错误谢指正!) 微架构、指令集架构和汇编语言这三者的关系大概是这样的,我们分别来介绍下 指令集 指令就是要计算机执行某种操作的命令。 从计算机组成的层次结构来说 指令分为微指令(微程序级的指令,属硬件)、宏指令(若干机器指令组成的 属软件)和机器指令(二者之间 简称指令)。 我们这里只讨论机器指令,每一条机器指令指令可以完成一个独立的算术运算或逻辑运算操作(如加减移位等)。 一台计算机中所有机器指令的集合指令集。它存在于CPU内部,对CPU运算进行指导和优化。 从指令集来说,计算机分为我们熟悉的 CISC(复杂指令集计算机)和 RISC(精简指令集计算机)。这两种的设计理念和优缺点各不相同,这里不再展开。 微架构 微架构,是处理器核心的实现方式,是 将一种给定的指令集架构在处理器中执行的方法(指令集的实现)。 通常认为只有具备独立的微架构研发能力的企业才算具备了CPU研发能力。 指令集架构(处理器架构) 是计算机体系结构中与程序设计有关的部分,包含了基本数据类型,指令集,寄存器,寻址模式,存储体系,中断,异常处理以及外部I/O。指令集架构为汇编语言的设计师和编译器所见。 几种常见的架构(详细内容和异同网上的介绍很多) x86 的32位 -> IA32