听课笔记-《计算机科学速成课》15-17计算机发展

文章目录

  • 视频链接
  • 视频目录
  • 笔记
    • 第15集·阿兰·图灵 - Alan Turing
        • 图灵机
        • 停机问题
    • 第16集·软件工程 - Software Engineering
        • 对象化
    • 第17集·集成电路、摩尔定律 - Integrated Circuits & Moore’s Law
        • 光刻
  • 1-4课笔记-计算机历史
  • 5-9课笔记-计算机硬件
  • 10-14课笔记-编程基础
  • 15-17课笔记-计算机发展
  • 18-21课笔记-操作系统
  • 22-27课笔记-计算机交互
  • 28-33课笔记-网络安全
  • 34-40课笔记-人工智能

视频链接

视频目录

1 - 早期的计算 - Early Computing
2 - 电子计算 - Electronic Computing
3 - 布尔逻辑与逻辑电路 - Boolean Logic & Logic Gates
4 - 二进制 - Representing Numbers and Letters with Binary
5 - 算术逻辑单元 - How Computers Calculate - the ALU
6 - 寄存器 & 内存 - Registers and RAM
7 - 中央处理器 - The Central Processing Unit(CPU)
8 - 指令和程序 - Instructions & Programs
9 - 高级 CPU 设计 - Advanced CPU Designs
10 - 编程史话 - Early Programming
11 - 编程语言 - The First Programming Languages
12 - 编程原理:语句和函数 - Programming Basics: Statements & Functions
13 - 算法初步 - Intro to Algorithms
14 - 数据结构 - Data Structures
15 - 阿兰·图灵 - Alan Turing
16 - 软件工程 - Software Engineering
17 - 集成电路、摩尔定律 - Integrated Circuits & Moore’s Law
18 - 操作系统 - Operating Systems
19 - 内存 & 储存介质 - Memory & Storage
20 - 文件系统 - Files & File Systems
21 - 压缩 - Compression
22 - 命令行界面 - Keyboards & Command Line Interfaces
23 - 屏幕 & 2D 图形显示 - Screens & 2D Graphics
24 - 冷战和消费主义 - The Cold War and Consumerism
25 - 个人计算机革命 - The Personal Computer Revolution
26 - 图形用户界面 - Graphical User Interfaces
27 - 3D 图形 - 3D Graphics
28 - 计算机网络 - Computer Networks
29 - 互联网 - The Internet
30 - 万维网 - The World Wide Web
31 - 网络安全 - Cybersecurity
32 - 黑客与攻击 - Hackers & Cyber Attacks
33 - 加密 - Cryptography
34 - 机器学习与人工智能 - Machine Learning & Artificial Intelligence
35 - 计算机视觉 - Computer Vision
36 - 自然语言处理 - Natural Language Processing
37 - 机器人 - Robots
38 - 计算机中的心理学 - Psychology of Computing
39 - 教育型科技 - Educational Technology
40 - (完结) 奇点,天网,计算机的未来 - The Singularity, Skynet, and the Future of Computing

多图预警

笔记

第15集·阿兰·图灵 - Alan Turing

图灵机

这是一台理论计算设备,状态变量STATE保存当前状态,一组规则根据当前状态STATE+读写头看到的符号,决定机器做什么。图中为例,我们想要测验一串以0结尾的数字,包含1 的个数是否为偶数个,如果是在纸带上写1。我们先了解下规则,总共四条规则,①如果STATE为“偶数”,当前符号是1,则把STATE更新为“奇数”,并把读写头向右移动。②如果当前STATE为“偶数”,当前符号是0,则意味着字符串结尾了,在纸带上写一个1,并把STATE改成“停机”。③STATE为“奇数”,纸带是0,则在纸带上写一个0,并把STATE改为“停机” ④STATE为“奇数”,纸带是1,则把STATE更新为“偶数”,并把读写头向右移动。好了现在我们设置机器的初始状态STATE设置为“偶数” 开始吧。
一串数为110,从第一个数“1”,当前STATE为“偶数”,当前符号是1,符合第①条,所以STATE更新为”奇数“,并把读写头向右移动,现在读第二个数”1“,当前STATE为”奇数“,当前符号是1,符合第③条,所以STATE更新为”偶数“,并把读写头往右移动,现在读第三个数”0“,当前STATE为”偶数“,当前符号是0,符合第②条,所以在纸带上写1,STATE更新为”停机“。执行结束,得出结果,我们读取的数110.有偶数个1。图灵机的设想很简单,不过如果有足够多的时间和内存,它可以执行任何计算。

停机问题

图灵机,一个计算是否会执行出结果停机,还无法确定,“给定图灵机描述和输入纸带,是否有算法可以确定,机器会永远算下去还是到某一点会停机?图灵机用巧妙的逻辑矛盾,证明了停机问题无法解决。
我们假象一台图灵机,给它输入纸带和规则,输出Yes表示会停机,输出No表示不会停机,这台图灵机起名为H,我们再用H设计一台新机器,如果 H 说程序会"停机”,那么新机器会永远运行(即不会停机),如果 H 的结果为 No,代表不会停机,实质上是一台和 H 输出相反的机器,我们还需要在机器前面加一个分离器,让机器只接收一个输入。如果把 新机器 的描述,作为本身的输入会怎样,如果说H输出Yes表示会停机,则新机器会无限循环,不停机,如果说H输出No表示不会停机,则新机器就会停机。这自相矛盾的结果,所以证明停机问题无法解决。

第16集·软件工程 - Software Engineering

对象化


汽车软件中 可能有几个和定速巡航有关的函数,比如 设定速度,逐渐加速减速,停止定速巡航,因为这些函数都相关,可以包装成一个"定速巡航对象"。当有面向对象的思想,我们想要使用调用这部分的内容,就简单许多,而且对于其他开发人员而言,他不用关心 对象内部的具体实现,只需要关注接口调用即可。总的来说,对象可以包其它对象,函数和变量。通过封装组件,隐藏复杂度。
软件工程和现实世界的工程很相似,比如我们修建一座火电厂,我们大体能分为土建,机电,土建有电工装线,管道工配管,焊接工焊接,油漆工涂油漆等等。机电通常会分,电控,热机,管道,焊接,仓储等等。虚拟软件的构成和现实世界的结构有很多相似之处,这应当和人的认知模式有关,用这种分类的有组织的统筹整个系统,才便于整体管理和细化执行,这就是工程思想。

第17集·集成电路、摩尔定律 - Integrated Circuits & Moore’s Law

光刻


计算机硬件的提升经历了几个阶段,从真空管到晶体管到集成电路,光刻机就是在此环境下诞生。
其实整个光刻的过程就是不断地贴层,溶蚀,清洗,贴层,溶蚀,清洗,最终制作出集成晶体管。它有时导电,有时不导电 \N 我们可以控制导电时机。
这个过程怎么发生的呢?从最下层开始,晶圆(硅材料),氧化层,光刻胶,光掩模, 光掩模的镂空是设计电路,露出的部分,经过光照,能直接照射到光刻胶,光刻胶溶解,置入特定的洗液,这部分溶解的光刻胶就去掉了。然后再用能溶解氧化层的物质溶解一次,露出的氧化层也被干掉,注意这些溶液只会对特定的层起作用,不会腐蚀其它层的材料。同样的过程,溶蚀晶圆,给溶蚀掉的部分掺杂,比如磷渗透进暴露出的硅,改变电学性质,让这部分具有半导性。


将层融掉后再重复上面的过程,用新的光掩模,这次图案不同在掺杂区域上方开一个缺口。然后用另一种气体掺杂 把一部分硅转成另一种形式。


将特定的区域溶解露出准备好的区域。

盖上一层金属层,一个晶体管的三个区域就成型,不导电,半导电,导电。每个区域的掺杂方式不同,这叫双极型晶体管。

我们可以把光掩膜聚焦到极小的区域,制作出非常精细的细节。

1-4课笔记-计算机历史

5-9课笔记-计算机硬件

10-14课笔记-编程基础

15-17课笔记-计算机发展

18-21课笔记-操作系统

22-27课笔记-计算机交互

28-33课笔记-网络安全

34-40课笔记-人工智能

你可能感兴趣的:(其它,计算机科学,通识,Crash,Course,科学科普)