《计算机组成原理》是计算机及有关信息技术专业的一门核心基础课程。
在学习《计算机导论》、《程序设计基础》等课程、对计算机应用有基本掌握之后,便需要了解计算机的基本组成和工作原理。此外,对于后继课程,如《操作系统》等的学习,也需要在掌握计算机基本工作原理的基础上来进行。因此,从课程的地位来说,《计算机组成原理》在整个课程体系中起着承上启下的作用,是计算机及相关专业的主要课程之一。
以上介绍引用自《计算机组成原理》教材“引言”部分。
本文取材于学习时所做的课程笔记,引用资料部分另行标注。
本人水平有限,错误之处在所难免,欢迎读者批评、指正,我也会在适当时间进行修正与补充。
本章主要介绍了计算机的发展史和发展趋势,并对计算机的应用领域有一综合的描述。随后从硬件系统和软件系统的角度介绍了计算机系统的组成结构,着重介绍了五大功能部件以及操作系统的功能。并从层次结构的角度分析了计算机的层次结构。最后就如何衡量计算机的性能做了初步讨论。
【传送门】
本章主要讨论了计算机中数值数据的表示方法,介绍二、八、十、十六进制数据的表示和相互转化方法。接着了讨论有符号数据在计算机中的表示(原码、反码、补码和移码等)。同时介绍了非数值数据——字符、汉字、声音、图形、图像在计算机中的表示方法。最后讨论了计算机中常用的检验编码(奇偶校验码、交叉校验码、CRC校验码和海明校验码)。
【传送门】
本章讨论了在计算机内部完成各种基本逻辑运算和算术运算的方法。主要基于定点数和浮点数的运算方法,较详细地论证了各种运算方法的依据。在论证过程中又主要针对补码表示的机器数进行讨论。
【传送门】
现代计算机是依据存储程序的原理而设计的。计算机的工作步骤和处理对象都存放在存储器中。存储器采用什么样的存储介质、怎样组织存储系统,以及怎样控制存储器存取操作都是至关重要的。
【传送门】
指令是要求计算机执行某种操作的命令,一台计算机所有机器指令的集合就构成该机器的指令系统。
本章首先说明指令系统的发展与性能要求,然后介绍指令的一般格式。重点讲述寻址方式、指令的分类及功能。
此章节主要介绍机器如何处理指令,作为后一章节(CPU)的前置基础,了解即可,并非重点。
5.1.1 指令系统的发展
计算机程序由一系列机器指令组成。
指令:要计算机执行某种操作的命令。
【层次结构】
{ 微 指 令 : 程 序 级 命 令 , 属 于 硬 件 机 器 指 令 : 介 于 微 指 令 与 宏 指 令 之 间 ( 简 称 “ 指 令 ” ) , 每 一 条 指 令 可 完 成 一 个 独 立 算 术 运 算 或 逻 辑 运 算 操 作 宏 指 令 : 由 若 干 条 机 器 指 令 组 成 的 软 件 命 令 , 属 于 软 件 \left\{ \begin{array}{c} 微指令:程序级命令,属于硬件 \\ 机器指令:介于微指令与宏指令之间(简称“指令”),每一条指令可完成一个独立算术运算或逻辑运算操作 \\ 宏指令:由若干条机器指令组成的软件命令,属于软件 \end{array}\right. ⎩⎨⎧微指令:程序级命令,属于硬件 机器指令:介于微指令与宏指令之间(简称“指令”),每一条指令可完成一个独立算术运算或逻辑运算操作 宏指令:由若干条机器指令组成的软件命令,属于软件
5.1.2 指令系统的性能要求
{ ① 完 备 性 ② 有 效 性 ③ 规 整 性 ④ 兼 容 性 \left\{ \begin{array}{c} ① 完备性 \\ ② 有效性 \\ ③ 规整性 \\ ④ 兼容性 \end{array}\right. ⎩⎪⎪⎨⎪⎪⎧①完备性②有效性③规整性④兼容性
5.1.2 指令与计算机语言的关系
{ 高 级 语 言 ( 如 : C 、 F O R T R A N 等 ) 低 级 语 言 ( 二 进 制 机 器 语 言 、 汇 编 语 言 ) \left\{ \begin{array}{c} 高级语言(如:C、FORTRAN等) \\ 低级语言(二进制机器语言、汇编语言)\end{array}\right. {高级语言(如:C、FORTRAN等) 低级语言(二进制机器语言、汇编语言)
计算机能够直接识别和执行的唯一语言是二进制机器语言。
汇编语言依赖于计算机的硬件结构和指令系统。不同的机器有不同的指令,所以用汇编语言编写的程序不能在其他类型的机器上运行。
指令包含的信息及格式
一条指令必须包含:
{ ① 操 作 码 : 具 体 说 明 操 作 的 性 质 和 功 能 ② 操 作 数 地 址 : C P U 通 过 该 地 址 取 得 所 需 的 操 作 数 ③ 操 作 结 果 的 存 储 地 址 : 保 存 对 操 作 数 处 理 产 生 的 结 果 ④ 下 一 条 指 令 的 地 址 \left\{ \begin{array}{c} ① 操作码:具体说明操作的性质和功能 \\ ② 操作数地址:CPU通过该地址取得所需的操作数 \\ ③操作结果的存储地址:保存对操作数处理产生的结果 \\ ④ 下一条指令的地址 \end{array}\right. ⎩⎪⎪⎨⎪⎪⎧①操作码:具体说明操作的性质和功能 ②操作数地址:CPU通过该地址取得所需的操作数 ③操作结果的存储地址:保存对操作数处理产生的结果④下一条指令的地址
形成操作数的有效地址方法称为操作数的寻址方式。
{ ① 隐 含 寻 址 ② 立 即 寻 址 ③ 直 接 寻 址 ④ 间 接 寻 址 ⑤ 寄 存 器 寻 址 和 寄 存 器 间 接 寻 址 ⑥ 相 对 寻 址 ⑦ 基 地 寻 址 ⑧ 变 址 寻 址 ⑨ 块 寻 址 ⑩ 段 寻 址 \left\{ \begin{array}{c} ① 隐含寻址 \\ ② 立即寻址 \\ ③ 直接寻址 \\ ④ 间接寻址 \\ ⑤ 寄存器寻址和寄存器间接寻址 \\ ⑥ 相对寻址 \\ ⑦ 基地寻址 \\ ⑧ 变址寻址 \\ ⑨ 块寻址 \\ ⑩ 段寻址 \end{array}\right. ⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧①隐含寻址 ②立即寻址 ③直接寻址 ④间接寻址 ⑤寄存器寻址和寄存器间接寻址⑥相对寻址 ⑦基地寻址 ⑧变址寻址 ⑨块寻址 ⑩段寻址
指令的分类
{ ① 数 据 传 送 指 令 ② 算 术 逻 辑 运 算 指 令 ③ 移 位 操 作 指 令 ④ 浮 点 运 算 指 令 ⑤ 十 进 制 运 算 指 令 ⑥ 字 符 串 处 理 指 令 ⑦ 转 移 类 指 令 ⑧ 堆 栈 及 堆 栈 操 作 指 令 ⑨ 输 入 输 出 ( I / O ) 指 令 ⑩ 特 权 指 令 ⑪ 其 他 指 令 \left\{ \begin{array}{c} ① 数据传送指令 \\ ② 算术逻辑运算指令 \\ ③ 移位操作指令 \\ ④ 浮点运算指令 \\ ⑤ 十进制运算指令 \\ ⑥ 字符串处理指令 \\ ⑦ 转移类指令 \\ ⑧ 堆栈及堆栈操作指令 \\ ⑨ 输入输出(I/O)指令 \\ ⑩ 特权指令 \\ ⑪ 其他指令 \end{array}\right. ⎩⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎨⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎪⎧①数据传送指令 ②算术逻辑运算指令 ③移位操作指令 ④浮点运算指令 ⑤十进制运算指令 ⑥字符串处理指令 ⑦转移类指令 ⑧堆栈及堆栈操作指令 ⑨输入输出(I/O)指令⑩特权指令 ⑪其他指令
计算机的硬件由控制器、运算器、存储器、输入设备和输出设备五部分组成。随着集成电路的出现及其集成度的提高,设计者将控制器和运算器集成在一片集成电路上,称作微处理器,通常称之为中央处理器(Central Processing Unit,简称CPU)。CPU是计算机的核心部件。本章介绍CPU的功能、结构及工作原理。
【传送门】
总线技术是计算机系统的一个重要技术,总线的结构直接影响着计算机的性能,它是承载计算机系统各个部件之间信息传递的桥梁。
【传送门】
计算机的外围设备主要包括输入设备、输出设备、外部存储设备,以及数据通信设备和过程控制设备。它们的功能是在计算机和其他设备之间,以及计算机与计算机之间提供联系。
【传送门】
计算机系统输入/输入(I/O)的种类日益增多,使得输入/输出设备在计算机系统中的影响日益显著。
【传送门】
(已完结 2021.05.23)