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

本篇博客是学习过程中的笔记、思考和总结。原文链接: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和输入设备、输出设备如何打交道。

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

推荐阅读

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

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

课后思考

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

相关推荐
charlie1145141913 小时前
CSS笔记4:CSS:列表、边框、表格、背景、鼠标与常用长度单位
css·笔记·学习·css3·教程
tjsoft4 小时前
汇通家具管理软件 1.0 试用笔记
笔记
卡提西亚5 小时前
C++笔记-10-循环语句
c++·笔记·算法
Cathy Bryant6 小时前
概率论直觉(一):大数定律
笔记·考研·数学建模
摇滚侠6 小时前
Spring Boot3零基础教程,Reactive-Stream 四大核心组件,笔记106
java·spring boot·笔记
✎ ﹏梦醒͜ღ҉繁华落℘7 小时前
FreeRTOS学习笔记(应用)-- 各种 信号量的应用场景
笔记·学习
星星火柴9367 小时前
笔记 | C++面向对象高级开发
开发语言·c++·笔记·学习
BeingACoder7 小时前
【SAA】SpringAI Alibaba学习笔记(一):SSE与WS的区别以及如何注入多个AI模型
java·笔记·学习·saa·springai
安全不再安全8 小时前
免杀技巧 - 早鸟注入详细学习笔记
linux·windows·笔记·学习·测试工具·web安全·网络安全
LBuffer9 小时前
破解入门学习笔记题三十八
笔记·学习