深入浅出计算机组成原理 / 带你掌握计算机体系全貌
徐文浩
bothub创始人
 
  • 课程目录
  • 课程介绍
  • 开篇词 | 为什么你需要学习计算机组成原理?

    学好计算机组成原理,能够引领你进入底层知识大门,更深入地去学习体系结构、操作系统、编译原理,成为真正的“内家高手”。

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

    学习组成原理,其实就是学习控制器、运算器的工作原理,也就是CPU是怎么工作的,以及为何这样设计。

  • 02 | 给你一张知识地图,计算机组成原理应该这么学

    在学习零散的知识点之前,我整理了一份学习地图,好让你对将要学习的内容有一个总纲层面的了解。

  • 03 | 通过你的CPU主频,我们来谈谈“性能”究竟是什么?

    我们常常挂在嘴边的“性能”到底指的是什么呢?能不能给性能下一个明确的定义,然后来进行准确的比较呢?

  • 04 | 穿越功耗墙,我们该从哪些方面提升“性能”?

    除了“摩尔定律”和“并行计算”,我还会讲在整个计算机组成层面,几个原则性的性能提升方法。

  • 05 | 计算机指令:让我们试试用纸带编程

    我们来看一条指令是怎么变成机器码的。

  • 特别加餐 | 我在2019年F8大会的两日见闻录

    上周我在美国参加了F8大会,期间我把见闻记录了下来,今天分享给你。

  • 06 | 指令跳转:原来if...else就是goto

    我们在单条指令的基础上,学习程序里的多条指令,究竟是怎么样一条一条被执行的。

  • 07 | 函数调用:为什么会发生stack overflow?

    这一节我们讲,一个程序的函数间调用,在CPU指令层面是怎么执行的。

  • 08 | ELF和静态链接:为什么程序无法同时在Linux和Windows下运行?

    同样一个程序,不能同时在Linux和Windows下执行,其中一个重要原因是,两个操作系统下可执行文件的格式不一样。

  • 09 | 程序装载:“640K内存”真的不够用么?

    比尔·盖茨说的“640K ought to be enough for anyone”,到底有没有道理呢?

  • 10 | 动态链接:程序内部的“共享单车”

    如何在静态链接和程序装载之后,利用动态链接把我们的内存利用到极致?

  • 11 | 二进制编码:“手持两把锟斤拷,口中疾呼烫烫烫”?

    只要建立起字符集和字符编码,并且得到大家的认同,我们就可以在计算机里面表示任意信息。

  • 12 | 理解电路:从电报机到门电路,我们如何做到“千里传信”?

    我们通过电报机这个设备来看,如何通过“螺旋线圈+开关”,构造基本的门电路。

  • 13 | 加法器:如何像搭乐高一样搭电路(上)?

    这一节我们通过门电路搭建算术计算的过程,体会计算机中的“分层”思想。

在计算机专业十余门核心课程中,计算机组成原理是当之无愧的第一课。

无论你想要向上学习计算机的底层知识,比如编译原理、操作系统、体系结构,还是想要向下学习数字电路、数字逻辑等内容,都要先掌握计算机组成原理。这门课不仅能让你对计算机体系有一个总纲的认识,当你选择研究更深入的领域时也大有裨益。

那如何才能学会计算机组成原理呢?作为一名工程师,你应该明白,学习的关键是要搞懂原理、掌握本质、解决问题。而学习计算机组成原理,其实就是理解计算机是怎么运作的以及为什么要这么运作,在此基础上,我们才能又快又准地优化性能,提升效率。

徐文浩,bothub创始人。毕业于上海交通大学计算机系试点班,在Trilogy Software写过大型企业软件;在MediaV担任技术总监,从零开始搭建支撑每天百亿流量的广告算法系统;2015年,加入拼多多,参与重写拼多多的交易系统;2016年底创办bothub.ai,通过自然语言处理技术,为走向海外的中国企业提供英语的智能客服和社交网络营销服务。

在他看来,学习计算机组成原理,就是通过指令、计算、CPU、存储系统和I/O,掌握整个计算机运作过程的核心知识点;通过拆解程序的执行过程,对计算机系统有一个全貌的了解。

因此,在这个专栏里,他将结合自己多年的硬件研究成果和软件开发经验,通过硬件发展历史和软件开发案例,深入浅出地为你讲解计算机组成原理的核心知识和典型应用,继而帮你从源头理解硬件原理和软件架构的共通之处,洞悉性能问题的本质。

专栏分三个模块,共45讲。

入门篇

学习计算机组成原理,最关键的问题就是学什么、怎么学、有什么用。因此这一模块会给你一张知识地图,告诉你学习路径,并提供“从多方面提升性能”这一最终目标的实现思路。

原理篇

这一模块将为你摘出计算机组成的五大部分(控制器、运算器、存储器、输入和输出设备)中,与当下开发最相关的知识和问题,从历史视角讲清楚“是什么”,结合案例讲清楚“怎么做”。带你搞懂计算机组成原理中最核心、最重要的内容。

应用篇

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

限时福利

你觉得怎么样?期待您评价: