处理器架构:一般就是指的是处理器的硬件架构,称为微架构,就是一堆硬件电路,用来实现指令集所规定的操作运算;看了这个你就理解其实硬件本质上就是为了某种规则服务的;如果木头这个材料有两种状态的转换,我们也可以用木头来做硬件材料来实现一些运算逻辑;
1、ARM系列
2、x86系列/Atom处理
3、MIPS系列
指令集:指令集可以理解为我们设计的一套运算规则,这个规则是可以给CPU来使用的,CPU的硬件设计上也能达到这个指令集所要求的运算方式;包含两部分(汇编语言形式、二进制机器码格式),CPU执行的是二进制代码,汇编是给人能看懂的低级编程语言,每条汇编指令都有对应的机器码指令。(这里插一句题外话,其实指令集谁都可以设计一套,不一定就只有intel和arm等大厂能搞,但关键的问题在于别人先搞了一套指令集,而且推广的很好,其他很多东西都开始基于他这个指令集开始开发对应的编译器、操作系统、程序语言、应用程序了,先入为主了;你再弄一套,除非你的东西牛到别人无法超越,否则没人搭理你,大家都懒,不想在你这里在折腾一遍他们的东西了)
汇编器:完成汇编语言和二进制机器码(机器语言)的转换就叫做汇编器
机器语言:机器语言是机器指令的集合,是硬件CPU能读懂的机器指令
汇编语言:汇编语言就是我们人能读懂和理解的编程语言,汇编语言的主体是汇编指令,汇编指令和机器指令是一一对应的;
存储器:一般就是我们平常说的内存
编译器:就是讲高级编程语言转换成机器语言,GCC(支持c、c++、java等)
GCC编译流程分为4个步骤:
预处理(生成.i/.ii 文件) ---> 编译(生成汇编代码.s/.S 文件) ---> 汇编(生成二进制代码.o文件) ---> 链接(生成可执行文件)
高级编程语言:C语言、C++、java、go
CPU和内存如何沟通(通过总线进行物理硬件上的链接)?一般都是进行下面3类信息的交互:
1、内存地址(地址信息-->走 地址总线)
2、器件的选择、读或者写的命令(控制信息-->走 控制总线)
3、读或者写的数据(数据信息-->走 数据总线)
CPU的架构
CPU主要是由3大件组成:运算器、控制器、寄存器;
运算器:计算机中执行各种算术和逻辑运算操作的部件;运算器的基本操作包括加、减、乘、除四则运算,与、或、非、异或等逻辑操作,以及移位、比较和传送等操作,也称作算术逻辑部件;
控制器:就是负责对指令译码,并且发出为完成每条指令所要执行的各种操作的控制信号;
寄存器:是有限存储容量的高速存储部件,他们可用来暂存指令、数据和地址;寄存器有下列这些种类:
1)通用寄存器
2)段寄存器
3)指针寄存器
4)变址寄存器
5)指令指针寄存器
6)标志寄存器
来源:CSDN
作者:程序员打杂师
链接:https://blog.csdn.net/chyq112366/article/details/104017231