1、计算机是什么,罗南超 智能楼宇教研室主任 旅游信息化与产业化研究所所长,传统“计算机器”,多样化的“计算机器”,各种设备的“大脑”系统,计算机是什么? (1) 计算机与各种设备中的计算机?,形形色色的计算机,形形色色的计算机,计算机是什么? (2) 各种应用中的计算机?,马克.安德森 -前Netscape公司创始人,现风险投资人,软件正在占领全世界,形形色色的计算机,计算机是什么? (3)计算机除了硬件,还包括软件?,系统软件,应用软件,计算机: 硬件 vs. 软件,计算机是什么? (4)都有哪些硬件和软件?,计算机是什么?,计算机是什么? (5)计算机是什么?,为什么要学习和怎样学习 大学计
2、算机课程,为什么要学习和怎样学习大学计算机课程? (1) 计算学科的供需关系-需要大学计算机,计算学科的供需关系,计算科学 与 信息探索科学,为什么要学习和怎样学习大学计算机课程? (2) 计算科学与信息探索科学已成为科学创新的重要方面,Gap,1998年诺贝尔化学奖奖励给一个计算手段的研究者- John Pople,化学学科工作者利用计算手段进行学科的科学研究,各学科人才的计算思维/计算能力需求,为什么要学习和怎样学习大学计算机课程? (3) 各学科人才需要计算思维,以便形成复合型的创造性思维,“计算机”的思维: 计算机是如何工作的? 计算机的功能是如何越来越强大的? 利用计算机的思维: 现
3、实世界的各种事物如何利用计算机来进行控制和处理? 计算思维(Computational Thinking)是运用计算机科学的基础概念去求解问题、设计系统和理解人类行为,其本质是抽象和自动化-from 周以真。,计算思维,为什么要学习和怎样学习大学计算机课程? (4)站得高,才能看得远;看得远,才能看得真,思维是创新的源头,技术与知识是创新的支撑,知识 vs. 贯通知识的思维计算思维,为什么要学习和怎样学习大学计算机课程? (5)知识与思维的差别在哪里?,思维 (Thought/Thinking),能力 (Ability & Capability),知识/技能 (Technique/Skill)
4、,计算机语言 与程序设计,数据库,数学建模 或 非数学建模,知识与视野拓展 Knowledge Expansion,云计算与云服务,企业资源规划 与供应链管理,视野: 宽度-知识面宽,前沿性 深度-贯通性,深入性,技能:练习,练习, ,思维:好奇、思考、联想、贯通,训练与掌握 Training,启发与理解Understanding,打通知识脉络,融贯各门课程,内功强化基础,外功灵活应变。,能力-内功(贯通的脉络) 实践-锻炼,使脉络贯通 思维-脉络(穴位链) 知识-穴位,知识 vs. 思维 vs. 能力,为什么要学习和怎样学习大学计算机课程? (6)大学计算机与其它课程的关系是怎样的,大学计算
5、机课程,能否学好取决于以下要素? 你是否有信念和信心? -信念和信心将决定你能否学好!你是否坚持? 是否保持兴趣? -坚持听课,坚持训练,“铁杵磨针”,就能学得好! -只要听课,就能有收获,就会有想法,就会有兴趣!你是否主动思考主动探索? -思维的建立是不断思考的结果,对任何持疑的内容可通过互联网进一步探索和学习,或者及时与教师沟通获得提高! 记住:计算思维的学习,不仅仅是会不会用计算机的问题,而是会不会利用计算思维来解决身边的或社会/自然问题的问题,为什么要学习和怎样学习大学计算机课程? (7)只要坚持,就能学好大学计算机-计算思维导论课程,你一定能学好大学计算机-计算思维导论 因为在美国,
6、计算思维已被普及到中小学生,他们都能学会, 因为计算思维的学习不需要太多的数学基础,它不是数学思维,尽管数学思维对其有很大的影响 不要受各自专业认知的影响和干扰,这些观点“我学了文科专业,就学不好计算思维”,“我学了文科专业就不需要计算思维”是要不得的!,为什么要学习和怎样学习大学计算机课程? (8)你一定能学好大学计算机-计算思维导论,你行的,你一定行! 你懂的,你会懂的!,计算与自动计算,简单计算I:数据计算,计算规则,应用计算规则进行计算并获得计算结果,复杂计算II:f(x),函数,计算规则及其简化计算方法,便于人应用规则进行计算,获得计算结果,复杂计算III:如丢番图方程,判定,计算规
7、则,人可能无法完成但却可由机器自动完成,借助于机器获得计算结果,a1x1b1+a2x2b2+anxnbn=c,计算与自动计算 (1) 什么是计算?,计算学科的计算 vs. 数学学科的计算,例如:求ax2+bx+c=0的根,人进行计算: 规则可能很复杂, 但计算量却可能很小 人需要知道具体的计算规则 特定规则,只能求: a1x2+a2x=c,机器-自动计算: 规则可能很简单, 但计算量却很大 机器也可以采用人所使用的计算规则 一般性的规则,可以求任意: a1x1b1+a2x2b2+anxnbn=c,人-求解,机器-求解,(1)从-n到n,产生x的每一个整数值; (2)将其依次代入到方程中计算;
8、(3)如果其值使方程式成立,则即为其解;否则不是,计算与自动计算 (2)人计算与机器计算的差别?,“人”计算 vs. “机器”计算,利用上述公式计算得到x值,自动计算要解决的几个问题: 表示-存储-执行 “数据”的表示 “计算规则”的表示:程序 数据与计算规则的“自动存储” 计算规则的“自动执行”,a1x1b1+a2x2b2+anxnbn=c,计算与自动计算 (3)自动计算需要解决什么问题?,算盘能被认为是计算机吗?,九层算盘,一、加法口诀 直加 满五加 进十加 一: 一上一 一下五去四 一去九进一 二: 二上二 二下五去三 二去八进一 三: 三上三 三下五去二 三去七进一 四: 四上四 四下
9、五去一 四去六进一 五: 五上五 五去五进一 六: 六上六 六去四进一 六上一去五进一 七: 七上七 七去三进一 七上二去五进一 八: 八上八 八去二进一 八上三去五进一 九: 九上九 九去一进一 九上四去五进一 二、减法口诀 直减 破五减 退位减 一 一下一 一上四去五 一退一还九 二 二下二 二上三去五 二退一还八 三 三下三 三上二去五 三退一还七 四 四下四 四上一去五 四退一还六 五 五下五 五退一还五 六 六下六 六退一还四 六退一还五去一 七 七下七 七退一还三 七退一还五去二 八 八下八 八退一还二 八退一还五去三 九 九下九 九退一还一 九退一还五去四,珠算珍品,计算与自动计
10、算 (4) 机械计算的探索?,帕斯卡与帕斯卡机-(准)第一台机械计算机,Blaise Pascal (16231662) 1642年研制成功一种齿轮式计算机器,帕斯卡机的意义:它告诉人们“用纯机械装置可代替人的思维和记忆”。开辟了自动计算的道路。,计算与自动计算 (4) 机械计算的探索?,莱布尼茨,Gottfried Wilhelm Leibniz (16461716),德国数学家。 莱布尼茨机的意义:连续重复自动执行。 提出了二进制数及其计算规则; 数理逻辑的创始人,是基于十进制设计机器,还是基于二进制设计机器? 如果基于二进制设计机器,那其处理规则又是怎样的呢?,计算与自动计算 (4) 机
11、械计算的探索?,其他重要工作,1834年:巴贝奇(Charles Babbage),分析机的概念-可执行程序的机器。 1805年: 杰卡德(J.Jacquard),打孔卡,实践了输入手段问题。 1854年:布尔创立布尔代数,为数字计算机的电路设计提供了理论基础。 (请同学课后补充),巴贝奇差分机与分析机,计算与自动计算 (4) 机械计算的探索?,计算辅助工具,Pascal机械计算机: 自动计算-固定的计算规则,Babbage机械计算机: (特定)程序 -可有限变化的计算规则,现代计算机:一般程序 -任意可变的计算规则,机械计算的简要发展历程是怎样的? 从表示-自动存储-自动执行的角度,计算与自
12、动计算 (4) 机械计算的探索?,计算与自动计算 (5) 小结,电子自动计算-元器件,电子自动计算-元器件 (1) 自动计算需要解决的问题?,二进制 vs. 十进制,由 元器件 到 系统,电子管时代的计算机器,人类第一只电子管(真空二极管),1895,电子管计算机ENIAC,1946年,17468只电子管,电子自动计算-元器件 (2) 电子自动计算的突破在哪里?,存储0和1的元器件,电子管时代的计算机器,冯.诺伊曼(Von Neumann)电子计算机EDVAC问世 将运算和存储分离,运算速度却比拥有18000个电子管的“ENIAC”提高了10倍 结构上的创新:“冯.诺伊曼计算机”。,电子自动计
13、算-元器件 (2) 电子自动计算的突破在哪里?,晶体管时代的计算机器,人类第一只晶体管 (点接触晶体管),1947,第一台晶体管计算机TRADIC,1953,电子自动计算-元器件 (3) 晶体管发现的价值在哪里呢?,集成电路时代的计算机器,集成电路的发明,1959,第三代计算机IBM360,1964,J.Kilby,集成电路发明者,封装后的集成电路芯片,电子自动计算-元器件 (4) 什么是集成电路,其价值又在哪里呢?,能否将复杂的电路封装后作为新电路设计的元件呢? 复杂的电路 集成 封装 应用?,超大规模集成电路(VLSI)时代的计算机器,第四代计算机个人计算机,1981,VLSI芯片及其封装
14、的内部电路,电子自动计算-元器件 (4) 什么是集成电路,其价值又在哪里呢?,摩尔定律-每18个月芯片能力增长一倍,电子管: 可自动控制0和1变化的元件,晶体管,集成电路: 可自动实现一定变换的元件,超大规模集成电路(VLSI),自动计算中的元器件的发展 从表示-自动存储-自动执行的角度,体积越来越小; 可靠性越来越高; 电路规模越来越大; 速度越来越快; 功能越来越强大;,电子自动计算-元器件 (5) 元器件发展的轨迹是怎样的,每个阶段要解决什么问题?,自动计算中的元器件的发展启示,Input,Output,Transform,Input1,Output1,Transform1,Input2
15、,Output2,Transform2,Input3,Output3,Transform3,Input1,Output1,Transform1,Input2,Output2,Transform2,Input3,Output3,Transform3,A,B,电子自动计算-元器件 (5) 元器件发展的轨迹是怎样的,每个阶段要解决什么问题?,电子自动计算-计算机系统,电子自动计算-计算机系统 (1) 自动计算需要解决的问题?,二进制 vs. 十进制,由 元器件 到 系统,计算机系统要解决的几个问题 “控制与计算”-微处理器 “输入”-如何将外部信息输入到计算机中? “输出”-如何将计算机中信息输出到
16、外界(显示或打印)?“永久存储与临时存储”-如何将计算机中的信息永久保存或临时保存?,电子自动计算-计算机系统 (2) 计算机系统的构成包括哪些部分?,字长:8位16位32位64位 主频:几MHz几百MHz几GHz 晶体管数量:几万几百万几亿颗 功能/规模:微处理器微处理器+协处理器(浮点运算)微处理器+图形处理单元GPU微处理器+3D处理器+多媒体处理器多核微处理器,微处理器的发展,1999,Pentium III,2005,双核 CORE,2010,八核-十核 CORE i 系列,1974,8086/8088,1982,Intel 80286,1985,Intel 80386,1989,I
17、ntel 80486,1993,Pentium,1997,Pentium II,电子自动计算-计算机系统 (3) 控制与计算-微处理器-计算机系统的核心?,存储设备,存储设备,固态硬盘 USB Removable disk,FlashRAM,磁带/磁芯/磁鼓存储,磁盘存储(硬盘与软盘),光盘存储(CD-ROM, CD R/W, DVD),汞延迟线,纳米存储/量子存储,半导体存储(ROM/RAM),体积越来越小 容量越来越大 访问速度越来越快 可靠性越来越高 功耗越来越低 持久性越来越好,DRAM半导体存储器芯片,FlashRAM存储器,U-Disk,固态硬盘,磁芯存储器,电子自动计算-计算机系
18、统 (4) 怎样解决大规模快速存储问题?,输入设备,穿孔纸带 (0/1输入),键盘输入 (符号输入),鼠标输入 (点输入),感知输入 (接触式感知输入 非接触式感知输入),输入设备,电子自动计算-计算机系统 (5) 怎样解决输入问题?,输出设备 (显示器),CRT:阴极射线管 (模拟显示器:黑白与彩色),CRT: 字符发生器 (向量式模拟显示器: 输出字符),CRT: 数字光栅扫描显示器 (基于内存的显示: 输出图形),3D显示器:3维图形,数字显示器:高清图形 (液晶、等离子技术),GPU芯片,多显示卡并联,分辨率越来越高 颜色越来越逼真 显示速度越来越快(屏幕刷新速度和图形处理速度) 越来
19、越薄,越清晰 可视角度越来越接近平角,输出设备-显示及显示控制,电子自动计算-计算机系统 (6) 怎样解决输出问题?,电子自动计算-计算机系统 (7) 计算机系统各主要部件的发展趋势是什么?,电子自动计算-计算机系统 (8) 小结,微处理器 中央处理单元CPU,内存与外存,计算系统之发展趋势,世界上最小台式电脑- 如同拇指大小,平板电脑-Apple IPAD,智能手机,计算系统之发展趋势 (1) 微型化趋势是怎样的?,平板电脑-Apple IPAD,微型化:可嵌入、可携带,A massively parallel supercomputer using tens of thousands of
20、 embedded PowerPC processors supporting a large memory space With standard compilers and message passing environment,IBM-BlueGene(蓝色基因): Milestone of an Intelligent Machine,大型化:可进行大规模、复杂计算,计算系统之发展趋势 (2) 大型化趋势是怎样的?,2010.11, 超级计算机500强第一名:天河一号A - 中国 14336颗Intel Xeon X5670 2.93GHz六核心处理器 2048颗我国自主研发的飞腾FT
21、-1000八核心处理器 7168块NVIDIA Tesla M2050高性能计算卡 总计: 186368个核心, 224TB内存。 实测运算速度可以达到每秒2570万亿次(这意味着,它计算一天,相当于一台家用电脑计算800年),大型化:可进行大规模、复杂计算,超级计算机500强,计算系统之发展趋势 (2) 大型化趋势是怎样的?,汽车生产线上的机器人,水下机器人,智能化,理解自然语言,具有自适应性,自主完成复杂功能,计算系统之发展趋势 (3) 智能化趋势是怎样的?,网络化,“未来互联网”-Future Internet,机-机相联,物-物相联,物-人相联,人-人相联,计算系统之发展趋势 (4)
22、网络化趋势是怎样的?,网络化,计算系统之发展趋势 (4) 网络化趋势是怎样的?,IBM提出智慧地球,Smart Planet。,交通,电力,能源,物流,Instrumented Interconnect Intelligent,什么是计算思维,Comp. Bio.,Geometric Comp.,Graphics,HCI:Human Computer Interaction,Distributed Systems,Service Computing,Hardware,Robotics,Database & Data mining,Machine Learning,Natural Languag
23、e,Comp. Economics,Networking,Security,Algorithms,Art,Economics,Biology,Linguistics,Statistics,Sociology & Serviceology,Design,Psychology,Electrical Engineering,什么是计算思维? (1) 为什么提出计算思维?,学科的发展,知识的膨胀,计算思维,计算的伟大原理,什么是计算思维? (2) 计算思维的提出,Computational Thinking from CMU,周以真(Jeannette M. Wing),Communications
24、of ACM, Vol.49, No.3, March 2006, Pages 33-35 Computational thinking is a way of solving problems, designing systems, and understanding human behavior that draws on concepts fundamental to computer science. Computational thinking will be a fundamental skill used by everyone in the world by the middl
25、e of the 21st Century. Just like reading, writing, and arithmetic. Imagine every person knowing how to think like a computer scientist! Computational thinking is not just for other scientists, its for everyone. Thinking like a computer scientist means more than being able to program a computer 计算思维的
26、本质就是抽象(Abstraction)与自动化(Automation),即在不同层面进行抽象,以及将这些抽象“机器化”。,什么是计算思维? (3) 什么是计算思维?,计算思维是人类应具备的第三种思维 实验思维: 实验 观察 发现、推断与总结. -观察与归纳 理论思维: 假设/预设 定义/性质/定理 证明. -推理和演绎 计算思维: 设计, 构造 与 计算. -设计与构造 计算思维关注的是人类思维中有关可行性、可构造性和可评价性的部分 当前环境下,理论与实验手段在面临大规模数据的情况下,不可避免地要用计算手段来辅助进行。,国内学者/专家的观点,什么是计算思维? (4) 计算思维?,构造传统“计算
27、机器”,构造各种新型“计算机器” 应用各种新型“计算机器”,计算机科学与技术 软件工程、生物计算、信息安全、 ,科学研究的三大手段: 理论、实验和计算 计算科学,什么是计算思维? (5) 从计算学科发展的角度看计算思维,自然现象的计算的表达与推演,用社会/自然所接受的形式体现计算及结果,局域网/广域网:机器网络,互联网:信息网络/广义资源网络,物联网;知识网;服务网;社会网,事务管理 与数据库,数据分析与数据仓库,数据聚集与大数据,什么是计算思维? (6) 大学计算思维教育空间-计算之树?,大学计算思维教育空间-计算之树,大学计算思维教育空间计算之树? (1) 奠基性的计算思维有哪些?,计算之
28、树的第一个维度计算技术的奠基性思维,“0 和 1”思维-符号化计算化自动化 0和1是实现任何计算的基础;社会/自然与计算融合的基本手段; 0和1是连接硬件与软件的纽带;0/1是最基本的抽象与自动化机制。 “程序”思维-千变万化复杂功能的构造、表达与执行 程序是基本动作(指令)的各种组合,是控制计算系统的基本手段 “递归”思维-无限事物及重复过程的表达与执行方法 递归是最典型的构造程序的手段;递归函数是可计算函数的精确的数学描述;递归函数是研究计算学科理论问题的基础,计算之树的第一个维度计算技术的奠基性思维,大学计算思维教育空间计算之树? (1) 奠基性的计算思维有哪些?,大学计算思维教育空间计
29、算之树? (2) 通用计算环境是如何演化的?,计算之树的第二个维度通用计算环境的进化思维,The tools we use have a profound influence on our thinking habits, and therefore, on our thinking abilities. -from Edsger Dijkstra, 1972 Turing Awards receiver.,大学计算思维教育空间计算之树? (2) 通用计算环境是如何演化的?,通用计算环境的进化思维,大学计算思维教育空间计算之树? (3) 为什么算法和系统很重要?,计算之树的第三个维度交替促进与
30、共同进化的问题求解思维,大学计算思维教育空间计算之树? (3) 为什么算法和系统很重要?,计算之树的第三个维度交替促进与共同进化的问题求解思维,“算法”:问题求解的一种手段构造与设计算法 算法是计算的灵魂;算法强调数学建模;算法考虑的是可计算性与计算复杂性;算法研究通常被认为是计算学科的理论研究。 “系统”:问题求解的另一种手段构造与设计系统 系统是改造自然的手段;系统还强调非数学建模;系统考虑的是如何化复杂为简单(使其能够被做出来);系统还强调结构性、可靠性、安全性等。系统是龙,算法是睛,画龙要点睛。,大学计算思维教育空间计算之树? (4) 计算与社会/自然如何融合的?,计算之树的第四个维度
31、计算与社会/自然环境的融合思维,大学计算思维教育空间计算之树? (4) 计算与社会/自然如何融合的?,业务-计算,人-计算机,机-机,物-物,大学计算思维教育空间计算之树? (4) 计算与社会/自然如何融合的?,局域网/广域网:机器网络,互联网:信息网络/广义资源网络,物联网;知识网;服务网;社会网,事务管理 与数据库,数据分析与数据仓库,数据聚集与大数据,大学计算思维教育空间计算之树? (5) 为什么网络化思维、数据化思维很重要?,计算之树的第五和第六个维度网络化思维和数据化思维,自然现象的计算的表达与推演,用社会/自然所接受的形式体现计算及结果,局域网/广域网:机器网络,互联网:信息网络/
32、广义资源网络,物联网;知识网;服务网;社会网,事务管理 与数据库,数据分析与数据仓库,数据聚集与大数据,大学计算思维教育空间计算之树? (5) 为什么网络化思维、数据化思维很重要?,计算机计算机科学计算科学,计算思维的学习方法 (1) “知识/术语”随着“思维”的学习而展开,“思维”随着“知识”的贯通而形成,“能力”随着“思维”的理解而提高。 (2)从问题分析着手,强化如何进行抽象,如何将现实问题抽象为一个数学问题或者一个形式化问题,提高问题表述及问题求解的严谨性。 (3)通过图示化方法来展现复杂的思维可以一目了然;通过规模较小的问题求解示例来理解复杂问题的求解方法;通过从社会/自然等人们身边的问题理解到计算科学家是如何进行问题求解。 (4)追求“问题”及问题的讨论,通过逐步地提出问题,使自己从一个较浅的理解层次逐步过渡到较深入的理解层次,通过不同视角和递阶的讨论,使自己理解和确定前行的方向。 (5)宽度与深度相结合,从宽度学习开始,深度学习结束,既能够使自己理解相关的思维与知识,还能够有助于建立起较为科学的研究习惯与研究方法。 (6)思维蕴含在案例中,案例蕴含着思维。,阅读书籍、阅读文献、网上搜索、梳理思路(记笔记),大学计算思维教育空间计算之树? (6) 怎样学习计算思维?,