阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

计算机底层知识第一课,你搞懂了吗? | 极客时间

  • 2019-04-23
  • 本文字数:2416 字

    阅读完需:约 8 分钟

计算机底层知识第一课,你搞懂了吗? | 极客时间

对于程序员来说,计算机组成原理相关知识重要吗?


不知道大家有没有发现各个大学计算机系的培养计划,它们都有差不多十来门核心课程。其中,“计算机组成原理”却是入门和底层知识的第一课。


为什么这样说?想象一下,一名赛车手不知道赛车的内部构成和工作原理,你觉得他能驾驭赛车,在专业赛事中夺冠吗?


同样的道理,要成为一名优秀的软件工程师,写得一手好程序,就要了解计算机是怎么工作的,深入计算机组成原理。


我们直接用肉眼来看,计算机是由 CPU、内存、显示器这些设备组成的硬件,而大部分人工作后从事的是软件开发,显然,在硬件和软件之间需要一座桥梁,而“计算机组成原理”就扮演了这样一个角色,它既隔离了软件和硬件,也提供了让软件无需关心硬件,就能直接操作硬件的接口。


简单地说,你只需要对硬件有原理性的理解,就可以信赖硬件的可靠性,安安心心用高级语言来写程序。无论是写操作系统、编译器这样的硬核代码,还是写 Web 应用、手机 App 这样的应用层代码,你都可以做到心里有底。



如上图,学习组成原理之后,向下,你可以学习数字电路相关的课程,向上,你可以学习编译原理、操作系统这些核心课程。它会让你真正对计算机的知识有一个全局的了解。


当然,这门课还可以直接解决你在并发编程、性能优化中经常遇到的一些困惑,比如 CPU Cache 的原理是什么,CPU 和 I/O 之间是如何通信的,虚拟内存是要解决什么问题。


如果你看过倚天屠龙记,会发现张无忌几个时辰,就把别人几十年没有练成的乾坤大挪移学会了,最根本的原因,是他有“九阳神功”练就的内功底子!


同样的,深入学习这门“底层知识”,就是在练扎马步、核心肌肉力量,提升你自己的“根骨”和“资质”,从而拔高你发展的上限。


在很早之前,极客时间的编辑找到我,想让我开一个**计算机组成原理的课程,在考研统考的 4 门核心基础课程中,极客时间已经出了数据结构与算法、操作系统,计算机网络相关的 3 门很受欢迎的计算机基础课程,这是第 4 门也是非常重要的第一课,**等你做了多年开发以后,会发现,原来这么多年就是围绕这 4 门课程打转。


我身边想打好这门“硬核内功”的工程师很多,大都是买了资料,前面 100 页已经发黄了,后面 500 页从来没有打开过;不少非科班出身的程序员,直接说“这些书根本看不懂”,典型的“买书如山倒,读书如抽丝”。


总结大家的学习体验就是:很底层,很重要,但是太抽象,概念多,难理解,不好学以致用。


基于此,我和极客时间共同打磨了《深入浅出计算机组成原理》专栏,不同于学校的课程和市面上的其他资料,在这个专栏构思之初,我就给自己定了一个交付目标:


我会结合自己多年硬件研究和软件开发经验,通过日常工作实际场景+硬件发展历史+软件开发案例,深入浅出的为你讲解计算机组成原理的核心知识,教你真正看懂、学会、记住,从源头理解软、硬件的共同之处,洞悉性能问题的本质,学以致用。

我是谁?

我是徐文浩,一个目前正在创业的工程师。如果从 7 岁第一次在少年宫写程序开始算起,到今天,我的码龄快有 30 年了。2005 年上海交通大学计算机系毕业后,在 Trilogy Software 写过各种大型企业软件;曾任 MediaV 技术总监,从零开始搭建支撑每天百亿流量的广告算法系统,提升了十倍以上的广告收入和 ROI;2016 年底进军人工智能领域。我创办的 BotHub.AI,是唯一进入 F8 大会开发者代表的中国公司。


为了方便大家的学习,我特地整理了一份学习脑图,希望你对将要学习的内容有个总纲的了解,做到心中有数。


你能获得什么?

1.学以致用的计算机底层知识


在专栏中,我将以日常开发中的真实案例,让你理解计算机的各个组件是怎么运作的,遇到问题的根源是什么,从知识→应用→知识,形成闭环,学以致用。


比如说,CPU 里面的冒险和分支预测的策略,就好像在接力赛跑里面后面几棒的选手早点起跑,如果交接棒没有问题,自然占了便宜,但是如果没能交接上,就会吃个大亏。


2.30+计算机组成原理核心要点


知识点琐碎难记?没关系,我会把整个的计算机组成原理通过指令、计算、CPU、存储系统和 I/O 串起来,以一个程序的执行过程进行逐层分解,从历史视角讲清楚“是什么”,结合案例讲清楚”怎么做“,带你搞懂计算机组成原理中最核心、最重要的内容。


3.洞悉性能问题的本质


学习计算机组成原理,其实就是理解计算机是怎么运作的,以及为什么这么运作。在此基础上,我们才能又快又准地优化性能,提升效率。而我们想要解决性能问题,其实就是在此基础上,去关注时钟周期时间、每条指令的平均时钟周期数 CPI、指令数。


4.组成原理在工业界的实际应用


理解了计算机各个组件的运作之后,最后我将手把手带你实操。利用存储器层次结构设计大型 DMP 系统,并通过 Disruptor,跟你一起感受 CPU 的风驰电掣,让你真正学有所用。


总之,学好这门“硬核内功”,会让你在整个软件开发领域中,看到更加广阔的天地,它还会为你带来更多的职业发展机会,比如像我自己的团队里,有个小伙伴开始是做算法应用开发的,因为有扎实的计算机基础知识,后来就转去开发 TVM 这样的深度学习编译器了,是不是很厉害?

现在订阅有什么福利?

1、限时优惠 ¥68~~(原价 ¥99)~~,2 杯咖啡的价格,助你打好这门“硬核内功”;分享海报,邀请好友订阅即可获得¥24 的返现,多邀多得,上不封顶,APP 内立即提现。


2、订阅专栏后,在留言区里聊聊「你对计算机组成原理是如何认识的?在工作中有什么应用?」,点赞第 1 名,可获得极客时间 99 元任意课程,活动截止 4 月 25 日 24:00。


3、今日订阅,还可加入「计算机组成原理学习小组」,仅限前 500 人,还可免费领取 2019 极客时间 50G 程序员进阶资料包,在「极客时间」服务号后台对话框,回复【计算机】领取!


专栏详细目录


“练拳不练功,到老一场空”。越早弄清楚计算机的底层原理,在你的知识体系中“储蓄”起这些知识,也就意味着你有越长的时间来收获学习知识的“利息”。长久的”复利效应“,会让你的未来走的更远更轻松。


文章出自极客时间《深入浅出计算机组成原理》专栏


2019-04-23 15:2218580

评论

发布
暂无评论
发现更多内容

今年LED显示屏市场趋势

Dylan

商业 广告 娱乐 数字化 LED显示屏

揭秘Spring依赖注入和SpEL表达式

华为云开发者联盟

开发 华为云 华为云开发者联盟 企业号 6 月 PK 榜

源生创新 云享未来|GOTC全球开源技术峰会华为云云原生精彩时刻

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

MySQL 8.0.29 instant DDL 数据腐化问题分析

GreatSQL

greatsql greatsql社区

当GaussDB遇上了毕昇编译器

华为云开发者联盟

数据库 后端 华为云 华为云开发者联盟 企业号 6 月 PK 榜

分享几款 Mac 上非常好用的的免费软件

搞大屏的小北

数据可视化 数据库工具 截图软件 视屏转 gif 视频号下载

科兴未来|2023”福地句才”海外人才创业大赛

科兴未来News

Web网页端IM产品RainbowChat-Web的v5.0版已发布

JackJiang

网络编程 即时通讯 IM

TCMalloc 技术细节详解

KaiwuDB

KaiwuDB TCMalloc

相约未名湖畔,百度商业AI技术创新大赛携手北大学子共探AI发展

百度Geek说

人工智能 百度 企业号 6 月 PK 榜

DevEco创建项目时的错误解决

路北路陈

6 月 优质更文活动

NFTScan | 06.05~06.11 NFT 市场热点汇总

NFT Research

NFT 热点

“敏捷教练进阶课程”7月22-23日 ·A-CSM认证在线周末班【提前报名特惠】CST导师亲授

ShineScrum捷行

敏捷教练

智慧生活垃圾焚烧发电厂Web3D可视化平台

2D3D前端可视化开发

物联网 数字孪生 三维可视化 工业组态 智慧垃圾焚烧发电厂

精耕丝路,智胜全球 | 新华三助力中企跑好“出海”赛道

新消费日报

Java代码性能测试实战之ContiPerf

javalover123

单元测试 性能测试 压测 JUnit Java'

对线面试官-线程池(四)

派大星

Java 面试题

赋能矿山 | KaiwuDB 智慧矿山解决方案

KaiwuDB

解决方案 智慧矿山 KaiwuDB

科兴未来|2023年扬中高层次人才创新创业大赛

科兴未来News

【零售电商系列】走进亚马逊之自建仓储&物流

小诚信驿站

6 月 优质更文活动

从分布式到微服务解密“架构”原理与实战笔记

小小怪下士

Java 程序员 分布式 微服务

Navicat Premium将关系和实体添加到概念模型的方法

背包客

macos MySQL 数据库 Mac 软件 Navicat Premium

Sentinel熔断降级的规则及实现原理

互联网架构师小马

Java sentinel 熔断降级

“数字创新产品课程”7月29-30日 · CSPO认证周末班【提前报名特惠】CST导师亲授

ShineScrum捷行

教培行业的“智能GPT私教”?WorkPlusAI助理帮助教培机构实现十倍人效!

WorkPlus

3 个技巧,让你像技术专家一样解决编码问题

LigaAI

程序人生 技术专家 技术人成长 问题分析及解决 企业号 6 月 PK 榜

数据分析:电子商务需要关注的重要指标有哪些?

搞大屏的小北

电子商务 销售指标

Win服务器图床配置

路北路陈

6 月 优质更文活动

电路板电镀中4种特殊的电镀方法

华秋PCB

经验 电路板 焊接 PCB板 电镀

数据可视化设计四大原则透析

搞大屏的小北

数据可视化 设计要素 大屏设计

抓包分析RST信号

蓝胖子的编程梦

TCP Wireshark tcpdump RST 报文 Connection reset

计算机底层知识第一课,你搞懂了吗? | 极客时间_语言 & 开发_徐文浩_InfoQ精选文章