手记

计算机科学速成课-Crash Course Computer Science 时间导图

现在的开发者需要具备的,不仅仅是技能树,而是技能森林。(推特@qing_wang)
最近偶然看到这个课,我觉得还不错,可以扫盲,B站就有,然后我总结了一些要点,供大家参考

可爱吗?

Time line

Some notes

因为字幕组公开字幕了,所以我就记了一部分笔记。

Logic Gates XOR example

Binary

  • 二进制中,一个 1 或 0 叫一"位bit".
  • 1 字节 byte = 8 位
  • Mega 是百万字节(MB), Giga 是十亿字节(GB)
  • 二进制里,1 千字节 = 2的10次方 = 1024 字节
  • 计算机必须给内存中每一个位置,做一个 “标记” ,这个标记叫 “位址” addresses, 目的是为了方便存取数据
  • 浮点数最常见的是 IEEE 754 标准,比如js,py,都是这个规范
  • 625.9 可以写成 0.6259×10 ^ 3。.6259 叫 “有效位数significand” , 3 是指数exponent
  • ASCII 是 7 个位,足够存 128 个不同值,剩下的一位不能解决中文或者是日文这种多字符语言问题
  • 后出现了Unicode,最常见的 Unicode 是 16 位的

Arithmetic and Logic Unit 算术逻辑单元

  • ALU 有 2 个单元,1 个算术单元和 1 个逻辑单元
  • “算术单元”,它负责计算机里的所有数字操作
  • 逻辑单元执行逻辑操作,比如之前讨论过的 AND,OR 和 NOT 操作,进行数值测试

  • half adder 半加器
  • full adder

Registers and Ram

  • AND-OR Latch 锁存器
    • Gated latch 门锁
  • 一组这样的锁存器叫 “寄存器”
  • 寄存器能存一个数字,这个数字代表位的数量,叫"位宽"
  • 使用矩阵存储锁存器,节省连接的线路
  • 为了将地址转成 行和列,我们需要 “多路复用器”

CPU

  • microarchitecture 微体系架构
  • 寄存器用来 临时存数据 和 操作数据
  • 一个寄存器追踪程序运行到哪里了,我们叫它 “指令地址寄存器”
  • 另一个寄存器存当前指令,叫 “指令寄存器”
  • “控制单元” 负责选择正确的寄存器作为输入,并配置 ALU 执行正确的操作
  • CPU “取指令→解码→执行” 的速度叫 “时钟速度”,单位是赫兹 - 赫兹是用来表示频率的单位
    • 1 赫兹代表一秒 1 个周期

    1. fetch phase 取指令阶段
    • 将 “指令地址寄存器” 连到 RAM,拿到指令
    1. decode phase 解码阶段
    1. 执行

Educational Technology

  • 智能辅导系统通常用贝叶斯知识追踪让学生练习技能,直到掌握
    • 记录四个概率,自我校正
    • 学生已经学会的概率
    • 瞎猜的概率
    • 失误的概率
    • 做题过程中学会的概率
  • “判断规则”+选择算法,组合在一起成为 “域模型”

the Future of Computing



3人推荐
随时随地看视频
慕课网APP