计算机科学导论(1):绪论
原文链接: 计算机科学导论(1):绪论 | 远行的舟
自人类历史上第一台通用电子计算机 ENIAC(Electronic Numerical Integrator and Caculator,电子数字集成器和计算器) 诞生以来,现代计算机的发展仅仅走过了 72 个年头,然而就是在这短短的七十多年时间里,它如同一头永远不知疲倦拼命向前奔跑的猛兽,不仅引领人类社会完成了从电气化时代向信息化时代的飞跃,而且在可以预见的将来,它还大有可能带领人类社会迎接高度智能化时代的到来。今天,无论我们的学习、工作还是生活,都离不开计算机,试想一下如果没有了电脑、没有了智能手机、没有了各种嵌入式设备,我们的日常将会是怎样一番不知所措的场景,我们社会单位时间内的财富生产能力将会发生怎样断崖式的下降,答案是我们无法想象。面对这样一头曾给人类社会带来深刻变革、如今又与我们形影不离的神奇猛兽,我们没法不心生敬畏,没法不满怀好奇!下面就让我们从计算机发展的历史开始,一步一个脚印,慢慢走进这个精彩纷呈的世界。
嵌入式设备是一种嵌入机械或电气系统内部、具有专一功能和实时计算性能的计算机设备。嵌入式系统常被用于高效控制许多常见设备,被嵌入的系统通常是包含数字硬件和机械部件的完整设备。现代嵌入式设备通常基于单片机(全称单片微型计算机,它是把中央处理器、存储器、定时/计数器、各种输入输出接口等集成在一块集成电路芯片上的微型计算机)。我们日常生活中常见的 IC 卡(粘贴或嵌有集成电路芯片的一种便携式卡片塑料,其中包含了微处理器、I/O 接口及存储器,提供了数据的运算、访问控制及存储功能)、ATM 机、KTV 里的点唱机、微波炉、全自动洗衣机、机顶盒、交换机、路由器、数码相机、MP4、智能玩具等等均属于嵌入式系统的范畴。
1642 年,法国著名数学家和物理学家布莱斯·帕斯卡(Blaise Pascal)发明了一台用来进行加减运算的计算机器 Pascsline.
1671 年,德国数学家戈特弗里德·莱布尼兹(Gottfried Leibnitz)在帕斯卡加减机械计算机的基础上加以改进,发明了一台可作四则运算的计算机器 Leibnitz’s Wheel.
1801 年,法国发明家约瑟夫-玛丽·雅卡尔(Joseph-Marie Jacquard)设计出了人类历史上首台可设计织布机,其可设计性体现在可以利用穿孔卡控制织布过程中经线的提升,这是人类历史上第一台利用存储和编程概念的机器。
1823 年,英国发明家查尔斯·巴贝奇(Charles Babbage)发明了可解多项式方程的差分引擎,后来他又发明了一种叫做分析引擎的机器。该机器在某种程度上和现代计算机的概念类似,它由一个类似于算术逻辑单元的制造场、一个存储单元、一个类似于控制单元的操作者和输入/输出单元构成。
1890 年,在美国人口普查办公室工作的赫尔曼·霍勒里斯(Herman Hollerith)设计并制造出了可以自动阅读、计数和排列存储在穿孔卡上数据的具有编程能力的机器。
1937 年,英国数学家、逻辑学家,计算机科学与人工智能之父阿兰·图灵(Alan Turing)首次提出了一个通用计算设备的构想,他设想所有的计算都可能在一种特殊的机器上执行,这种机器我们今天称之为图灵机(Turing machine)。阿兰·图灵将计算机定义为一种如图 1-1 所示的可编程数据处理器模型即图灵模型(Turing model),在图灵模型中,程序是一系列用来告诉计算机如何处理数据的指令。
图 1-1 可编程数据处理模型
1938 年,生活在法西斯统治下而与世隔绝的德国土木建筑工程师康拉德·朱斯(Konrad Zuse)设计出了一台机械式通用计算机 Z1,第二年他又利用一些电话公司废弃的继电器组装了一台电磁式计算机 Z2,他的工作引起德国飞机试验研究所的关注,这使他获得了一笔资金。1941 年,他使用 2600 个继电器组装了他的第二台电磁式计算机 Z3,它每秒能执行 3-4 次加法运算并能在 3-5 秒内执行一次乘法运算。1944 年,美国空军对柏林实施空袭,Z3 连同他的住宅一起被炸得支离破碎。1945年,他又建造了一台更先进的电磁式计算机 Z4,其存储器单元从 64 位扩展到 1024 位,其继电器则几乎占满了一个房间。为了使机器运行效率更高,他还设计了一种编程语言 Plankalkuel. 1995 年 12 月,85 岁的康拉德·朱斯与世长辞,他是世界上最早提出程序设计概念的人,后来的计算机史学家不禁感慨:如果康拉德·朱斯不是生活在法西斯统治下的德国,他可能早已把他的计算机升级为电子计算机,因为早在 1938 年他和他的朋友已经在考虑用 2000 个电子管和其他电子元件组装新的计算机,这样一来人类电子计算机的历史就会被改写,他的发明将属于德国而非美国。后来康拉德·朱斯创办的朱斯计算机公司于 1958 年研制出了电子管通用计算机 Z-22R,而这离世界上第一台电子管通用计算机的诞生已过去 12 年之久。
1939 年,美国人约翰·阿塔纳索夫(John V.Atanasoff)及其助手克利福德·贝里(Clifford Berry)研制出了世界上第一台主要用来解线性方程的电子计算机 ABC(Atanasoff Berry Computer)。
1944 年,耗时7年,由美国哈佛大学应用数学系教授霍华德·阿肯(Howard Aiken)受巴贝奇思想启发而设计,由 IBM 公司承建并由美国海军提供经费支持的巨型继电器式计算机交付使用,它重达 5 吨,长约 15.54米,高约 2.44 米。这是人类历史上首台自动按序控制计算器,虽然它执行一次乘法需要 6 秒,但其精度可达到小数点后 23 位。
1945 年 6 月,原籍匈牙利的美国人冯·诺依曼发表了一份长达 101 页的报告,这就是著名的 “关于 EDVAC 的报告草案”(First Draft of a Report on the EDVAC),在这份报告中提出的计算机体系结构即冯·诺依曼模型(von Neumann model)一直延用至今。图 1-2 展示了冯·诺依曼模型,它由算术逻辑单元(ALU)、控制单元、存储器、输入/输出单元五大部分构成。在图灵机的基础上,冯·诺依曼创造性地指出:由于程序和数据在逻辑上是相同的,因此程序也能存储在计算机的存储器中。
算术逻辑单元:用来对数据进行算术运算和逻辑运算
控制单元:用来控制存储器、算术逻辑单元、输入/输出单元的操作
存储器:用来存储数据和程序
输入/输出单元:用来从计算机外部接收数据和程序并将处理结果输出到计算机外部,值得注意的是辅助存储设备如磁盘和磁带也属于输入/输出单元的范畴
图 1-2 冯·诺依曼模型
1946 年 2 月 14 日,这是一个无论怎么强调也不为过的日子,在这个无数男男女女享受着无尽甜蜜与幸福的日子里,美国人约翰·莫奇勒(John Mauchly)和普雷斯波·埃克特(J.Presper Eckert)发明的世界上第一台通用的、完全电子的十进制计算机 ENIAC 在美国宾夕法尼亚大学诞生。这台因战争的迫切需要、耗资 48 万美元研制成功的庞然大物重达 30 吨,长约 30.48 米,宽约 6 米,高约 2.4 米,占地面积约 170 平方米。它包含 17468 根电子管、7200 根晶体管、1500 个中转、70000 个电阻器、10000 个电容器、1500 个继电器和 6000 多个开关,计算速度达到每秒 5000 次加法或 400 次乘法,是使用继电器运转的机电式计算机的 1000 倍,手工计算的 20 万倍。ENIAC 的研制成功宣告了一个崭新时代的到来,从此人类的计算能力被机器远远地甩在身后,今天我们运算速度最快的超级计算机的峰值计算能力已达到每秒 12.5 亿亿次,持续计算能力也已达到每秒 9.3 亿亿次。
1949 年 5 月 6 日,英国剑桥大学的莫里斯·威尔克斯(Maurice Wilkes)基于冯·诺依曼模型制造了世界上第一台商用的程序内藏式电子计算机 EDSAC(Electronic Delay Storage Automatic Calculator,电子延迟存储自动计算机),与此同时的 1949 年 8 月,约翰·莫奇勒(John Mauchly)和普雷斯波·埃克特(J.Presper Eckert)基于冯·诺依曼模型建造了一台通用、完全电子的二进制计算机 EDVAC(Electronic Discrete Variable Automatic Computer,离散变量自动电子计算机)也研制完成。
自 1950 年开始后出现的几乎所有计算机均基于冯·诺依曼模型,它们先后经历电子管时代、晶体管时代、集成电路(晶体管、导线及其他部件做在一块单芯片上)时代的发展,速度变得越来越快、体积变得越来越小、价格变得越来越便宜,但原理几乎相同。
我们可以把今天的计算机看作三大部分的结合体,即计算机硬件、数据和计算机软件,当今的计算机硬件基于冯·诺依曼模型,冯·诺依曼模型清楚地将一台计算机定义为一台数据处理器(data processor),处理数据的任务由程序完成,而各种各样不同的程序(算法、计算机语言、操作系统等)则构成计算机软件。
计算机科学导论(1):绪论相关推荐
- 计算机科学导论-绪论
大一软件工程新生,曾经学过c语言,想要了解c语言的处理原理,减少出错. 本博客内容和图片来自于 佛罗赞的 计算机科学导论一书. 1.1 图灵模型 是图灵所设想的一种机器,可以完成某些计算,但图灵着重于 ...
- 计算机科学文章,计算机科学导论论文范文
论文关键字: 计算科学 计算学科 计算机语言 计算机软件 网络和病毒 论文摘要:计算科学主要讲述了一种科学的思想方法,计算科学的基本概念.基本知识它的发展主线.学科分支.还有计算科学的特点.发展规律和 ...
- 计算机科学导论【第四版】读书笔记 (一)
计算机科学导论[第四版]读书笔记 (一) 绪论 基于图灵模型的计算机 图灵模型假设各种各样的运算都能够通过一种特殊的机器来完成,图灵机的模型是基于各种运算过程的.图灵模型把运算的过程从计算机器中分离开 ...
- 计算机科学导论(原书第三版)框架总结
计算机科学导论 文章目录 计算机科学导论 绪论 数字系统 数据存储 数据运算 计算机组成 计算机网络和因特网 操作系统 算法 程序设计语言 软件工程 数据结构 抽象数据类型 文件结构 数据库 数据压缩 ...
- 计算机科学导论+刘艺+pdf,计算机科学导论(机械工业出版社)刘艺 瞿高峰 习题答案.doc...
计算机科学导论(机械工业出版社)刘艺 瞿高峰 习题答案.doc 以下答案为查阅多方资料做的,仅供参考. 第一章 绪论 1. 和计算机相关的问题. 2. 冯.诺依曼模型. 3. 第一点:尽管这个模型能够 ...
- 读书笔记——计算机科学导论
计算机科学导论-读书笔记 第一章 绪论 一.学习目标 1.定义计算机的图灵模型, 2.定义计算机的冯诺依曼模型 3.描述计算机的三大部分:硬件.数据和软件 4.列举与计算机硬件.软件.数据相关的话题 ...
- 《计算机科学导论》一1.1 图灵模型
本节书摘来华章计算机<计算机科学导论>一书中的第1章 ,第1.1节,[美]贝赫鲁兹A. 佛罗赞(Behrouz A. Forouzan)著 刘艺刘哲雨等译, 更多章节内容可以访问云栖社区& ...
- 《计算机科学导论》一2.3 非位置化数字系统
本节书摘来华章计算机<计算机科学导论>一书中的第2章 ,第2.3节,[美]贝赫鲁兹A. 佛罗赞(Behrouz A. Forouzan)著 刘艺刘哲雨等译, 更多章节内容可以访问云栖社区& ...
- 计算机科学导论 第4版,计算机科学导论.第4版
摘要: <计算机科学导论(第4版)/高等院校计算机教育系列教材>从理论讲解和应用推广的角度出发,严格根据教育部高教司主持评审的<中国计算机科学与技术学科教程2002>进行编写, ...
最新文章
- How to create a site with AJAX enabled in MVC framework.
- 链表--只知道当前节点指针删除当前节点
- mysql 免安装重装_MYSQL的免安装的重装
- Android实战——第三方服务之Bmob后端云的推送服务的集成和使用(三)
- mybatis insert 动态生成插入的列及插入的值
- api es7 删除所有数据_【Elasticsearch7.0】文档接口之查询delete接口
- Mongodb-副本集
- P+XS算法中Dirac comb的解释
- VS2012 安装番茄助手
- cubieboard mysql_Cubieboard开发笔记
- 数据中台的云原生机会 | 甲子光年
- windows7远程桌面
- 视频播放 (二) 自定义 MediaPlayer
- 异常java.lang.IllegalArgumentException: Validation failed for query for method public abstract
- 如何写好需求分析:需求规格说明书(ISO标准版)
- STC89C52开发学习(一)
- 爆改父亲留下的IBM,这个纨绔富二代开创了计算机神话
- 511遇见易语言API模块视频教程取所有子窗口句柄
- Safety-Gym环境配置与安装
- 使用事件查看器进行windows补丁安装状态确认