随感

戏子无情 提交于 2020-01-17 17:01:05

处理器架构:一般就是指的是处理器的硬件架构,称为微架构,就是一堆硬件电路,用来实现指令集所规定的操作运算;看了这个你就理解其实硬件本质上就是为了某种规则服务的;如果木头这个材料有两种状态的转换,我们也可以用木头来做硬件材料来实现一些运算逻辑;

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)标志寄存器

 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!