目录深入浅出计算机系统层次结构与硬件组成前言为什么你要搞懂这个知识点一、宏观视角计算机系统由什么组成一个容易被忽略的重要思想二、历史基石冯·诺依曼机什么叫“存储程序”冯·诺依曼机的五大特点考研必背三、具体实现现代计算机的功能部件一中央处理器CPU——计算机的“大脑”数据通路——负责“干活的”控制单元——负责“发号施令的”二存储器——计算机的“记忆中心”内存储器内存外存储器外存三外部设备与设备控制器——计算机的“感官”和“手脚”一个重要概念外设 物理部件 设备控制器四总线——计算机的“神经网络”一个典型的多总线系统结构四、总结一条线串起所有知识点附考研/考试重点速记深入浅出计算机系统层次结构与硬件组成一篇讲透计算机系统长什么样各部分如何协同工作前言为什么你要搞懂这个知识点无论你是考研学生、计算机专业初学者还是想系统了解计算机底层的爱好者“计算机系统层次结构与硬件组成”都是绕不开的第一道门槛。它不是一堆枯燥概念的堆砌而是给你一张计算机的解剖图——告诉你这台机器由哪些部分组成每个部分叫什么、做什么以及它们如何配合工作。掌握了这个框架后面学CPU工作原理、指令系统、存储体系都有了落脚点。今天我就带你从头到尾、里里外外把计算机的“骨架”讲清楚。一、宏观视角计算机系统由什么组成一个完整的计算机系统从来不只是那个主机箱。它由两大部分构成硬件Hardware看得见摸得着的物理装置。CPU芯片、内存条、硬盘、显示器、键盘、主板……这些都属于硬件。软件Software运行在硬件之上的程序、数据和文档。操作系统、办公软件、游戏、你写的代码……都属于软件。一个容易被忽略的重要思想硬件和软件不是各干各的。它们之间有一种协同关系硬件提供“能力边界”软件决定“效率上限”。CPU支持一百种指令硬件能力但程序能不能用好这些指令、让系统跑得快取决于软件写得怎么样。因此计算机系统设计时必须回答一个问题哪些功能由硬件实现哪些由软件实现原则很简单如果某个功能被频繁使用并且用硬件实现成本不高那就交给硬件——因为快。反之如果功能不常用或者硬件实现成本太高那就交给软件。举个例子加法运算CPU内部直接用算术逻辑单元ALU这个硬件电路来完成而不是写一段软件程序来模拟加法。因为加法太常用了硬件做又快又省电。这就是软硬件功能边界的划分是整个计算机设计哲学的基础。二、历史基石冯·诺依曼机讲完宏观组成下一个问题是现代计算机的这个硬件框架是谁最早定下来的答案是冯·诺依曼。20世纪40年代冯·诺依曼在研究EDVAC计算机时提出了一种全新的设计思想——“存储程序”。什么叫“存储程序”在冯·诺依曼之前计算机的程序是“硬接”的——想改变程序就得重新插拔线路、重新接线非常麻烦。冯·诺依曼的突破性想法是把程序也当作数据一样事先存入存储器里。计算机启动后自动逐条取出指令并执行直到程序结束。整个过程不需要人工干预。这就是“存储程序”的核心——程序存进去机器自己跑。今天所有计算机手机、笔记本、服务器都基于这个思想可以说它是现代计算机的“奠基石”。冯·诺依曼机的五大特点考研必背基于“存储程序”思想冯·诺依曼机有五个核心特征特点说明① 存储程序程序和数据预先存入主存计算机自动、连续地取指和执行无需人工干预② 五大部件运算器、控制器、存储器、输入设备、输出设备③ 指令与数据同存指令和数据在主存中以相同形式存放都是二进制仅凭内容无法区分但计算机能识别它们④ 二进制编码指令和数据都采用二进制编码表示⑤ 指令格式指令由操作码和地址码组成操作码指明“干什么”地址码指明“操作数在哪”你可以这样一句话记牢冯·诺依曼机 存储程序 五大部件 二进制 指令格式。三、具体实现现代计算机的功能部件有了冯·诺依曼的蓝图现代计算机在实际制造时进行了集成和优化。现代计算机将运算器、控制器和各类寄存器高度集成在一块芯片上这块芯片就是中央处理器Central Processing UnitCPU。完整的计算机硬件系统主要包括以下部件中央处理器CPU存储器主存 外存外部设备 设备控制器总线连接所有部件的公共通路下面我逐一展开讲解。一中央处理器CPU——计算机的“大脑”CPU是整个计算机系统中负责指令执行的核心部件。它的传统组成是运算器 控制器。在现代处理器中这两部分被更系统地组织为“数据通路 控制单元”。数据通路——负责“干活的”数据通路是执行实际运算的硬件通路它包含算术逻辑单元ALU负责所有的算术运算加减乘除和逻辑运算与或非、比较等。它是计算的“实际执行者”。通用寄存器组位于CPU内部访问速度极快用来为ALU提供操作数并暂存运算结果。其他组件多路选择器、内部互连通路等负责在部件间高效传送数据。打个比方ALU就像工厂里的机床寄存器就像机床旁边的工作台操作材料放工作台上机床加工结果再放回工作台。控制单元——负责“发号施令的”控制单元是CPU的“指挥官”。它的工作流程是从存储器中取出指令对指令进行译码翻译成控制信号根据指令语义生成一系列精确的控制信号指挥数据通路中的各个部件在正确的时间做正确的事。例如执行一条加法指令时控制单元要选择源寄存器 → 配置ALU为加法模式 → 启动运算 → 在正确的时序下把结果写回目标寄存器。控制单元是指挥官数据通路是士兵。没有指挥官的指令士兵不知道做什么没有士兵的执行指挥官的指令只是一纸空文。二存储器——计算机的“记忆中心”存储器用来存放程序和数据。按访问特性分为内存储器和外存储器。内存储器内存主存是CPU直接访问的工作存储器存放当前正在执行的程序和数据。它是冯·诺依曼结构中核心的工作存储器。高速缓存Cache位于CPU和主存之间容量小但速度极快用来缓解CPU和主存之间的速度差距。现代内存实际上 主存 Cache。主存是“工作台”CPU在工作台上处理当前任务。外存储器外存包括磁盘、固态硬盘SSD、磁带、光盘等。作用有两个一是长期存储断电后数据不丢失二是与主存交换数据比如你把游戏从硬盘加载到内存里才能玩。外存是“仓库”工作台不够用时从仓库调货暂时不用的存回仓库。三外部设备与设备控制器——计算机的“感官”和“手脚”外部设备I/O设备是计算机与外界交互的渠道比如键盘、鼠标、显示器、打印机、扫描仪等。一个重要概念外设 物理部件 设备控制器物理部件负责实际的输入/输出动作。比如键盘上的按键、打印机的打印头、显示器的屏幕。设备控制器负责与主机通信并控制物理部件工作。它也叫I/O控制器或I/O接口。常见的设备控制器显卡显示控制器控制显示器显示图像网卡网络控制器控制网络通信USB控制器控制所有USB接口设备所以当你把键盘插到电脑上实际插入的是“键盘接口”这个接口就是设备控制器它负责协调键盘和主机之间的通信。四总线——计算机的“神经网络”CPU、主存、I/O接口这些部件不是孤立存在的它们需要互相传送数据和指令。总线就是它们之间传输信息的公共通路。打个比方总线就像城市里的主干道数据就像车流各个部件通过这条主干道互相通信。一个典型的多总线系统结构参考图1.1现代计算机的典型总线结构如下┌─────────────────────────┐ │ CPU │ │ ┌─────┐ ┌──────────┐ │ │ │控制器│ │寄存器堆 │ │ │ └─────┘ │ ALU │ │ │ └──────────┘ │ └───────────┬─────────────┘ │ 处理器总线 ▼ ┌─────────────────────────┐ │ I/O 桥接器 │────── 存储器总线 ────► 主存储器 │ 北桥芯片 │ └───────────┬─────────────┘ │ I/O总线 ┌────────────┼────────────┐ ▼ ▼ ▼ ┌─────────┐ ┌─────────┐ ┌─────────┐ │USB │ │显卡 │ │磁盘 │ │控制器 │ │适配器 │ │控制器 │ └─────────┘ └─────────┘ └─────────┘ │ │ │ ▼ ▼ ▼ 鼠标键盘 显示器 磁盘各层解释CPU通过处理器总线连接到I/O桥接器。主存通过存储器总线连接到I/O桥接器。I/O桥接器通过I/O总线连接各种外设的控制器USB控制器、显卡、磁盘控制器等。各类外设通过各自的控制器接入I/O总线。按照功能划分ALU属于数据处理部件——负责运算主存和磁盘属于存储部件——分别承担临时存储和长期存储总线、桥接器、接口、控制器共同构成互连结构——负责全系统的数据传输与协调。四、总结一条线串起所有知识点现在我们把整篇文章串起来用一段话讲清楚整个框架一个完整的计算机系统由硬件和软件组成。硬件是物理基础软件利用硬件能力来完成任务。两者之间要根据“高频功能硬件实现”的原则划分边界。冯·诺依曼机提出了“存储程序”的思想——把程序存入主存机器自动执行——成为现代计算机的设计蓝图。按这个蓝图硬件系统由四大部件构成CPU负责执行指令内部包含数据通路和控制单元、存储器主存作为工作台外存作为仓库、外部设备加控制器负责输入/输出控制器负责与主机通信、总线作为公共通路连接所有部件。四个部件协同工作构成一个完整的计算机硬件系统。附考研/考试重点速记如果你是为了考试下面这些是最高频的考点考点一句话记忆冯·诺依曼五大特点存储程序、五大部件、指令数据同存、二进制、指令格式操作码地址码CPU组成数据通路ALU寄存器 控制单元存储器层次主存工作台 Cache加速 外存仓库外设 什么物理部件 设备控制器I/O接口总线作用公共通信通路连接CPU、主存、I/O软硬件边界高频低成本 → 硬件实现希望这篇博客能帮你真正理解计算机的“骨架”。如果你觉得有用欢迎收藏或分享给需要的朋友。下一篇我们可以深入讲讲CPU是如何执行一条指令的敬请期待
【计算机组成原理】深入浅出计算机系统层次结构与硬件组成
目录深入浅出计算机系统层次结构与硬件组成前言为什么你要搞懂这个知识点一、宏观视角计算机系统由什么组成一个容易被忽略的重要思想二、历史基石冯·诺依曼机什么叫“存储程序”冯·诺依曼机的五大特点考研必背三、具体实现现代计算机的功能部件一中央处理器CPU——计算机的“大脑”数据通路——负责“干活的”控制单元——负责“发号施令的”二存储器——计算机的“记忆中心”内存储器内存外存储器外存三外部设备与设备控制器——计算机的“感官”和“手脚”一个重要概念外设 物理部件 设备控制器四总线——计算机的“神经网络”一个典型的多总线系统结构四、总结一条线串起所有知识点附考研/考试重点速记深入浅出计算机系统层次结构与硬件组成一篇讲透计算机系统长什么样各部分如何协同工作前言为什么你要搞懂这个知识点无论你是考研学生、计算机专业初学者还是想系统了解计算机底层的爱好者“计算机系统层次结构与硬件组成”都是绕不开的第一道门槛。它不是一堆枯燥概念的堆砌而是给你一张计算机的解剖图——告诉你这台机器由哪些部分组成每个部分叫什么、做什么以及它们如何配合工作。掌握了这个框架后面学CPU工作原理、指令系统、存储体系都有了落脚点。今天我就带你从头到尾、里里外外把计算机的“骨架”讲清楚。一、宏观视角计算机系统由什么组成一个完整的计算机系统从来不只是那个主机箱。它由两大部分构成硬件Hardware看得见摸得着的物理装置。CPU芯片、内存条、硬盘、显示器、键盘、主板……这些都属于硬件。软件Software运行在硬件之上的程序、数据和文档。操作系统、办公软件、游戏、你写的代码……都属于软件。一个容易被忽略的重要思想硬件和软件不是各干各的。它们之间有一种协同关系硬件提供“能力边界”软件决定“效率上限”。CPU支持一百种指令硬件能力但程序能不能用好这些指令、让系统跑得快取决于软件写得怎么样。因此计算机系统设计时必须回答一个问题哪些功能由硬件实现哪些由软件实现原则很简单如果某个功能被频繁使用并且用硬件实现成本不高那就交给硬件——因为快。反之如果功能不常用或者硬件实现成本太高那就交给软件。举个例子加法运算CPU内部直接用算术逻辑单元ALU这个硬件电路来完成而不是写一段软件程序来模拟加法。因为加法太常用了硬件做又快又省电。这就是软硬件功能边界的划分是整个计算机设计哲学的基础。二、历史基石冯·诺依曼机讲完宏观组成下一个问题是现代计算机的这个硬件框架是谁最早定下来的答案是冯·诺依曼。20世纪40年代冯·诺依曼在研究EDVAC计算机时提出了一种全新的设计思想——“存储程序”。什么叫“存储程序”在冯·诺依曼之前计算机的程序是“硬接”的——想改变程序就得重新插拔线路、重新接线非常麻烦。冯·诺依曼的突破性想法是把程序也当作数据一样事先存入存储器里。计算机启动后自动逐条取出指令并执行直到程序结束。整个过程不需要人工干预。这就是“存储程序”的核心——程序存进去机器自己跑。今天所有计算机手机、笔记本、服务器都基于这个思想可以说它是现代计算机的“奠基石”。冯·诺依曼机的五大特点考研必背基于“存储程序”思想冯·诺依曼机有五个核心特征特点说明① 存储程序程序和数据预先存入主存计算机自动、连续地取指和执行无需人工干预② 五大部件运算器、控制器、存储器、输入设备、输出设备③ 指令与数据同存指令和数据在主存中以相同形式存放都是二进制仅凭内容无法区分但计算机能识别它们④ 二进制编码指令和数据都采用二进制编码表示⑤ 指令格式指令由操作码和地址码组成操作码指明“干什么”地址码指明“操作数在哪”你可以这样一句话记牢冯·诺依曼机 存储程序 五大部件 二进制 指令格式。三、具体实现现代计算机的功能部件有了冯·诺依曼的蓝图现代计算机在实际制造时进行了集成和优化。现代计算机将运算器、控制器和各类寄存器高度集成在一块芯片上这块芯片就是中央处理器Central Processing UnitCPU。完整的计算机硬件系统主要包括以下部件中央处理器CPU存储器主存 外存外部设备 设备控制器总线连接所有部件的公共通路下面我逐一展开讲解。一中央处理器CPU——计算机的“大脑”CPU是整个计算机系统中负责指令执行的核心部件。它的传统组成是运算器 控制器。在现代处理器中这两部分被更系统地组织为“数据通路 控制单元”。数据通路——负责“干活的”数据通路是执行实际运算的硬件通路它包含算术逻辑单元ALU负责所有的算术运算加减乘除和逻辑运算与或非、比较等。它是计算的“实际执行者”。通用寄存器组位于CPU内部访问速度极快用来为ALU提供操作数并暂存运算结果。其他组件多路选择器、内部互连通路等负责在部件间高效传送数据。打个比方ALU就像工厂里的机床寄存器就像机床旁边的工作台操作材料放工作台上机床加工结果再放回工作台。控制单元——负责“发号施令的”控制单元是CPU的“指挥官”。它的工作流程是从存储器中取出指令对指令进行译码翻译成控制信号根据指令语义生成一系列精确的控制信号指挥数据通路中的各个部件在正确的时间做正确的事。例如执行一条加法指令时控制单元要选择源寄存器 → 配置ALU为加法模式 → 启动运算 → 在正确的时序下把结果写回目标寄存器。控制单元是指挥官数据通路是士兵。没有指挥官的指令士兵不知道做什么没有士兵的执行指挥官的指令只是一纸空文。二存储器——计算机的“记忆中心”存储器用来存放程序和数据。按访问特性分为内存储器和外存储器。内存储器内存主存是CPU直接访问的工作存储器存放当前正在执行的程序和数据。它是冯·诺依曼结构中核心的工作存储器。高速缓存Cache位于CPU和主存之间容量小但速度极快用来缓解CPU和主存之间的速度差距。现代内存实际上 主存 Cache。主存是“工作台”CPU在工作台上处理当前任务。外存储器外存包括磁盘、固态硬盘SSD、磁带、光盘等。作用有两个一是长期存储断电后数据不丢失二是与主存交换数据比如你把游戏从硬盘加载到内存里才能玩。外存是“仓库”工作台不够用时从仓库调货暂时不用的存回仓库。三外部设备与设备控制器——计算机的“感官”和“手脚”外部设备I/O设备是计算机与外界交互的渠道比如键盘、鼠标、显示器、打印机、扫描仪等。一个重要概念外设 物理部件 设备控制器物理部件负责实际的输入/输出动作。比如键盘上的按键、打印机的打印头、显示器的屏幕。设备控制器负责与主机通信并控制物理部件工作。它也叫I/O控制器或I/O接口。常见的设备控制器显卡显示控制器控制显示器显示图像网卡网络控制器控制网络通信USB控制器控制所有USB接口设备所以当你把键盘插到电脑上实际插入的是“键盘接口”这个接口就是设备控制器它负责协调键盘和主机之间的通信。四总线——计算机的“神经网络”CPU、主存、I/O接口这些部件不是孤立存在的它们需要互相传送数据和指令。总线就是它们之间传输信息的公共通路。打个比方总线就像城市里的主干道数据就像车流各个部件通过这条主干道互相通信。一个典型的多总线系统结构参考图1.1现代计算机的典型总线结构如下┌─────────────────────────┐ │ CPU │ │ ┌─────┐ ┌──────────┐ │ │ │控制器│ │寄存器堆 │ │ │ └─────┘ │ ALU │ │ │ └──────────┘ │ └───────────┬─────────────┘ │ 处理器总线 ▼ ┌─────────────────────────┐ │ I/O 桥接器 │────── 存储器总线 ────► 主存储器 │ 北桥芯片 │ └───────────┬─────────────┘ │ I/O总线 ┌────────────┼────────────┐ ▼ ▼ ▼ ┌─────────┐ ┌─────────┐ ┌─────────┐ │USB │ │显卡 │ │磁盘 │ │控制器 │ │适配器 │ │控制器 │ └─────────┘ └─────────┘ └─────────┘ │ │ │ ▼ ▼ ▼ 鼠标键盘 显示器 磁盘各层解释CPU通过处理器总线连接到I/O桥接器。主存通过存储器总线连接到I/O桥接器。I/O桥接器通过I/O总线连接各种外设的控制器USB控制器、显卡、磁盘控制器等。各类外设通过各自的控制器接入I/O总线。按照功能划分ALU属于数据处理部件——负责运算主存和磁盘属于存储部件——分别承担临时存储和长期存储总线、桥接器、接口、控制器共同构成互连结构——负责全系统的数据传输与协调。四、总结一条线串起所有知识点现在我们把整篇文章串起来用一段话讲清楚整个框架一个完整的计算机系统由硬件和软件组成。硬件是物理基础软件利用硬件能力来完成任务。两者之间要根据“高频功能硬件实现”的原则划分边界。冯·诺依曼机提出了“存储程序”的思想——把程序存入主存机器自动执行——成为现代计算机的设计蓝图。按这个蓝图硬件系统由四大部件构成CPU负责执行指令内部包含数据通路和控制单元、存储器主存作为工作台外存作为仓库、外部设备加控制器负责输入/输出控制器负责与主机通信、总线作为公共通路连接所有部件。四个部件协同工作构成一个完整的计算机硬件系统。附考研/考试重点速记如果你是为了考试下面这些是最高频的考点考点一句话记忆冯·诺依曼五大特点存储程序、五大部件、指令数据同存、二进制、指令格式操作码地址码CPU组成数据通路ALU寄存器 控制单元存储器层次主存工作台 Cache加速 外存仓库外设 什么物理部件 设备控制器I/O接口总线作用公共通信通路连接CPU、主存、I/O软硬件边界高频低成本 → 硬件实现希望这篇博客能帮你真正理解计算机的“骨架”。如果你觉得有用欢迎收藏或分享给需要的朋友。下一篇我们可以深入讲讲CPU是如何执行一条指令的敬请期待