第1章+前世今生-计算与计算机_第1页
第1章+前世今生-计算与计算机_第2页
第1章+前世今生-计算与计算机_第3页
第1章+前世今生-计算与计算机_第4页
第1章+前世今生-计算与计算机_第5页
已阅读5页,还剩115页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章前世今生

--计算与计算机学习目标理解计算和计算机器理解计算机科学和计算机科学中的经典问题熟悉计算机硬件和软件发展的历史和趋势了解计算机用户角色的转换了解系统程序员和应用程序员掌握计算机系统的概念掌握计算机系统的分层结构掌握计算机的特点、分类理解计算机对生活方式的改变了解计算机的应用领域内容提要认识计算机和计算机科学计算机的发展从计算工具到计算机计算机硬件发展计算机软件发展计算机系统及其抽象分层计算机的特点及分类计算机与社会什么是计算?1.1.1计算与计算机计算是“数据”在“运算符”的操作下,按“规则”进行的数据变换3+5=8各种计算“规则”越来越复杂,加减运算、对数运算、指数运算、微积分运算......除了学规则外,还要应用这些“规则”来求解各种问题“规则”可以学习,但是应用“规则”来求解问题有时却超出了人的计算能力…知道规则,很难(或者没有办法)通过人工计算得到结果化简,把复杂问题化简为简单规则的组合设计一种机器,代替人工计算用来帮助人们计算的机器称为计算机等式数目比未知数数目少;要求找出对所有等式都成立的整数组合问题?(1)哪些问题可以自动计算?哪些问题可以在有限时间、有限空间内自动计算?算法分析(2)如何低成本、高效地实现自动计算?构建计算机器(3)如何方便有效地利用计算机器进行计算。计算机的应用1.1.2计算机科学研究计算机器和可计算系统的理论方面的学科,包括:计算系统的硬件设计与构造、发现和提出新的问题、寻找新问题的求解算法、发现和设计使用计算机的新方式围绕如何构造各种计算机器

应用各种计算机器理解计算系统是如何工作的?理解如何利用计算系统来控制和处理现实世界的各种事物?计算思维(ComputationalThinking)Learning<->Doing<->Thinking1.1.3计算机科学中的经典问题经典问题往往以深入浅出的形式来表达深奥的科学规律和本质内容,在学科研究中常常用来辅助说明思想、原理、方法和技术哥尼斯堡七桥问题与图论哲学家就餐问题与资源管理汉诺塔问题与可计算性证比求易问题与并行计算TSP问题与组合爆炸问题两军问题与计算机网络图灵测试与人工智能Story1哥尼斯堡七桥问题与图论哥尼斯堡七桥问题与图论欧拉回路的判定规则:(1)如果通奇数桥的地方多于两个,则不存在欧拉回路;(2)如果只有两个地方通奇数桥,可以从这两个地方之一出发,找到欧拉回路;(3)如果没有一个地方是通奇数桥的,则无论从哪里出发,都能找到欧拉回路。CADB“七桥”是图论研究的开始,图论已广泛应用在计算学科、运筹学、控制论、信息论等学科中抽象是提取问题中最本质的东西,忽视问题非本质的东西哈密顿回路问题哈密顿回路:要求从一个城市出发,经过每个城市恰好一次,然后回到出发城市。1983141202131545679101112161718尚未找到图G是否存在哈密顿回路的充分必要条件Story2哲学家共餐问题与资源管理

哲学家的生活进程可表示为:(1)思考问题;(2)饿了停止思考,左手拿起一只筷子(如果左侧哲学家已持有它,则等待);(3)右手拿起一只筷子(如果右侧哲学家已持有它,则等待);(4)进餐;(5)放下左手筷子;(6)放下右手筷子;(7)重新回到状态(1)思考问题;哲学家共餐问题与资源管理程序并发执行时进程同步的两个关键问题——死锁和资源耗尽:(1)按哲学家的生活进程,当所有的哲学家都同时拿起左手筷子时,则所有哲学家都将拿不到右手筷子,并处于等待状态,那么,哲学家都将无法进餐,最终饿死。(2)将哲学家的生活进程修改为当拿不到右手筷子时,就放下左手筷子。但是,可能在一个瞬间,所有的哲学家都同时拿起左手筷子,则自然拿不到右手筷子,于是都同时放下左手筷子,等一会,又同时拿起左手筷子,如此重复下去,则所有的哲学家都将无法进餐。操作系统必须彻底解决由于资源共享而产生的--竞争问题!Story3汉诺塔问题与可计算性在世界刚被创建的时候有一座钻石宝塔(塔A),其上有64个金碟。所有碟子按从大到小的次序从塔底堆放至塔顶。紧挨着这座塔有另外两个钻石宝塔(塔B和塔C)。从世界创始之日起,婆罗门的牧师们就一直在试图把塔A上的碟子移动到塔C上去,其间借助于塔B的帮助。每次只能移动一个碟子,任何时候都不能把一个碟子放在比它小的碟子上面。当牧师们完成任务时,世界末日也就到了。汉诺塔问题与可计算性BABCABCAACABC(a)(b)(c)(d)汉诺塔问题与可计算性n个碟子的汉诺塔问题需要移动的碟子数是n-1第一步为,第二步为1,第三步为。因此:汉诺塔问题与可计算性●64个碟子的汉诺塔问题,需要移动的碟子数为:

264-1=18,446,744,073,709,551,615●

如果每秒移动一次,一年有31,536,000秒,则僧侣们一刻不停地来回移动,也需要花费5849亿年的时间●假定计算机以每秒1000万个碟子的速度进行移动,则需要花费58,490年的时间。理论上可以计算的问题,实际上并不一定能行,这属于计算复杂性领域的研究内容。将可以在多项式时间内求解的问题看作是易解问题,可以在可接受的时间内实现问题求解;将需要指数时间求解的问题看作是难解问题,计算时间随着问题规模的增长而快速增长计算问题分为可计算(理论上可计算&时间上可计算)与不可计算从前,有一个酷爱数学的年轻国王艾述向邻国一位聪明美丽的公主秋碧贞楠求婚。公主出了这样一道题:求出48770428433377171的一个真因子。若国王能在一天之内求出答案,公主便接受他的求婚。国王回去后立即开始逐个数地进行计算,他从早到晚,共算了三万多个数,最终还是没有结果。国王向公主求情,公主将答案相告:233092827是它的一个真因子。国王很快就验证了这个数确能除尽48770428433377171这个数。公主说:“我再给你一次机会,如果这次你还求不出来,将来你只好做我的证婚人了。”Story4证比求易问题与并行计算证比求易问题与并行计算国王立即回国,向时任宰相的大数学家孔唤石求教,大数学家在仔细地思考后认为一个17位的数,其最小的一个真因子不会超过9位,于是,他给国王出了一个主意:按自然数的顺序给全国的老百姓每人编一个号发下去,等公主给出数目后,立即将它通报全国,让每个老百姓用自己的编号去除这个数,除尽了就立即上报,赏金两万。经过宰相孔唤石的指点,国王最终求婚成功。证比求易问题●

在计算复杂性领域中,一般认为求解一个问题往往比较困难,但验证一个问题相对来说就比较容易——证比求易。●求大整数S=48770428433377171的因子是个难解问题,但是验证a=223,092,871是不是大整数S的因子却很容易;●求一个线性方程组的解可能很困难,但是验证一组值是否是方程组的解却很容易。

当将一个问题分解到多个处理器上解决时,由于算法中不可避免地存在必须串行执行的操作,从而大大地限制了并行计算机系统的加速能力。就难解性问题而言,单纯地提高计算机系统的速度是远远不够的,而降低算法的复杂度的数量级才是最关键的。Story5TSP问题与组合爆炸TSP问题(又称货郎担问题、邮递员问题、售货员问题)是数学家克克曼于19世纪初提出的一个数学问题,是指旅行家要旅行n个城市然后回到出发城市,要求各个城市经历且仅经历一次,并要求所走的路程最短。由于TSP问题有着貌似简单的表述、重要的应用、以及和其他NP完全问题的重要关系,它在近200年的时间里强烈地吸引着计算机科学工作者。TSP问题8abdc23571否18a→d→c→b→a6否23a→d→b→c→a5是11a→c→d→b→a4否23a→c→b→d→a3是11a→b→d→c→a2否18a→b→c→d→a1是否最短路径长度路径序号●10城市的TSP问题有大约180,000个可能解。●

20城市的TSP问题有大约60,000,000,000,000,000个可能解。●

50城市的TSP问题有大约1062个可能解,而一个行星上也只有1021升水。TSP问题对于具有n个顶点的TSP问题,可能的解有:

(n-1)!/2个。

组合爆炸●组合优化问题:寻找一个组合对象,比如一个排列或一个组合,这个对象能够满足特定的约束条件并使得某个目标函数取得极值。●无论从理论的观点还是实践的观点,组合优化问题都是计算领域中最难的问题,其原因是:(1)随着问题规模的增大,组合对象的数量增长产生组合爆炸;(2)还没有一种已知算法能在可接受的时间内,精确地求解绝大多数这类问题。Story6

两军问题与计算机网络一支白军被围困在一个山谷中,山谷的两侧是蓝军。困在山谷中的白军人数多于山谷两侧的任一支蓝军,而少于两支蓝军的总和。若一支蓝军对白军单独发起进攻,则必败无疑;但若两支蓝军同时发起进攻,则可取胜。两支蓝军希望同时发起进攻,这样他们就要传递信息,以确定发起攻击的具体时间。假设他们只能派谴士兵穿越白军所在的山谷(惟一的通信信道)来传递信息,那么在穿越山谷时,士兵有可能被俘,从而造成消息的丢失。现在的问题是:如何通信,以便蓝军必胜。不存在使蓝军必胜的通信约定(协议)两军问题与计算机网络网络协议(简称协议),是为网络中的数据交换而建立的规则、标准或约定的集合互联网软件的分层结构计算机网络云服务Story7图灵测试与人工智能提问者回答者A

回答者B“机器能思考吗?”人工智能分布式的控制系统将很多模式的识别和决策分配给了现场的控制设备,这些控制设备对生产过程所产生的数据以及背后的模式会有深刻的了解,进而做出代替人脑的智能判断我们虽然可以对语言进行准确的识别,但是人类表达中那些微妙语意,以及语言背后的情感和双关语是机器今天无法理解的,关于语意的识别需要构建更新的类似人脑的模式分辨方式和新的学习系统人工智能研究方向一在人工智能方面,有两个主要的研究方向:一种是采用传统的编程技术,使系统呈现智能的效果,而不考虑所用方法是否与人或动物机体所用的方法相同,这种方法叫工程学方法,这一方面的成果是极其显著的。包括科大讯飞的语音识别,还有IBM的人机大战的成功,都属于工程学的方法。人工智能研究方向二另一种是模拟法,与人类或生物机体所用的方法相同或类似:原则是编程者为每一个角色设计一个智能系统来进行控制,这个智能系统可能开始时候什么也不懂,就像出生婴儿一样,但是它能够快速学习,逐渐适应环境,甚至通过犯错不断吸取教训,下一次运行的时候就能改正,至少不会永远错下去……遗传算法和人工神经网络,都属于这个范畴。因为第一种工程学的方法会占用大量的计算资源,而当我们考察人脑的运行方式的时候,会发现它更接近模型法。其实在实时处理庞大的数据方面,虽然人脑略逊一筹,而且运行速度也比较慢,也不够精确,但是在识别、解释和根据模式做出反应方面,人脑却是当前的计算机根本无法代替的。而且整个大脑耗费的能源与一个20W的灯泡相当,所占体积也不足2L,但是在大规模计算机系统,99%的系统分给了供电和降温,仅用1%来处理信息。因此科学家们一直试图模拟人脑工作的芯片,IBM在这方面已经获得了关键突破,2014年8月,IBM对外宣称,他们开发的新一代芯片TrueNorth,采用模拟人脑结构中的神经突触内核,其芯片采用了54亿个晶体管。是传统PC处理的4倍以上,其效果相当于100万个神经元和2.56亿个突触。每一个结构都能使用一种名叫Crossbar的通信模式来存储处理,并向其他结构传输数据,每一个这样的内核都使用了事件驱动设计,也就是说它不会一直运行,只有在需要的时候次才会启动,从而使得芯片运行更节能。1.2计算机的发展了解历史可以了解技术的进步、解释为什么计算机是今天这个样子,对我们有什么启示,为进一步发展奠定了基础计算涉及到数据、规则和规则的执行,计算机器必须解决的问题数据如何表示、如何存储及自动存储;计算规则如何表示、如何执行及自动执行不同的发展阶段体现了对这些问题的解决方式计算辅助工具Pascal机械计算机:自动计算--固定的计算规则Babbage机械计算机:(特定)程序--可有限变化的计算规则现代计算机:一般程序--任意可变的计算规则计算机器的简要发展历程从表示-自动存储-自动执行计算机的发展历史(年代)手动式计算工具20世纪60年代机械式计算工具1642年1886年机电式计算机20世纪30年代电子计算机元代1300年算盘远古1832年分析机计算器计算机的硬件发展计算机的前世——手工计算工具——机械式计算工具——机电式计算机计算机的今生电子——计算机是一种电子设备数字——计算机内部是二进制数字世界计算机的未来●中国:结绳记事算筹算盘●英国:Napier算筹

计算尺●计算工具:手指算筹

●运算:加减运算乘除运算乘方、开方、三角函数算盘计算尺早期历史——手工计算工具跳过详细内容到机械式计算工具早期历史——手工计算工具英国的巨石柱群(Stonehenge):多年来,科学家与考古学家对于在西欧许多地区发现的由石块围成的圆圈非常感兴趣.其中英国的巨石柱群是最典型的例子,其石块位置与太阳位置之间的关联使得有人将巨石柱群描绘成一部天文电脑。早期历史——手工计算工具算筹:第一个人造计算工具。

我国古代劳动人民最先创造和使用了这种简单的计算工具。

南北朝时期,祖冲之用算筹作为计算工具将圆周率精确到3.1415926和3.1415927之间。春秋战国时期

祖冲之(429—500年)

算盘:计算工具发展史上第一次重大改革。●我国古代劳动人民创造的。●在英语中,算盘有两种拼法:abacus和Suan-Pan。

算盘由算筹演变而来,并且和算筹并存竞争了一个时期,终于在元代后期取代了算筹。元代后期早期历史——手工计算工具早期历史——手工计算工具纳皮尔Napier算筹:英国人发明。

用加法操作来实现乘法操作。

1617年……数学原理:根据对数原理,在两个圆盘的边缘标注对数刻度,然后让它们相对转动,基于对数原理用加减法来实现乘除运算。18世纪末,瓦特在尺座上添置了一个滑标。1621年对数计算尺:英国人发明。早期历史——手工计算工具早期历史——机械式计算工具1623年,德国科学家契克卡德(W.Schickard)为天文学家开普勒(Kepler)制作了一台机械计算机。这台机械计算机能做6位数加减法,还能做乘法运算帕斯卡加法器:法国人发明。背景:钟表技术、齿轮技术。帕斯卡加法器由齿轮组成、以发条为动力、通过转动齿轮来实现加减运算、用连杆实现进位。1642年启示:可以用机械工具来模拟人的思维活动。早期历史——机械式计算工具莱布尼茨四则运算器:德国人发明。工作原理同帕斯卡加法器,能进行四则运算。乘法运算采用进位-加,后来演化为二进制,被现代计算机采用。1673年需要手动上发条,然后就可以机械地实现计算——手动机械。早期历史——机械式计算工具

Jacquard织布机:法国人发明。用穿孔卡片控制纺织图案JosephJacquard(杰卡德)发明,可编程织布机,通过读取穿孔卡片上的编码信息来自动控制织布机的编织图案。不是计算设备,第一次使用了穿孔,为输入设备的出现奠定了基础20世纪70年代还在普遍使用。1804年早期历史——机械式计算工具0101001000110100011001011822年差分机:英国人(巴贝奇)发明。背景:英国工业革命,航海和天文计算。原理:任何连续函数都可以用多项式严格地逼近,例如:早期历史——机械式计算工具采用寄存器(齿轮式装置)来存储数据,使计算工具从手动机械跃入自动机械。第一次出现内存。不仅输入信息需要机械化,而且操作信息也要机械化。分析机:英国人(巴贝奇)发明。背景:瓦特发明了蒸气机。以齿轮为元件、以蒸汽为动力。虽然没有实现,但意义重大,采用了具有现代意义的装置:(1)存储装置(2)运算装置(3)控制装置(4)输入和输出装置1832年早期历史——机械式计算工具采用了与Jacquard织布机类似的卡片输入●英国著名诗人拜伦的独生女爱达•奥古斯塔为分析机编制了人类历史上第一批计算机程序。●历史上第一位程序员。●爱达和巴贝奇为计算机的发展创造了不朽的功勋,他们对计算机的预见超前了一个多世纪,正是他们的辛勤努力,为后来计算机的出现奠定了坚实的基础。爱达(Ada)早期历史——机械式计算工具制表机:美国人发明。背景:机电技术、美国人口普查,参与了美国1890年的人口普查工作第一台自动进行加减乘除运算、累计存档、制作报表的机电式计算工具。输入、输出、存储均用穿孔卡片。人类历史上第一次利用计算工具进行大规模数据的自动处理。Hollerith被称为“信息处理之父”雇佣第一批“数据录入员”来处理穿孔卡Hollerith创建了IBM公司1886年早期历史——机电式计算机机械和电子设备的总称布尔:英国数学家。他的最大发现就是用一套符号来进行逻辑演算,即布尔代数。布尔代数:关于0和1的代数系统,用基础的逻辑符号系统描述物体和概念,这为今后数字计算机开关电路设计提供了最重要的数学方法。早期历史——数字计算机的萌芽香农:1938年在MIT获得电气工程硕士学位,硕士论文题目是《继电器与开关电路的符号分析》。在布尔代数和继电器开关电路之间架起了桥梁。把布尔代数的“真”与“假”和电路系统的“开”与“关”对应起来,并用1和0表示。于是他用布尔代数分析并优化开关电路,这就奠定了数字电路的理论基础。早期历史——数字计算机的萌芽用于复数计算的全电磁式计算机model-K:美国斯蒂比兹(G.Stibitz)制造将电传打字机用电话线连接上远在纽约的计算机,异地操作进行复数计算,实现了计算机的远程通信。是实现计算机远程遥控的第一人,而且也是举世公认的“数字计算机之父”。早期历史——机电式计算机Z系列计算机:德国人发明朱斯(K.Zuse):第一个采用电器元件制造计算机先后研制出Z-1、Z-2、Z-3、Z-4第一台采用二进制和继电器的通用程序计算机。二进制、浮点记数法、带存储地址的指令等思想已经有人提出,但朱斯第一次将这些思想具体实现。成立了朱斯计算机公司1938年早期历史——数字计算机的萌芽巨人计算机:英国人制造1941年,朱斯向德国政府申请基金用来建造计算机,用于破译敌人的密码,德国政府没有批准。与此同时,英国政府秘密组建一个由科学家和工程师组成的绝密小组,他参与了世界上最早的电子计算机的研制工作。1943年,图灵等人研制成功Colossus(巨人计算机),使得英国军方能够窃取并破译德国的军事情报。1943年早期历史——数字计算机的萌芽图灵:英国著名的数学家和逻辑学家,被称为计算机科学之父、人工智能之父,是计算机逻辑的奠基者。人们为纪念其在计算机领域的卓越贡献而设立“图灵奖”。1945年,提出了通用计算机的概念1947年,提出自动程序设计的思想1950年,提出关于机器思维的问题,他的论文“机器能够思维吗?引起了广泛的注意和深远的影响。1952年,写了一个国际象棋程序。早期历史——数字计算机的萌芽控制论之父:维纳一战期间,在阿贝丁试炮场,为高射炮编制射程表1940年,维纳提出:现代计算机应该是数字式的、由电子元件构成、采用二进制、内部存储数据1948年,维纳发表《控制论》早期历史——数字计算机的萌芽MARK-I:美国人1944年研制成功。是世界上第一台大型通用自动数字计算机哈佛大学数学教授霍华德·艾肯在读过巴贝奇和爱达的笔记后,被巴贝奇的远见卓识所震惊,提出用机电的方法,而不是纯机械的方法来实现分析机。在IBM的资助下完成的1936年早期历史——数字计算机的出现MARK-I部分继电器,MARK-II全部采用继电器MARK-III采用电子管早期历史——数字计算机的出现ENAIC:1946年,第一台真正运转的数字计算机,冯.诺伊曼做顾问ENIAC致命的缺陷有两个:一是没有存储器;二是用布线接板进行控制冯.诺伊曼开始致力于另一台著名机器EDVAC的建造,通常称为冯.诺伊曼机此时,明确提出计算机的五大部件,并用二进制代替十进制运算1.2.2计算机的今生计算机是用来进行高速计算的电子计算机器计算机要解决的几个问题“控制与计算”----微处理器,又称CPU(CentralProcessingUnit)“输入”----如何将外部信息输入到计算机中?“输出”----如何将计算机中信息输出到外界(显示或打印)?“永久存储与临时存储”----如何将计算机中的信息永久保存或临时保存?计算机的发展是伴随着构成计算机的元器件和各个构成部件的发展而发展电子管:可自动控制0和1变化的元件晶体管集成电路:可自动实现一定变换的元件超大规模集成电路(VLSI)元器件的发展计算的控制体积越来越小;可靠性越来越高;电路规模越来越大;速度越来越快;功能越来越强大;元器件的发展对我们的启示从输入变换到输出从单个到复杂系统微处理器字长。CPU一次操作所能处理的二进制数据的位数称为字长。微处理器的字长从早期的4位、8位、16位发展到现在的32位、64位和128位等。主频。CPU每秒所能完成操作的次数称为主频,是CPU工作的时钟频率。第一台计算机主频只有4.77MHz,发展到几十MHz、几百MHz、几GHz,现在已经达到几十GHz。晶体管数量。由于光刻技术、纳刻技术的发展,微处理器芯片上晶体管的数目不断增多,第一台计算机有18000个电子管,发展为几十万只、几百万只、几千万只、几亿只,现在已经超过几十亿只。微处理器:将运算和执行部件集成在一块芯片上,称为中央处理单元(CentralProcessingUnit,CPU)输入设备穿孔卡片(0和1的输入)

键盘(文字符号的输入)

鼠标(点输入)

扫描仪(纸质文档/图像的输入)

触摸屏(人对屏幕上图形的直接控制)

语言输入(自动识别人的语音)

体感设备(感知人体的动作输入)

物联网(感知周围环境变化的输入)输出设备显示器CRT

光栅扫描显示器

数字光栅扫描显示器

液晶显示器

等离子显示器

三维显示器

触控显示器等打印机存储设备汞延迟线磁芯、磁带和磁鼓“温彻斯特”硬盘SerialATA接口的硬盘CD-ROM光盘驱动器DVD光盘FlashRAM、MultimediaCard、USBremovabledisk、固态硬盘、纳米存储、量子存储等。从微处理器使用的元器件可以把计算机分为4代,同时伴随的是各部件的发展由于计算机仍然在使用电路板,仍然在使用微处理器,仍然没有突破冯·诺依曼体系结构,所以,我们还不能为这一代计算机画上休止符。1946年1959年1965年1971年第一代计算机第二代计算机第三代计算机第四代计算机计算机的发展标志:1946年ENIAC。电子元件:电子管。主存储器:磁鼓,辅助存储设备:磁带外设:输入设备:穿孔卡片

输出设备:穿孔卡片或行式打印机所需环境:可控制温度的机房。重大事件:1951年问世的UNIVAC准确预测了1952年美国大选艾森豪威尔获胜;1952年IBM生产第一批商业化计算机IBM701。用户:政府和银行,主要用于科学计算第一代计算机(1946-1959)UNIVAC计算机:第一款商用计算机奠定了计算机工业的基础用于美国人口普查局、美国总统大选莫克利埃克特第一代计算机(1946-1959)标志:1959年菲尔克公司研制成功晶体管计算机。电子元件:晶体管(1948年美国贝尔实验室发明)主存储器:磁芯,辅助存储器:磁盘引进编址寄存器和浮点运算硬件典型的计算机:IBM7094,CDC1640等。用户:科学计算、数据处理和工业控制。计算机的发展第二代计算机(1959-1964)IBM:InternationalBusinessMachines,国际商业机器公司CDC:ControlDataCorporation,控制数据公司标志:IBM360系列计算机电子元件:集成电路主存储器:半导体存储器用户:政府机构、中小企业等重大事件:1965年DEC公司推出小型计算机PDP-8开始使用微程序设计技术,出现了终端计算机的发展第三代计算机(1965-1971)DEC:DigitalEquipmentCorporation,数字设备公司摩尔定律:一个集成电路板上能够容纳的电路的数量每年增长一倍。集成电路:将大量的晶体管和电子线路集成在一块硅片上,因此也称芯片。标志:Intel公司研制的微处理器Intel4004电子元件:大规模和超大规模集成电路重大事件:微型计算机——PC机的出现工作站——Sun公司推出Risc工作站,使用unix巨型计算机——“银河”亿次巨型计算机。用户:各行各业,男女老少。计算机的发展第四代计算机(1971-至今)70年代末,出现了个人计算机:IBMPC是1981年面世1976年苹果公司成立,推出APPLEI;1977年推出非常受欢迎的的APPLEII;性能好、价格低,时价相当于一台高档家电。微型计算机的发展微型计算机的诞生1984年,Macintosh问世,第一部正式上市的图形界面和桌面概念的计算机,开创了图形界面的先河!后来逐步推出iPod音乐播放器、iTunes音乐商店、iPhone手机以及最新推出的iPad平板计算机等知名产品1.2.3计算机的未来现在看来,70年前的ENIAC非常原始,将来也会觉得今天最好的计算机很原始。未来的计算机是什么样子的,观察目前实验室里的研究成果可见一般计算机的发展趋势1.高性能计算——无所不能的计算发展高速度、大容量、功能强的超级计算机,用于处理庞大而复杂的问题。制超级计算机的技术水平体现了一个国家的综合国力,因此,超级计算机的研制是各国在高技术领域竞争的热点。在市场驱动下,超级计算机正从科学计算向经济和商业各个领域扩展,用于商业的超级计算机,其数量急剧增加,最高性能已突破万亿次。应用:航天工程、基因工程、石油勘探等。普适计算(PervasiveComputing)是指任何时间任何地点都可以进行计算,强调和环境融为一体的计算,而计算机本身则从人们的视线里消失。普适计算彻底改变了“人使用计算机”的传统方式,让人与计算环境更好地融合在一起,在不知不觉中达到“计算机为人服务”的目的。实现普适计算需要解决的问题包括:①随时随地的联网问题;②各种设备、设施的感知和控制问题,即嵌入式技术;③普适计算模型问题,众多设备、设施联网后,如何进行控制:统一控制、分布控制、自治控制还是远程控制等。计算机的发展趋势2.普适计算——无所不在的计算服务属于商业范畴,计算属于技术范畴,服务计算是商业与技术的融合。服务计算就是把计算当成一种服务提供给用户。传统的计算模式需要购置必要的计算设备和软件,不计算的时候,设备和软件就处于闲置状态。如果将计算资源,如计算节点、存储节点、软件等集中起来,提供给需要的用户使用,用户可以按需定制、按需使用资源,这就是云计算(CloudComputing)的概念。按计算资源的类型,云计算可以分为3种模式:①基础设施即服务:将硬件部分,如计算节点、存储节点等按服务提供;②平台即服务:将操作系统、中间件等按服务提供;③软件即服务:将应用软件按服务提供。计算机的发展趋势3.服务计算与云计算:万事皆服务的计算物联网相当于带有神经系统的互联网,通过各种传感器感知物体的各种信息,传送到互联网上,供人们访问,使得物体与物体、物体与人、人与人相互连接。计算机的发展趋势4.物联网计算机的发展趋势:手动机械化自动化智能化;计算机在很多方面,如复杂、量大的计算方面比人更快,在哪些方面不如人类:模式识别、联想、推理等?如何让计算机具有人脑的智能,模拟人的推理、联想和思维等功能,研制出具有某些情感和智力的计算机,使计算机在人类生活中扮演着更加重要的角色。应用:人和计算机无障碍交流,例如写程序。智能计算机是把信息采集、存储、处理、通信和人工智能结合在一起的计算机系统,由以处理数据信息为主,转向以处理知识信息为主,并有推理、联想和学习人工智能方面的能力,能帮助人类开拓未来的知识领域和获取新的知识。情感计算机,能理解人类吗?计算机的发展趋势5.智能计算背景:集成电路的发展正在(或已经)接近理论极限。新型计算机可能会突破现有计算机的体系结构。新一代计算机是微电子技术、光学技术、超导技术、电子仿生技术等多学科相结合的产物。能进行知识处理、自动编程、测试和排错,以及用自然语言、图形、声音和文字进行输入和输出。生物计算机——用蛋白分子做芯片;光计算机——用光作为信息的载体;量子计算机——用量子来表示信息;……计算机的发展趋势6.新型计算计算机软件的发展自计算机诞生之日起,人们探索的重点不仅在于建造运算速度更快、处理能力更强的计算机还在于开发能让人们更有效地使用这种计算设备的各种软件软件使计算机硬件富有生命力在硬件上面加上一层又一层的软件(即控制机器处理不同问题的程序),功能就得到扩展和延伸。有了软件,人们能够以更简单的方法来解决更复杂的问题。了解软件发展的历史,可以理解如何构造软件、软件如何运行计算机软件发展第一代程序是用机器语言编写的机器语言就是内置在计算机电路中的指令,由0和1组成程序设计人员必须记住每种二进制数字的组合表示什么使用机器语言的程序设计人员要对数字非常敏感,而且要非常细心。缺点:用机器语言进行程序设计不仅耗时,而且容易出错第一代软件(1951-1959)计算机硬件

硬件软件机器语言

出现了汇编语言使用助记符表示每条机器语言指令出现了系统程序员和应用程序员第一代软件(1951-1959)计算机硬件

硬件软件语言翻译程序

汇编语言

机器语言计算机软件发展第二代软件是由高级语言编写的指令类似于英语句子和算术表达式,使编程更容易最早的两种语言:FORTRAN(为数学应用程序设计的语言)和COBOL(为商业应用程序设计的语言)第二代软件(1959-1965)优点:高级语言的出现使得在多台计算机上运行同一个程序称为可能缺点:随着在硬件层上附件的软件变得越来越复杂,应用程序员离计算机硬件越来越远了FORTRAN——第一个高级语言1954年,约翰·巴克斯领导的小组开发出第一个高级程序设计语言Fortran,大大提高了程序开发效率Fortran推动IBM704走向世界,成为当时最成功的计算机,也使IBM成为计算机产业的老大计算机软件发展计算机的高速处理得不到充分发挥,经常处于等待状态第三代软件不再使用实用程序来处理频繁执行的任务,而是让操作系统进行管理出现了多用途的应用程序出现了计算机用户的概念计算机的管家

缺点:虽然语言层还在加深,但是程序设计员们仍然在使用一些最内层的语言。第三代软件(1965-1971)操作系统——方便用户●更好、更强大的操作系统被开发出来●引入了鼠标的概念和点击式的图形界面●DOS(字符界面)

Windows(图形界面)美国加利福尼亚大学的道格.英格尔伯特(DougEngelbart)博士发明了世界上第一只鼠标。1968年鼠标在旧金山联合计算机会议上首次亮相,直到1981年才出现第一台使用鼠标的商用计算机计算机软件发展出现了结构化程序设计方法,出现了Pascal、Modula-2、C、C++工具软件(应用程序软件包)开始出现,可以让一个没有计算机经验的人员实现一些特定的任务更好、更强大的操作系统也开发出来了第四代软件(1971-1989)计算机软件发展微软公司的崛起:Windows在PC市场上占有显著优势,微软办公套件成为主流面向对象的程序设计方法成为大型程序设计项目的首选:改变了结构化设计基于任务的层次划分,面向对象的设计则基于数据对象的划分,出现了JAVA语言Internet的出现,万维网的普及,使得用户概念发生了改变HTML浏览器出现了中间件第五代软件(1990-今天)计算机软件发展快速批量地构造更复杂的程序构件:常用对象,可重复使用软件架构:构建之间的连接.NETJAVAEECORBA面向服务的软件第六代软件(新一代)软件的发展(总结)计算机用户概念的变化

起初,计算机用户和程序员是一体的;

20世纪50年代,出现了系统程序员和应用程序员的区分,但计算机用户仍然是程序员;

20世纪70年代,计算机用户不仅是程序员,还包括使用应用软件的非专业人员;应用程序员离计算机硬件也越来越远今天,所有使用计算机的人都是计算机用户。1.3计算机系统及其抽象分层计算机系统由计算机硬件、计算机软件、数据构成计算机硬件:构成计算机系统的所有物理器件、部件和设备的集合;计算机软件:提供计算机执行的指令的集合;数据是计算机系统的核心计算机系统的抽象分层计算机系统非常复杂,如何认识它呢?按照各部分在计算机中的作用,可以将计算机系统抽象地看成一个层次结构,由许多层构成。将每个分层逐个地从计算机系统中剥离出来,每次只探讨一个分层。这样每个分层自身就显得清晰简单。下一次对上一层起支撑作用。计算机系统的分层重点:让计算机能够良好地运转起来重点:用计算机解决真实世界的问题各种应用:QQ、电子邮件、办公软件、财务软件、Google……计算机的管家

windows、Unix、MacOS等计算机成为一种文化,计算机网络正在日益改变着人们的生活、工作和学习习惯信息(数据、指令)如何编码各种类型的程序设计语言及程序设计方法如何由门组成逻辑电路,再组成集成电路,构成计算机的部件

人们很容易掌握细节,却容易失去全局观念。请记住计算机系统的分层结构,接下来会依次介绍每一个分层信息表示层反映了在计算机上表示信息的方式,它是一个纯概念层。计算机上的所有信息都采用二进制数字1和0表示。要理解计算机处理信息的方式和相关技术,首先必须理解二进制数制以及它与其他数制的关系。硬件层探讨计算机系统的物理硬件组成。计算机硬件由最基本的门和电路构成,它们按照某些基本原理控制电流。核心电路和门构成较复杂的具有一定功能的专用部件。多个部件按照一定方式构成计算机硬件系统。程序设计层程序设计层负责解决人们的一些问题、用于实现计算的指令以及管理数据。程序由各种语言实现。计算机如何解决问题。如何更好地用各种语言编制程序。操作系统层操作系统OS用来管理计算机的各种资源,提供人与计算机交互的接口。如WindowXP、Linux或MacOS等操作系统让我们与计算机系统进行交互,管理硬件设备、程序和数据。了解操作系统的功能是理解计算机系统的关键。网络通信层计算

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论