计算机概述系列目录
第二章 计算机概述(二)——构建CPU
文章目录
前言
学习计算机概述,目前参考资料来源《计算机科学速成课》(https://www.bilibili.com/video/BV1EW411u7th?p=3),以后逐步补充、更新。
本章主要从ALU、寄存器讲起,讲述如何构建一个简单的CPU。
一、计算机中的数学大脑ALU
ALU:算术逻辑单元(arithmetic and logic unit),是处理逻辑运算的组件,由算术单元和逻辑单位两部分构成。
(一)算术单元
算术单元用于处理所有的数学运算。
一般支持加法、带进位的加法、减法、带借位的减法、增量、减量、取反、直通(Pass Through,保持所有位不变,主要用于奇偶校验或者判断是否为负)。
一般不包含乘法、除法,因为乘除可由加减实现。(好的ALU含有专门的乘除处理器)
加法电路为例
- 半加器(仅两位相加,不含进位)
- 全加器(两位相加,含进位)
单位全加器
多位全加器(最后一个进位表示溢出)
- 超前进位加法器
(1)全加器的缺点:为防止溢出,需增加全加器的个数,但逻辑门的数量也会增加,同时由于每一次进位都需要花费时间,导致运算时间受影响,为此现代加法电路使用超前进位加法器。
(2)超前进位加法器基本原理:不等待进位,预先算出各位的进位,再分发给各个位,达到减省运算时间的效果。
(二)逻辑单元
逻辑单元处理逻辑操作,如逻辑运算、数值测试。
(三)ALU的抽象表示
ALU与外界交互的借口:输入、输出、操作代码(选择ALU要进行的操作,如加减乘除)、标志位(常用的有溢出标志位、0标志位、负数标志位)