计算机的历史与未来(Week 2)

计算机历史

早期计算机:手工计算器➡️机械计算器➡️计算机原型

现代计算机:电子管计算机➡️晶体管计算机➡️集成电路计算机➡️超大规模集成电路

早期的手工计算辅助工具

功能:标记计算过程,记录计算结果,辅助数字计算

缺点:无法记录计算法则,无法设定计算步骤

帕斯卡加法器:一种齿轮装置,能做6位加法和减法

莱布尼兹:提出二进制,其加法器能够进行四则运算,到1

巴贝奇:制作出差分机,机器分位堆栈运算器控制器

Hollerith制表机,电子穿孔卡片汇总

电气元件的计算机原型:Z1、Z2、Z3 Zuse发明的

普遍认为的“第一台计算机”——ENIAC

缺点:不是存储程序式的计算机,编程通过手工插接线进行

从ENIAC到EDVAC——电子离散变量自动计算机

John von Neumann发明世界第一台存储程序计算机,是现代所有计算机的原型和范本

计算机发展目标

早期目标:如何实现自动的计算

当前目标:如何降低计算的成本

第一代计算机 1940~1950

使用真空管存储数据,响应比机械快,体积大、耗能高、易烧坏

第二代计算机 1950~

贝尔实验室发明晶体管存储数据,体积小,成本和功耗低

产生了不可移植的操作系统,产生了Fortran、Cobol

第三代计算机 1965~

德州仪器发明集成电路,操作系统可移植,产生了C语言

第四代计算机 1970~

超大规模集成电路,更快更小更便宜

摩尔定律

芯片密度每18个月增加一倍,CPU性价比大约18个月翻一番

计算机分类

微型计算机(Workstation、PC)

服务器(小型机,中型机)

大型计算机、巨型计算机(超级计算机)

新型计算模式——云计算

未来的计算——从摩尔定律到量子计算机

摩尔定律还能坚持多久?

遇到的障碍:散热、晶体管大小限制、电泄漏

摩尔定律失效以后

全新的计算机理论和计算模式:量子计算机、生物计算机

量子计算

量子计算的提出:Richard Phillips Feynman 提出利用量子体系实现通用计算的想法

模拟量子物理世界所需的计算能力远远超过了经典计算机所能达到的能力

经典计算:一个比特某一时刻只能保持一种状态(0或1),例:n个比特某一时刻只能存储2^n个数之一,计算过程是接受一个输入数据,完成一次运算,输出一个结果

量子计算:一个量子比特可以同时保持多种状态,例:n个量子比特某一时刻可存储全部2n个数,计算过程是同时接受2n个输入数据,同时完成运算,输出2^n个结果

实现难点:与外界环境隔离才能保持良好的相干性⬅️矛盾➡️与外界环境良好耦合才能控制演化并读出结果

计算机领域的十五年周期律

1965 大型机的出现 1980 计算机的普及 1995 互联网的普及

Coursera课程笔记----计算导论与C语言基础----Week 2的更多相关文章

  1. Coursera课程笔记----计算导论与C语言基础----Week 6

    理性认识C程序 导论(Week 6) 明确学习进度 讲课内容 感性➡️理性➡️函数➡️指针等 作业练习 初级阶段 ➡️正常作业练习 C语言的由来 程序设计语言的分类 低级语言之机器语言 0010101 ...

  2. Coursera课程笔记----计算导论与C语言基础----Week 8

    C语言中的运算成分(Week 8) 赋值运算符 "="赋值运算符 给赋值号左边的变量赋予数值 在变量定义的同时可以为变量赋初值 要点一:两面类型不同 若=两边的类型不一致,赋值时要 ...

  3. Coursera课程笔记----计算导论与C语言基础----Week 7

    C语言中的数据成分(Week7) 内存 把内存想象成长带,带子上有许多方格,每个方格有8位(8bit) 2^10 = 1024 1B = 8 b 1KB = 1024Byte MB.GB.TB.PB- ...

  4. Coursera课程笔记----计算导论与C语言基础----Week 4

    感性认识计算机程序(Week 4) 引入 编程序 = 给计算机设计好运行步骤 程序 = 人们用来告诉计算机应该做什么的东西 问题➡️该告诉计算机什么?用什么形式告诉? 如果要创造一门"程序设 ...

  5. Coursera课程笔记----计算导论与C语言基础----Week 9

    C语言中的控制成分(Week 9) 计算机程序的基本结构 任何具有单入口单出口的程序,都可以用顺序结构.分支结构.循环结构来表达 分支语句 在执行if语句前,先对表达式求解 if()内可以是任意的数值 ...

  6. Coursera课程笔记----计算导论与C语言基础----Week 3

    存储程序式计算机 冯·诺伊曼式计算机 "关于EDVAC的报告草案" 组成:控制器(协调工作).运算器(算数&逻辑运算).存储器(存储操作信息和中间结果).输入设备.输出设备 ...

  7. Coursera课程笔记----计算导论与C语言基础----Week 1

    计算机的基本原理(Week 1) 第一次数学危机 公元前500年,毕达哥拉斯学派,他们相信数是万物的本源:一切数均可表示成整数或者整数之比 然而毕达哥拉斯证明了勾股定理,某些直角三角形的三边比不能用整 ...

  8. Coursera课程笔记----计算导论与C语言基础----Week 12

    期末编程测试(Week 12) Quiz1 判断闰年 #include <iostream> using namespace std; int main() { int year; cin ...

  9. Coursera课程笔记----计算导论与C语言基础----Week 11

    C程序中的字符串(Week 11) 字符数组 所有的字符串,都是以\0结尾的 只能在数组定义并初始化的时候:char c[6] = "China"; 不能用赋值语句将一个字符串常量 ...

随机推荐

  1. Linux-设备

    一.在Linux系统中,每个设备都被当成一个文件来对待. 在Linux系统中,几乎所有的硬件设备都在/dev这个目录内.

  2. 怎样才能拥有营销号生成器功能?python帮你实现

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http ...

  3. C - Sweets Eating

    规律题 前缀和+规律 先求前缀和...答案为c[i]=arr[i]+c[i-m]//i>m时. #include<bits/stdc++.h> using namespace std ...

  4. 最短路径变形 POJ 2253

    Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sit ...

  5. Python实现按键精灵(一)-键鼠操作

    需要安装 pywin32库 pip install pywin32 import win32api import time #鼠标移动 def mouse_move(x,y): win32api.Se ...

  6. 浅析Java7中的ConcurrentHashMap

    引入ConcurrentHashMap 模拟使用hashmap在多线程场景下发生线程不安全现象 import java.util.HashMap; import java.util.Map; impo ...

  7. ASP.Net内置对象之网页之间传参(二)

    Session对象 运用于多个界面调用某一个特定的用户信息,也就是每个Session 对象是独立的,个不受影响. Session对象的读取和存储 Session[name]=”chen”; 可以用来界 ...

  8. s3fs-fuse 把 s3-like 对象存储挂载到本地

    s3fs-fuse 是一个采用 c++

  9. 聊聊JavaScript在工作中常用的方法(一)

    一.字符串转数组(split方法) 废话少说,直接上代码: //例子1 var str="abc,def,ghi"; var strArray=str.split(",& ...

  10. audio的自动播放报错解决

    使用audio标签时,当前页面没有进行交互时,比如用户刷新了页面后,play()调用就会报错,如下图 查找资料后,发现是2018年4月以后,chrome浏览器对这块进行了优化,为了节约流量,禁止了自动 ...