程序与CPU

时间:2022-03-14 19:20:09

CPU*有四大组件:

寄存器 控制器 运算器 时钟

寄存器:存取数值(存东西的)

控制器:负责将内存(寄存器)中的数据进行读入和写出(控制寄存器 协调者)

运算器:里面是逻辑运算单元,协助寄存器和控制器来达到运算的效果

时钟:时钟频率单位GHz。3.2GHz相当于32亿次每秒 1GHz=10亿次每秒 每算一次运行非常快

程序员最主要的注意:寄存器。其他三个我们接触不到

寄存器是必须要深入理解的,因为他是我们存储数据的地方,也是我们接受数据的地方

语言:

高级语言-->低级语言:汇编语言-->机器语言:CPU能直接读懂的语言

int白皮书:里面都是指令两千多页 每一个指令都有对应的汇编语言

高级语言:人类能读懂,指令更少 利用编译器让高级语言变成计算机能够读懂的语言

利用Hex打开任何程序都是二进制的数据

程序包含了两个方面:1.算法 2.数据

程序和CPU的关系

CPU中的寄存器:

累加寄存器 标志寄存器 程序计数器 基址寄存器 变址寄存器 通用寄存器 指令寄存器  栈寄存器

累加寄存器:主要记录计算之后的数据

标志寄存器:和内存无关 和内存一样 读取拷贝 记录CPU里面的状态 运算之后CPU中的值是否溢出是否为0

程序计数器:存储了下一条指令在我们内存中的地址用二进制储存 存储的是指定的地址

基址寄存器:是用来存储开始的寄存器

变址寄存器:存取基址寄存器的相对位置

基址寄存器加变址寄存器能够得到某一个内存地址

通用寄存器:什么都能用

指定寄存器:CPU内部来使用的程序员是是不能使用的

栈寄存器:记录栈的起始位置

CPU和内存是分开的但是连线是在一起的

CPU通过他的总线告诉主板上的控制器来读取内存的值

寄存器的运算速度是我们内存运算速度的几十甚至上百倍(效率高)相当于CPU中的内存

CPU指令集中有跳转指令:1.运算2.计数器的置位3.得出置位里的值来修改程序计数器