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

2023-09-18 21:34:20

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

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

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

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

计算机体系结构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和输入设备、输出设备如何打交道。

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

推荐阅读

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

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

课后思考

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

更多推荐

相机HAL

相机HAL1、概览实现HAL2、相机HAL2.1AIDL相机HAL2.2相机HAL3功能2.3CameraHAL1概览相机HAL相机实现HALandroid12-release1、概览实现HALHAL位于相机驱动程序和更高级别的Android框架之间,它定义您必须实现的接口,以便应用可以正确地操作相机硬件。相机HAL的

从入局到破局:商家怎样挖掘视频号的新增量?

主笔:yolo出品:增长黑盒研究组在上一篇研究报告中,我们站在消费者的角度和市场大盘对视频号进行了分析,某种程度上是对于“终局”的展望:用户行为的变化、人群结构的变化等因素下,塑造除了视频号差异化的商业价值,为品牌提供了一个与用户建立深度关系的场景,因而存在可观的新增量空间。在本篇报告中,我们将视角切换回品牌和商家,看

什么是 AirServer?Mac专用投屏工具AirServer 7 .27 for Mac中文破解版百度网盘下载

AirServer7.27forMac中文免费激活版是一款Mac专用投屏工具,能够通过本地网络将音频、照片、视频以及支持AirPlay功能的第三方App,从iOS设备无线传送到Mac电脑的屏幕上,把Mac变成一个AirPlay终端的实用工具。目前最新的AirServer7.2.7版本,支持macOSHighSierra

NestJS 中的 gRPC 微服务通信

想象一下,你回家过节,你的家人决定聚会。而不是让一个人做所有的烹饪,每个人都同意带上他们擅长制作的特色菜。目标是通过组合所有这些菜肴来制作一顿完整的饭菜。你同意做鸡肉炒饭,你哥哥做甜点蛋糕,妹妹做沙拉。每个菜代表一个具有特定功能或用途的微服务。例如,炒饭代表一道丰盛的主菜;沙拉代表新鲜健康的配菜,蛋糕代表甜蜜甜点。在微

3年测试经验,测试用例应该达到这个水平才合格

状态迁移法主要关注在测试状态转移的正确性上面。对于一个有限状态机,通过测试验证其在给定的条件内是否能够产生需要的状态变化,有没有不可达的状态和非法的状态,是否可能产生非法的状态转移等。通过构造能导致状态迁移的事件,来测试状态之间的转换。1、应用范围状态迁移法的思想是提供将多个状态的转换串起来进行测试的思路。该方法适合功

设计模式七大原则

设计模式七大原则什么是设计模式呢?简单理解就是我们在开发软件的期间面临着各种各样的问题,对这种普遍存在(反复出现)的问题提出的解决方案。设计模式分为三种类型,共23种1)创建型模式:单例模式、抽象工厂模式、原型模式、建造者模式、工厂模式。2)结构型模式:适配器模式、桥接模式、装饰模式、组合模式、外观模式、享元模式、代理

微服务: xxl-job的安装(docker),使用及springboot整合[完整版详解]

全文目录,一篇结束1.前言简介1.1xxl-job的作用及优势1.1.1xxl-job作用1.1.2xxl-job优势1.2资源位置及使用说明1.2.1文档说明1.2.2docker镜像位置2.安装配置使用xxl-job(两种)2.0公共操作:sql脚本(2.2免下载也用)2.1方法一:源码搭建方式2.1.1源码下载位

华为云云耀云服务器L实例评测|Python Selenium加Chrome Driver构建UI自动化测试实践

🏆作者简介,黑夜开发者,CSDN领军人物,全栈领域优质创作者✌,CSDN博客专家,阿里云社区专家博主,2023年6月CSDN上海赛道top4。🏆数年电商行业从业经验,AWS/阿里云资深使用用户,历任核心研发工程师,项目技术负责人。🎉欢迎👍点赞✍评论⭐收藏文章目录🚀一、前言🚀二、Chrome浏览器环境搭建🔎

网络安全(黑客)自学

自学网络安全必须注意的问题:(1)打好基础初学者一定要注意打好基础,我之所以只学了6个月就能拿到12K的薪资,就是因为我基础牢固。其实一个初学者在开始的时候能培养出好的基础很难,这源于在整个学习过程中有大佬带我的原因。(2)交流沟通切记不要认为自己可以摸索自学成功,能达到一定高度的水平,一定离不开很多专业人的指导,所以

计算机竞赛 机器视觉目标检测 - opencv 深度学习

文章目录0前言2目标检测概念3目标分类、定位、检测示例4传统目标检测5两类目标检测算法5.1相关研究5.1.1选择性搜索5.1.2OverFeat5.2基于区域提名的方法5.2.1R-CNN5.2.2SPP-net5.2.3FastR-CNN5.3端到端的方法YOLOSSD6人体检测结果7最后0前言🔥优质竞赛项目系列

POLARDB IMCI 白皮书 云原生HTAP 数据库系统 一 数据压缩打更新 (本篇有数据到列节点异步但不延迟的解释)...

开头还是介绍一下群,如果感兴趣polardb,mongodb,mysql,postgresql,redis等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系liuaustin3,在新加的朋友会分到2群(共1300人左右1+2+3+4)3群即将突破400会关闭自由申请,新人会进4群这

热文推荐