## 计算机科学速成课 :fire: 2018年5月1号 - 全40集完结撒花 ### 精校版: https://www.bilibili.com/video/av21376839/
![bilibili](/image/cs40.jpg) ## 字幕文件也放出来了 为了方便大家学习,我们把字幕也放出来了 字幕片头的总结在 **README 的底部**,方便搜索和翻阅 如果你需要字幕的文本,40集中英字幕我们做了2个版本: 1. 所有字幕都放到一个文件里: [(字幕) 全40集中英字幕文本.txt](./(字幕)全40集中英字幕文本.txt) 2. 一集一个文件,一共40个文件: [(字幕)全40集中英字幕文本](./(字幕)全40集中英字幕文本) 感谢观看,Don't forget to be Awesome! ### 1. 感谢所有翻译人员! * 不想膨胀的小R - [Github](https://github.com/coolralf), [微博](https://weibo.com/u/2207493917), [B站](https://space.bilibili.com/5385034#!/video) * 糖醋陈皮 - [Github](https://github.com/1c7), [微博](https://weibo.com/2004104451), [博客](http://1c7.me/) * ZireHao - [B站](http://space.bilibili.com/27167876/)     * gilot - [B站](https://space.bilibili.com/43595622/) * 晴空 * Crazycat * Cindy * 出门去 * TMC - RN * LCAR979(推特 `_lincr_`) ### 第一版: * 1 - [早期的计算 - Early Computing](https://www.bilibili.com/video/av8861057/) * 2 - [电子计算 - Electronic Computing](https://www.bilibili.com/video/av9066628/) * 3 - [布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates](https://www.bilibili.com/video/av11557339/) * 4 - [二进制 - Representing Numbers and Letters with Binary](https://www.bilibili.com/video/av11592079/) * 5 - [算术逻辑单元 - How Computers Calculate - the ALU](https://www.bilibili.com/video/av12742941/) * 6 - [寄存器 & 内存 - Registers and RAM](https://www.bilibili.com/video/av12881796/) * 7 - [中央处理器 - The Central Processing Unit(CPU)](https://www.bilibili.com/video/av12881976/) * 8 - [指令和程序 - Instructions & Programs](https://www.bilibili.com/video/av9875360/) * 9 -  [高级 CPU 设计 - Advanced CPU Designs](https://www.bilibili.com/video/av11867964/) * 10 - [编程史话 - Early Programming](https://www.bilibili.com/video/av13582556/) * 11 - [编程语言 - The First Programming Languages](https://www.bilibili.com/video/av14228148/) * 12 - [编程原理:语句和函数 - Programming Basics: Statements & Functions](https://www.bilibili.com/video/av14885759/) * 13 - [算法初步 - Intro to Algorithms](https://www.bilibili.com/video/av15987761/) * 14 - [数据结构 - Data Structures](https://www.bilibili.com/video/av15987774/) * 15 - [阿兰·图灵 - Alan Turing](https://www.bilibili.com/video/av16090115/) * 16 - [软件工程 - Software Engineering](https://www.bilibili.com/video/av16751202/) * 17 - [集成电路、摩尔定律 - Integrated Circuits & Moore’s Law](https://www.bilibili.com/video/av17186768) * 18 - [操作系统 - Operating Systems](https://www.bilibili.com/video/av17192468) * 19 - [内存 & 储存介质 - Memory & Storage](https://www.bilibili.com/video/av17192483/) * 20 - [文件系统 - Files & File Systems](https://www.bilibili.com/video/av17209268/) * 21 - [压缩 - Compression](https://www.bilibili.com/video/av17192511/) * 22 - [命令行界面 - Keyboards & Command Line Interfaces](https://www.bilibili.com/video/av17451718/) * 23 - [屏幕 & 2D 图形显示 - Screens & 2D Graphics](https://www.bilibili.com/video/av17476087/) * 24 - [冷战和消费主义 - The Cold War and Consumerism](https://www.bilibili.com/video/av15637307/) * 25 - [个人计算机革命 - The Personal Computer Revolution](https://www.bilibili.com/video/av18789303/) * 26 - [图形用户界面 - Graphical User Interfaces](https://www.bilibili.com/video/av19035296/) * 27 - [3D 图形 - 3D Graphics](https://www.bilibili.com/video/av19164942/) * 28 - [计算机网络 - Computer Networks](https://www.bilibili.com/video/av19209394/) * 29 - [互联网 - The Internet](https://www.bilibili.com/video/av20716104/) * 30 - [万维网 - The World Wide Web](https://www.bilibili.com/video/av20767130/) * 31 - [网络安全 - Cybersecurity](https://www.bilibili.com/video/av20785456/) * 32 - [黑客与攻击 - Hackers & Cyber Attacks](https://www.bilibili.com/video/av20831479/) * 33 - [加密 - Cryptography](https://www.bilibili.com/video/av20882310/) * 34 - [机器学习与人工智能 - Machine Learning & Artificial Intelligence](https://www.bilibili.com/video/av20922906) * 35 - [计算机视觉 - Computer Vision](https://www.bilibili.com/video/av20974735) * 36 - [自然语言处理 - Natural Language Processing](https://www.bilibili.com/video/av21004070) * 37 - [机器人 - Robots](https://www.bilibili.com/video/av21043523) * 38 - [计算机中的心理学 - Psychology of Computing](https://www.bilibili.com/video/av21066931) * 39 - [教育型科技 - Educational Technology](https://www.bilibili.com/video/av21103744) * 40 - [(完结) 奇点,天网,计算机的未来 - The Singularity, Skynet, and the Future of Computing](https://www.bilibili.com/video/av21126704) 精校版质量更好,建议看精校版,之所以第一版目录不删: 1. 方便快速扫视,看都聊什么话题 2. 方便翻阅之前的版本(如果有需要)   备注:精校负责人是 @糖醋陈皮 ### 2. 翻译时间 英文版: 第 1 集发布: 2017年2月22号 第 40 集发布:2017年12月21号 中文版: 第 1 集发布: 2017年2月27号 全 40 集翻译完成:2018年3月24号 全 40 集精校完成:2018年5月1号 ### 2. 原视频 [Youtube - Crash Course Computer Science Playlist](https://www.youtube.com/playlist?list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo) ![Crash Course CS screenshoht](/image/english.png) # Thank you Crash Course & Carrie Anne! * Patron support Crash Course:https://www.patreon.com/crashcourse
* Crash Course website:https://thecrashcourse.com/ * Youtube Crash Course: https://www.youtube.com/user/crashcourse # 感谢速成课!感谢 Carrie Anne! * Patron 支持 Crash Course:https://www.patreon.com/crashcourse
* Crash Course 官方网站:https://thecrashcourse.com/ * Youtube Crash Course: https://www.youtube.com/user/crashcourse ## 片头总结 ## 第 1 集:计算机早期历史 提到的设备:算盘 → 步进计算器 → 差分机 → 分析机 → 打孔卡片制表机 提到的人名:Charles Babbage, Ada Lovelace 02:27 最早的计算设备是算盘,举例如何使用 04:31 Computer 从指代职业变成指代机器 04:57 机器里有名的是:步进计算器。第一个可以做加减乘除的机器 06:44 炮弹为了精准,要计算弹道,二战是查表来做。但每次改设计了就需要做一张新表 07:30 Charles Babbage 提出了 "差分机", 在构造差分机期间,想出了分析机, 分析机是通用计算机 08:50 Lovelace 给分析机写了假想程序,因此成为了第一位程序员 09:25 人口普查 10 年一次. Herman Hollerith 的打孔卡片制表机大大提升了效率 ## 第 2 集:电子计算机 提到的设备:继电器 → 真空管 → 晶体管 00:17 20世纪的发展要求更强的计算能力。柜子大小的计算机发展到房间大小 01:06 哈佛 Mark 1 号,IBM 1944 年做的 02:25 继电器,继电器一秒最多 50 次开关 03:24 继电器出 bug 03:49 1904 年,热电子管出现,第一个真空管。改进后变成和继电器的功能一样 05:34 "巨人1号" 计算机在英国 布莱切利园 首次大规模使用真空管。但编程麻烦,还要配置 06:40 1946 年,宾夕法尼亚大学的 ENIAC 是第一个通用可编程计算机 07:36 1947 年,贝尔实验室做出了晶体管,晶体管有诸多好处,IBM 很快全面转向晶体管 09:27 硅谷的典故:很多晶体管和半导体的开发都是这里做的。而生产半导体最常见的材料是硅 09:41 肖克利半导体 → 仙童半导体 → 英特尔 ## 第 3 集:布尔逻辑和逻辑门 01:00 什么是二进制, 为什么用二进制, 布尔逻辑 02:46 3个基本操作:NOT,AND,OR 02:51 解释3个基本操作 07:11 XOR 异或 ## 第 4 集:二进制 00:46 用十进制举例二进制的原理,演示二进制加法。存储单位 MB GB TB 等 05:30 正数,负数,整数,浮点数的表示 07:20 美国信息交换标准代码 - ASCII, 用来表示字符 09:00 UNICODE 1992 年诞生,是字符编码标准, 解决 ASCII 不够表达所有语言的问题 ## 第 5 集:算数逻辑单元 - ALU 00:03 简单介绍 ALU ,英特尔 74181 01:24 ALU 有 2 个单元,1 个算术单元和 1 个逻辑单元 01:32 算术单元 半加器 (处理1个 bit,2个输入) 全加器 (处理1个 bit,3个输入) 8 bit 加法 (1个半加器,7个全加器) 溢出的概念,吃豆人的例子 乘法除法 07:32 逻辑单元 检测数字是否为 0 的电路(一堆 OR 门最后加个 NOT 门) ALU 抽象成一个 V 符号 Flag 标志(是否相等,是否小于,是否溢出等等) ## 第 6 集:寄存器和内存 本机重点是 Memory (存储 / 内存 两种含义) 03:30 存 1 位 (Gated Latch - 锁存器) 04:48 存 8 位 (Register - 寄存器) 05:46 16x16 的矩阵存 256 位 数据选择器/多路复用器 (Multiplexer) 解码 8 位地址,定位到单个锁存器 07:38 4 位代表行, 4 位代表列 08:16 组合 256 位内存 + 多路复用器 09:01 可寻址的 256 字节 内存 一条1980年代的内存,1M 大小 10:14 8个模块,每个模块有32个小方块, 每个小方块有 4 个小块,每个小块是 128 位 x 64 位 ## 第 7 集:中央处理器(CPU) 重点 1. 拼个 CPU 出来 2. CPU 怎么执行命令 01:00 RAM + 寄存器 + ALU 做个 CPU 04:00 解释 "取指令→解释→执行" 这个循环 08:00 时钟是什么, 时钟速度和赫兹 10:00 超频提升性能, 降频省电 ## 第 8 集:指令和程序 本集重点:一步步带你运行一遍程序 00:45 回顾上集的例子程序,一步步讲解。介绍”指令集”的概念 LOAD_A,LOAD_B,SUB,JUMP,ADD,HALT 等指令 05:16 带条件跳转,JUMP NEGATIVE 是负数才跳转,还有其他类型的 JUMP 08:00 真正现代 CPU 用更多指令集。位数更长。 09:07 1971年的英特尔 4004 处理器,有 46 个指令 09:36 如今英特尔酷睿 i7, 有上千条指令 ## 第 9 集:高级 CPU 设计 00:24 早期是加快晶体管切换速度,来提升 CPU 速度 01:20 给 CPU 专门的除法电路 + 其他电路来做复杂操作,比如游戏,视频解码 02:28 给 CPU 加缓存,提高数据存取速度,更快喂给 CPU,用计算餐馆销售额举例 05:13 脏位 - Dirty bit 05:33 流水线设计,用 1 个洗衣机和 1 个干燥机举例 06:01 并行处理 - parallelize 07:33 乱序执行 - out-of-order execution 08:21 推测执行 - speculative execution 08:50 分支预测 - branch prediction 09:34 多个 ALU 09:54 多核 (Core) 10:11 多个独立 CPU 10:52 超级计算机,中国的"神威 太湖之光" ## 第 10 集:早期的编程方式 本集重点:早期计算机如何编程 打孔纸卡 → 插线板 → 面板拨开关 00:00 开头说本集重点:程序如何进入计算机 00:53 拿纺织业举例,给机器编程的需求远在计算机出现前就有了 01:41 打孔纸卡 - Punched card 02:36 插线板 - Plugboard 04:20 冯诺依曼架构 - Von Neumann Architecture 07:00 面板编程 - Panel programming 07:29 第一款取得商业成功的家用计算机: Altair 8800 08:15 编程依然很困难,人们需要更友好更简单的方式编程 08:44 下周主题:编程语言 ## 第 11 集:编程语言发展史 编程:二进制 → 助记符(汇编器)→ A-0(编译器)→ FORTRAIN 01:45 二进制写程序,先纸上写伪代码,手工转二进制,很快就烦了 02:28 用 "助记符” 写代码(LOAD_A 14)为了把助记符转二进制,汇编器诞生 (Assembler) 04:32 葛丽丝·霍普 (Grace Hopper) - 哈佛1号计算机首批程序员, 海军军官 05:13 Grace 设计了编程语言 A-0 05:29 Grace 1952 年做了第一个编译器 (Compiler),实现 A-0 06:29 变量 (Variables) 07:01 FORTRAN 08:18 COBOL 09:25 新语言 1960 年代:ALGOL,LISP,BASIC 1970 年代:Pascal,C,Smalltalk 1980 年代:C++,Objective-C,Perl 1990 年代:Python,Ruby,Java ## 第 12 集:编程基础 - 语句和函数 00:50 变量, 赋值语句 02:08 Grace Hopper 拍虫子游戏 02:52 if 判断 04:19 while 循环 05:48 for 循环 07:00 函数 11:11 下集介绍算法 ## 第 13 集:算法入门 03:00 选择排序 - Selection sort 03:52 大 O 表示法 - Big O notation 04:31 归并排序 - Merge sort 08:03 Dijkstra 算法 ## 第 14 集:数据结构 00:39 数组 - Array 02:06 字符串 - String 03:12 矩阵 - Matrix 04:05 结构体 - Struct 04:46 指针 - Pointer 04:44 节点 - Node 04:53 链表 - Linked List 06:21 队列 - Queue 06:21 栈 - Stack 07:31 树 - Tree 08:01 二叉树 - Binary Tree 08:26 图 - Graph 08:50 没时间讲红黑树和堆, 不同数据结构适用不同场景 ## 第 15 集:阿兰·图灵 00:33 介绍图灵 00:52 可判定性问题 01:14 阿隆佐·丘奇,Lambda 算子 01:38 图灵机 04:54 停机问题 08:09 破解德军英格玛加密机 10:40 图灵测试 11:18 图灵的个人生活 12:07 图灵奖 ## 第 16 集:软件工程 01:31 对象 Object 02:39 面向对象编程 Object Oriented Programming. 03:55 API Application Programming Interface 04:33 public, private 05:36 集成开发环境, IDE - Integrated Development Environments 06:09 调试 debugging 06:31 文档和注释 - readme, comment 07:33 版本控制 Version control 08:50 质量控制 Quality Assurance testing,QA 09:21 Beta, Alpha ## 第 17 集:集成电路与摩尔定律 本集重点:晶圆的制作流程:光刻 (04:21~07:42) 00:51 分立元件 Discrete components 01:09 数字暴政 Tyranny of Numbers - 是 1960 年代工程师碰到的问题 意思是如果想加强电脑性能,就要更多部件,这导致更多线路,更复杂。所以很难做 04:21 光刻 Photolithography 04:26 晶圆 Wafer 04:57 光刻胶 Photoresist 05:08 光掩膜 Photomask 06:00 掺杂 Doping 09:09 摩尔定律 Moore’s Law. 09:38 英特尔 Intel 10:20 晶体管数量大幅度增长, 1980年三万个,1990年一百万个,2000年三千万个,2010年十亿个 11:44 进一步小型化会碰到 2 个问题 1. 光的波长不足以制作更精细的设计 2. 量子隧穿效应 ## 第 18 集:操作系统 00:48 操作系统 Operating systems 01:34 批处理 Batch processing 01:58 计算机变便宜变多,有不同配置,写程序处理不同硬件细节很痛苦,因此操作系统负责抽象硬件 02:12 外部设备 Peripherals 02:48 设备驱动程序 Device drivers 04:43 多任务处理 Multitasking 05:54 虚拟内存 Virtual Memory 07:09 动态内存分配 Dynamic memory allocation 07:31 内存保护 Memory Protection 07:54 1970年代,计算机足够便宜,大学买了让学生用,多个学生用多个 "终端" 连接到主机 08:29 多用户分时操作系统,Multics 09:32 Unix 11:02 MS-DOS 12:09 下集是内存&存储介质 ## 第 19 集:内存&储存介质 本集重点:存储技术的发展 01:01 纸卡 Paper punch cards 02:01 延迟线存储器 Delay Line Memory 04:06 磁芯 Magnetic Core Memory 06:08 磁带 Magnetic Tape 07:08 磁鼓 Magnetic Drum Memory 07:43 硬盘 Hard Disk Drives 08:53 内存层次结构 Memory Hierarchy 09:36 软盘 Floppy Disk 10:09 光盘 Compact Disk 10:51 固态硬盘 Solid State Drives ## 第 20 集:文件系统 00:47 文件格式:可以随便存文件数据,但按格式存会更方便 01:00 TXT 文本文件:ASCII 01:31 WAV 音频文件:每秒上千次的音频采样数字 02:47 BMP 图片文件:像素的红绿蓝 RGB 值 04:43 文件系统:很早期时空间小,整个存储器就像一整个文件。后来随容量增长,多文件非常必要 05:37 目录文件:用来解决多文件问题,存其他文件的信息,比如开头,结尾,创建时间等 06:39 平面文件系统 - Flat File System:文件都在同一个层次,早期空间小,只有十几个文件,平面系统够用 06:57 如果文件紧密的一个个前后排序会造成问题,所以文件系统会: 1. 把空间划分成一块块 2. 文件拆分存在多个块里 08:30 文件的增删改查会不可避免的造成文件散落在各个块里, 如果是磁带这样的存储介质就会造成问题,所以做碎片整理 09:46 分层文件系统 - Hierarchical File System:有不同文件夹,文件夹可以层层嵌套 第21集讲压缩 ## 第 21 集:压缩 00:26 压缩的好处是能存更多文件,传输也更快 01:52 游程编码 Run-Length Encoding 02:45 无损压缩 Lossless compression 03:55 霍夫曼树 Huffman Tree 05:56 "消除冗余"和"用更紧凑的表示方法",这两种方法通常会组合使用 06:07 字典编码 Dictionary coders, 游程编码 和 字典编码 都是无损压缩 08:03 感知编码 Perceptual coding 08:09 有损压缩 jpeg 格式 09:39 时间冗余 Temporal redundancy 10:30 MPEG-4 视频编码 ## 第 22 集:命令行界面 本集重点:计算机早期同时输入程序和数据(用纸卡/纸带) 运行开始直到结束,中间没有人类进行操作, 原因是计算机很贵,不能等人类慢慢输入,执行完结果打印到纸上 (02:34) 到1950年代,计算机足够便宜+快,人类和计算机交互式操作变得可行 为了让人类输入到计算机,改造之前就有的打字机,变成电传打字机 (02:44~05:38) 到1970年代末,屏幕成本足够低,屏幕代替电传打字机,屏幕成为标配 (07:24) 00:32 人机交互 Human-Computer Interaction 00:50 早期输出数据是打印到纸上,而输入是用纸卡/纸带一次性把程序和数据都给进去 03:00 QWERTY 打字机的发展,克里斯托弗·莱瑟姆·肖尔斯 发明于 1868 年 05:38 电传打字机 Teletype machine 06:32 命令行界面 Command line interface 06:38 ls 命令 08:22 早期文字游戏 Zork (1977年) 08:47 cd 命令 ## 第 23 集:屏幕与 2D 图形显示 00:05 PDP-1 计算机。键盘和显示器分开,屏幕显示临时值 01:14 阴极射线管 Cathode Ray Tube (CRT) 01:38 CRT 有两种绘图方式: 矢量扫描 Vector Scanning 光栅扫描 Raster Scanning 02:14 液晶显示器 Liquid Crystal Displays (LCD),像素 (Pixel) 03:32 字符生成器 Character generator 03:45 屏幕缓冲区 Screen buffer 05:09 矢量命令画图 06:34 Sketchpad, 光笔 (Light pen) 09:00 函数画线,矩形 ## 第 24 集:冷战和消费主义 本集重点:冷战导致美国往计算机领域投入大量资源 (00:00~01:43) 范内瓦·布什 预见了计算机的潜力,提出假想机器 Memex 帮助建立 国家科学基金会,给科学研究提供资金 (01:43~03:43) 1950 年代消费者开始买晶体管设备,收音机大卖 日本取得晶体管授权后,索尼做了晶体管收音机,为日本半导体行业崛起埋下种子 (03:43~04:29) 苏联 1961 年把宇航员加加林送上太空,导致美国提出登月 NASA 预算大大增加,用集成电路来制作登月计算机 (04:29~06:27) 集成电路的发展实际上是由军事应用大大推进的,阿波罗登月毕竟只有 17 次 美国造超级计算机进一步推进集成电路 (04:29~07:11) 美国半导体行业一开始靠政府高利润合同活着,忽略消费者市场,1970年代冷战渐消,行业开始衰败 很多公司倒闭,英特尔转型处理器 (07:11~08:23) 末尾总结:政府和消费者推动了计算机的发展 早期靠政府资金,让技术发展到足够商用,然后消费者购买商用产品继续推动产品发展 (08:23~10:41) ## 第 25 集:个人计算机革命 本集:全是历史故事 00:18 1970年代初成本下降,个人计算机变得可行 01:51 Altair 8800 02:32 比尔·盖茨 和 保罗·艾伦写 BASIC 解释器 03:45 乔布斯提议卖组装好的计算机,Apple-I 诞生 04:40 1977年出现3款开箱即用计算机: "Apple-II","TRS-80 Model I","Commodore PET 2001" 06:26 IBM 意识到个人计算机市场 IBM PC 发布,采用开放架构,兼容的机器都叫 IBM Compatible (IBM 兼容) 生态系统产生雪球效应: 因为用户多,软硬件开发人员更愿意花精力在这个平台 因为软硬件多,用户也更乐意买 "IBM 兼容" 的计算机 08:44 苹果选封闭架构,一切都自己来,只有苹果在非 "IBM 兼容" 下保持了足够市场份额 ## 第 26 集:图形用户界面 (GUI) 01:10 图形界面先驱:道格拉斯·恩格尔巴特(Douglas Engelbart) 03:20 1970年成立 帕洛阿尔托研究中心(Palo Alto Research Center) 03:29 1973年完成 Xerox Alto(施乐奥托) 计算机 04:42 举例:写一个简单的 GUI 程序 06:38 1981年的 Xerox Star system(施乐之星系统) 08:18 史蒂夫·乔布斯去施乐参观 07:45 所见即所得 WYSIWYG 09:15 1983年推出 Apple Lisa 09:31 1984年推出 Macintosh 10:12 1985年推出 Windows 1.0,之后出到 3.1 10:43 1995年推出 Windows 95 提供图形界面 11:08 1995年微软做失败的 Microsoft Bob ## 第 27 集:3D 图形 01:15 线框渲染 Wireframe Rendering 01:39 正交投影 Orthographic Projection 01:50 透视投射 Perspective Projection 02:14 网格 Mesh 02:37 三角形更常用因为能定义唯一的平面 03:09 扫描线渲染 Scanline Rendering 05:04 遮挡 Occlusion 05:19 画家算法 Painter's Algorithm 06:09 深度缓冲 Z Buffering 07:45 Z Fighting 错误 07:51 背面剔除 Back Face Culling 08:53 表面法线 Surface Normal 09:33 平面着色 Flat Shading 09:43 高洛德着色 Gouraud shading, 冯氏着色 Phong Shading 10:06 纹理映射 Texture Mapping 11:24 图形处理单元 GPU, Graphics Processing Unit ## 第 28 集:计算机网络 02:05 局域网 Local Area Networks - LAN 02:36 媒体访问控制地址 Media Access Control address - MAC 02:55 载波侦听多路访问 Carrier Sense Multiple Access - CSMA 05:18 指数退避 Exponential Backoff 05:36 冲突域 Collision Domain 07:08 电路交换 Circuit Switching 07:36 报文交换 Message Switching 10:20 分组交换 Packet Switching ## 第 29 集:互联网 02:23 IP - 互联网协议 - Internet Protocol 03:00 UDP - 用户数据报协议 - User Datagram Protocol 03:41 校验和 - Checksum 05:26 TCP - 传输控制协议 - Transmission Control Protocol 08:21 DNS - 域名系统 - Domain Name System 10:47 OSI - 开放式系统互联通信参考模型 - Open System Interconnection ## 第 30 集:万维网 01:01 超链接 Hyperlinks 02:20 URL - 统一资源定位器 - Uniform Resource Locator 03:01 HTTP - 超文本传输协议 - HyperText Transfer Protocol 04:13 HTML - 超文本标记语言 - HyperText Markup Language 04:24 写一个简单网页,用到了 <h1> <a> <h2> <ol> <li> 标签 06:04 第一个浏览器和服务器是 Tim Berners-Lee 花了 2 个月在 CERN 写的 06:32 1991年正式发布,万维网就此诞生 07:19 开始讲搜索引擎的故事 07:40 Jerry 和 David 的万维网指南 后来改名成 Yahoo 07:52 搜索引擎 JumpStation 09:07 搜索引擎 Google 09:20 网络中立性 ## 第 31 集:计算机安全 01:00 Secrecy, Integrity, Availability 保密性, 完整性, 可用性 01:49 Threat Model 威胁模型 03:14 身份验证 (Authentication) 的三种方式: What you know, 你知道什么 What you have, 你有什么 What you are, 你是什么 07:34 访问控制 Access Control 08:48 Bell LaPadula model 不能向上读取,不能向下写入 11:00 隔离 Isolation, 沙盒 Sandbox ## 第 32 集:黑客与攻击 01:28 社会工程学 Social Engineering 01:38 钓鱼 Phishing 02:06 假托 Pretexting 02:50 木马 Trojan Horses 03:32 NAND镜像 NAND Mirroring 04:12 漏洞利用 Exploit 04:16 缓冲区溢出 Buffer Overflow 05:45 边界检查 Bounds Checking 06:16 代码注入 Code Injection 09:32 零日漏洞 Zero Day Vulnerability 09:53 计算机蠕虫 Worms 09:58 僵尸网络 Botnet 10:11 拒绝服务攻击 DDoS ## 第 33 集:加密 00:16 多层防御 Defence in depth 01:00 加密 - Encryption,解密 - Decryption 01:11 凯撒加密 Caesar cipher 01:27 替换加密 Substitution cipher 01:59 移位加密 Permutation cipher 02:03 列移位加密 Columnar transposition cipher 02:37 德国 Enigma 加密机 04:54 1977年"数据加密标准" - Data Encryption Standard (DES) 05:24 2001年"高级加密标准" - Advanced Encryption Standard (AES) 07:06 密钥交换 - Key exchange 07:33 用颜色来举例"单向函数"和"密钥加密"的原理 08:24 迪菲-赫尔曼密钥交换 - Diffie-Hellman Key Exchange 10:18 非对称加密 - Asymmetric encryption 11:22 非对称加密算法 RSA ## 第 34 集:机器学习与人工智能 01:23 分类 Classification 01:25 分类器 Classifier 01:34 特征 Feature 02:03 标记数据 Labeled data 02:38 决策边界 Decision boundaries 03:00 混淆矩阵 Confusion matrix 03:39 未标签数据 Unlabeled data 03:49 决策树 Decision tree 04:25 支持向量机 Support Vector Machines 05:52 人工神经网络 Artificial Neural Network 08:34 深度学习 Deep learning 09:21 弱AI, 窄AI Weak AI, Narrow AI 09:43 强AI Strong AI 10:42 强化学习 Reinforcement Learning ## 第 35 集:计算机视觉 02:41 检测垂直边缘的算法 03:26 核/过滤器 kernel or filter 03:56 卷积 convolution 04:23 Prewitt 算子 Prewitt Operators 05:34 维奥拉·琼斯 人脸检测 Viola-Jones Face Detection 05:35 卷积神经网络 Convolutional Neural Networks 07:33 识别出脸之后,可以进一步用其他算法定位面部标志,如眼睛和眉毛具体位置,从而判断心情等信息 08:52 跟踪全身的标记点,如肩部,手臂等 ## 第 36 集:自然语言处理 01:50 词性 Parts of speech 02:15 短语结构规则 Phrase structure rules 02:32 分析树 Parse tree 05:30 语音识别 Speech recognition 07:26 谱图 Spectrogram 07:44 快速傅立叶变换 Fast Fourier Transform 08:42 音素 Phonemes 09:29 语音合成 Speech Synthesis ## 第 37 集:机器人 02:08 法国吃饭鸭 - Digesting Duck, Canard Digerateur 02:23 土耳其行棋傀儡, 下国际象棋 02:43 第一台计算机控制的机器出现在1940年代晚期,叫数控机器, Computer Numerical Control(CNC) 03:32 1960年 Unimate,第一个商业贩卖的 可编程工业机器人 03:47 简单控制回路 simple control loop 04:08 负反馈回路 negative feedback loop 05:17 比例-积分-微分控制器 Proportional–Integral–Derivative controller PID 控制器 10:48 机器人三定律 Three Laws of Robotics ## 第 38 集:计算机心理学 00:45 我们需要了解人类心理学,做出更好的计算机 01:12 易用度 - Usability 01:31 颜色强度排序 和 颜色排序 02:30 分组更好记,电话号码 317-555-3897 比 3175553897 好记 03:25 直观功能 - Affordances 04:33 认出 vs 回想 Recognition vs Recall 05:45 让机器有一定情商以及 Facebook 的研究 08:40 用软件修正注视位置。让视频通话时看起来像盯着对方,而不是盯着下方 09:58 把机器人做的像人,恐怖谷理论 11:35 有很多开放式的问题,心理学帮助我们明白不同选择可能带来的影响 ## 第 39 集:教育科技 02:15 通过调速,暂停等技巧,加强学习效率 03:15 大型开放式在线课程 - Massive Open Online Courses (MOOC) 05:08 智能辅导系统 - Intelligent Tutoring Systems 05:22 判断规则 - Production rule 06:10 域模型 - Domain Model 06:46 贝叶斯知识追踪 Bayesian knowledge tracing 1. 学生已经学会的概率 2. 瞎猜的概率 3. 失误的概率 4. 做题过程中学会的概率 09:27 教育数据挖掘 Educational Data Mining ## (完结)第 40 集:奇点,天网,计算机的未来 01:21 普适计算 Ubiquitous Computing 04:55 奇点 Singularity 06:51 把工作分为4个象限,讨论自动化带来的影响 10:15 机器人的存在时间可能长过人类,可以长时间探索宇宙