第一课:程序与CPU
CPU
CPU:电脑重要组件之一,称为中央处理器。(由于含有很多寄存器,也可理解为寄存器的集合)
CPU四大组成部分:
- 寄存器:短暂的储存一些值(数据)的地方,相当于CPU当中的内存。
- 控制器:控制寄存器当中的数值进行读取、写出等。
- 运算器:协助寄存器、控制器进行运算。
- 时钟:计算频率(GHZ)。1GHZ等于10亿次每秒。
寄存器是软件工程师可接触到的。
寄存器门:由于CPU当中有很多的寄存器,这些寄存器又可称为寄存器门。
八大寄存器:
- 累加寄存器:储存计算之后的数据(加法)。
- 标志寄存器:记录CPU状态(包括运算之后CPU里的值是否溢出、为零),帮助进行逻辑判断。
- 程序计数器:存储下一条指令在内存当中的地址(顺序、条件分支和循环结构)。
- 基址寄存器:储存当前数据内存开始的地址。
- 变址寄存器:储存基址寄存器的相对位置。基址寄存器+变址寄存器=某一具体的内存地址。
- 通用寄存器:什么都可以用。
- 指令寄存器:CPU内部使用,程序员无法使用,储存当前指令。
- 栈寄存器:记录栈的起始地址。
程序计数器与累加寄存器和标志寄存器的应用:
程序被加载到内存中,CPU读取;运算器,控制器,寄存器依照时钟的计算频率,开始工作;累加寄存器存放累加后的数据;标志位寄存器 被置位 ,改写程序计数器的地址(是否跳转已经被决定)。
程序
程序=指令(算法)+数据
代码(高级语言)——>EXE(里面是二进制数据)——>加载(加载到内存当中)——>CPU(CPU调用寄存器等组件接受指令,执行程序)
运算中的程序储存在内存当中。
程序在编译完成之后,被系统加载到内存当中,CPU从内存中读取 指令和数据。
语言分类
- 机器语言:CPU可以读懂的语言(低级语言)。
- 高级语言:如C语言、Java等,人类可以读懂的语言。
- 汇编语言:和机器语言一一对应。