计算机由三个子系统组成:中央处理单元(CPU)、主存储器、输入/输出子系统。
一、中央处理单元(CPU): 用于数据的运算由三部分组成:算术逻辑单元(ALU)、控制单元、寄存器组。
1、算术逻辑单元(ALU)对数据进行逻辑、移位、算术运算,寄存器有累加器(ACC)。
2、寄存器是用来存放临时数据的高速独立的存储单元,通常由触发器组成,包括数据寄存器,指令寄存器(IR),程序寄存器(PC)。
3、控制单元控制各个子系统的操作。
二、主存储器:是存储单位的集合,每一个存储单元用地址作为唯一标识,以字为单位在内存中传入传出。
字和字节
1、地址空间:内存地址用无符号二进制整数定义。
如内存为64K(2¹⁶)的32位机(字长为4字节):
需要2¹⁶÷4=2¹⁴个地址来标识每个字,即需要14位来确定地址
2、存储器的类型
- RAM(随机存取存储器):即存取速度与数据存放位置无关,断电信息自动删除(易失性)。
静态RAM(SRAM)用触发器门电路来保存数据(位),速度较快,较贵;
动态RAM(DRAM)使用电容器,电容器会随时间漏掉一部分电,所以内存单元需要周期性刷新,较慢,较便宜。
- ROM(只读存储器):内容由制造商写进去,用户只能读不能写(非易失性)。
可编程只读存储器(PROM);
可擦除可编程只读存储器(EPROM):需拆下来擦除再安装;
电可擦除可编程只读存储器(EEPROM):无须拆下。
3、存储器结构:速度,价钱和容量不能同时满足。分层结构解决高速度,大容量,低价格之间的矛盾;使用高速缓存寄存器(Cache)解决CPU和内存速度不匹配问题。
三、输入/输出子系统
非存储设备:键盘,监视器,打印机等。
存储设备:分为磁介质和光介质(辅存)。
- 磁盘:是随机存取设备,由一张张磁盘叠加,每个盘面被分为磁道和扇区,以扇区作为某时可读取的最小存储区域。
- 磁带:顺序存储设备,比磁盘慢但便宜。
- 只读光盘(CD-ROM):在塑料层用高能红外激光刻录位模式,产生的一系列小坑(和没坑的地方区分0,1)用聚碳酸酯树脂填满,再次光扫描时读出数据。用于大批量生产。
- 可刻录光盘(CD-R):用染料层模拟坑层,适用于制作档案文件和备份。
- 可重写光盘(CD-RW):用合金模拟坑(合金的晶体态和无定型态)。
- 数字多功能光盘(DVD):用红激光代替红外激光,坑更小,存储层可到2层,容量大增。
四、子系统的互联
1、cpu和存储器的连接
- 数据总线:每一根线每次传送1位的数据,如32位机需要32位数据总线;
- 地址总线:允许访问存储器中的某个字,如存储容量为2ⁿ个字则需要n根地址总线;
- 控制总线:负责在中央处理器CPU和内存之间传送信息,如计算机有2ᵐ条控制命令则需要m条控制总线。
2、I/O设备的连接
CPU和内存是电子设备。而I/O设备都是机电、磁性或光学设备,速度慢得多,必须需要中介设备来处理差异,每一个I/O设备都有一个特定的控制器即接口。
- 串行控制器只有一根数据线连接到总线上,并行控制器有多根数据线连接到总线上故可以同时传输多位。
- 小型计算机系统接口(SCSI):8、16或32位的并行接口,以菊花链连接,连接链两端必须有终结器每个设备有唯一ID。
- 火线:高速串行接口,数据以数据包形式传送,支持菊花链和或树形连接多达63个设备。
- 通用串行总线(USB):数据以包形式传输。USB-2提供高中低档传送速率,允许多达127个设备组成树状拓扑结构连接到USB控制器上(集线器作为中间节点,设备作为末端节点)。
- 高清晰度多媒体接口(HDMI):用来从一个设备向另一兼容设备(显示器、投影器、电视机等)传输视频、数字音像数据。
3、I/O设备的寻址
- I/O独立寻址:读写内存的指令和读写I/O设备的指令是完全不同的;
- I/O存储器映射寻址:将I/O控制器中每个寄存器都看做内存中的一部分即占用内存,适应于内存的指令同样适应于I/O设备。
五、程序执行
1、机器周期
- 取指令:控制单元命令系统将下一条需要执行的指令复制到CPU的指令寄存器中,程序计数器中保存被复制指令的下一条指令地址。
- 译码:控制单元对指令寄存器中的指令译码产生一系列可执行的二进制代码。
- 执行:控制单元发送任务。
2、输入/输出操作
同步I/O设备和CPU运行速度
- 程序控制I/O:CPU遇到I/O指令时停止,不断询问I/O设备状态,等待直到数据传输完成。
- 中断控制I/O:CPU遇到I/O指令时通知设备准备传输,设备准备好后中断CPU,数据传输完成后中断CPU;在CPU未被中断时可做其他工作。
- 直接存储器存取(DMA):用于在高速设备间传输大量数据块(不需要经过CPU的数据)。用DMA控制器(有寄存器)承担CPU一部分功能。CPU遇到I/O指令时给DMA控制器发内存起始地址,传输字节数等,当设备准备好数据传输时,DMA中断CPU,CPU让出数据总线控制,由DMA控制器控制数据传输。
六、不同的体系结构
- 复杂指令集计算机(CISC):使用大量的,包括复杂的指令,每一项任务都有对应的指令,微内存保存每个复杂指令的一系列操作,CPU只执行简单操作。
- 精简指令集计算机(RISC):用少量的指令完成简单操作,复杂指令用简单指令模拟。
- 流水线:计算机在周期取指令,译码,执行过程中,在译码时可取下一条指令的流水线机制。
- 并行处理:一个计算机有多个控制单元,多个算术逻辑单元,多个内存单元。如SISD→ 1控制,1逻辑,1内存,单指令流,单数据流; SIMD→1控制,多逻辑,1内存,单指令流,多数据流; MISD→多指令流,单数据流,未被实现过; MIMD→各单元有多套,多指令流多数据流。