极客时间:深入浅出计算机组成原理【文章笔记 & 思考总结】

本篇博客是学习过程中的笔记、思考和总结。原文链接:https://time.geekbang.org/column/intro/100026001?tab=catalog

  • [开篇词 | 为什么你需要学习计算机组成原理?](#开篇词 | 为什么你需要学习计算机组成原理?)
  • [01 | 冯·诺依曼体系结构:计算机组成的金字塔](#01 | 冯·诺依曼体系结构:计算机组成的金字塔)

开篇词 | 为什么你需要学习计算机组成原理?

深入 "底层知识",是提升自己的根骨和资质。

底层原理知识在学习和工作中会带来复利效应。

计算机组成原理隔离硬件和软件,软件无需关心硬件就能直接操作硬件的接口。

计算机体系结构TUPIAN

Coursera 上北京大学的《计算机组成》开放课程。

图灵奖作者写的《计算机组成与设计:硬件 / 软件接口》

01 | 冯·诺依曼体系结构:计算机组成的金字塔

计算机的基本硬件组成

CPU:计算机所有计算。

内存:程序加载到内存才能运行,内存和CPU之间进行程序和数据交互。

主板:芯片组:控制数据传输流向。总线:控制数据传输速度。

电源:供电。

IO设备。

显卡:CPU +GPU 主要用于并行计算。

南桥:控制IO设备和CPU之间的通信。

北桥:连接 CPU、内存和显卡。

北桥已经移动到CPU内部。

冯 · 诺依曼体系结构

手机的SD卡:硬盘。

SoC:CPU、内存、网络通信、摄像头芯片,封装到一个芯片,嵌入到手机主板上。

冯 · 诺依曼体系结构(存储程序计算机):

可编程:各种门电路组合不固定。

存储:程序存储在计算机内存中,加载不同的程序解决不同的问题。

First Draft:First Draft of a Report on the EDVAC

  • 处理器单元:算术逻辑单元 + 处理器寄存器,完成算术和逻辑运算。
  • 控制器单元:指令寄存器 + 程序计数器,控制程序流程。
  • 现代计算机中的CPU:算术逻辑单元 + 控制器单元。
  • 内存:存储数据和指令。
  • 外存:硬盘。
  • 输入设备和输出设备。

任何一台计算机:运算器 + 控制器 + 存储器 + 输入设备 + 输出设备。

计算机程序抽象:输入设备读取输入信息,通过运算器和控制器执行存储器中的程序,输出结果到输出设备。

冯 · 诺依曼体系结构示意图TUPIAN

总结延伸

学习计算机组成原理就是学习和拆解冯 · 诺依曼体系结构。

控制器、运算器工作原理,CPU如何工作?如何设计?为什么这样设计?

学习内存的工作原理,基本电路,如何抽象给CPU和应用程序接口?

CPU和输入设备、输出设备如何打交道。

理解控制器、运算器、存储器、输入设备和输出设备从电路到软件接口如何运行?,为什么设计成这样?软件开发层面怎么尽可能用好?

推荐阅读

读读经典的论文,是从一个普通工程师迈向优秀工程师必经的一步。

对于工程师来说,直接读取英文论文的原文,既可以搞清楚、弄明白对应的设计及其背后的思路来源,还可以帮你破除对于论文或者核心技术的恐惧心理。

课后思考

图灵机和冯·诺依曼机是两种不同的计算机么?图灵机是一种什么样的计算机抽象呢?

相关推荐
Jimmy9 分钟前
深夜突袭:我们的午夜战场
笔记·产品·电子书
志尊宝2 小时前
AI原生前端开发(025):端侧AI实战项目:智能笔记助手
人工智能·笔记·ai-native
lll23526917792 小时前
线下多人发言对比与录音操作
笔记·智能手机
叼烟扛炮3 小时前
Linux 学习笔记(三十三):线程互斥——互斥锁(Mutex)与死锁
linux·运维·服务器·笔记·学习·1024程序员节
深圳老胡6 小时前
STM32C5A3ZG 网络调试总结:从启动失败到连续 Ping 稳定
笔记·stm32·单片机·代码规范
职豚求职小程序刷题6 小时前
宁德时代社招高岗晋升测评笔试改版了
笔记
CarIise6 小时前
JDBC 与数据库事务核心
数据库·笔记
鬼手点金6 小时前
KV Cache 未必是一次性的:可编辑、可组合的“笔记”
java·人工智能·笔记·学习·自动化·1024程序员节
摇滚侠6 小时前
《On Java 中文版 基础卷》阅读笔记 初始化和清理 08
java·开发语言·笔记
dire_7778 小时前
TH26027A开尔文夹子线缆问题导致同惠TH2822电桥测量不准
笔记