590 likes | 730 Views
第一章 计算机之美. 广西大学 李陶深 tshli@gxu.edu.cn. 计算机之美. 古诗有云:翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。 回顾计算机发展历程,可以发现类似 “ 惊鸿、游龙、秋菊、春松 ” 之美。. 1. 构建计算机: 思想和技术之美. 一种运算速度快的机器. 10 3 → 10 6 → 10 9 → 10 14 次操作 / 秒 假设:一次运算相当于捡起一只蚂蚁 10 14 次运算:一亿公斤蚂蚁. 1 , 2, 3…. 数的概念. 什么是 ‘ 数 ’ ?. 结绳计数 ——
E N D
第一章 计算机之美 广西大学 李陶深 tshli@gxu.edu.cn
计算机之美 古诗有云:翩若惊鸿,婉若游龙。荣曜秋菊,华茂春松。 回顾计算机发展历程,可以发现类似“惊鸿、游龙、秋菊、春松”之美。
一种运算速度快的机器 103→ 106→ 109→ 1014次操作/秒 假设:一次运算相当于捡起一只蚂蚁 1014次运算:一亿公斤蚂蚁
1 , 2, 3… 数的概念 什么是‘数’? • 结绳计数 —— • 符号计数 ——壹,贰,叁… one,two,three…
1,2,15,198… 进制 + 高低位计数 加减法 数的概念 数学意义上的数: • 计数符 • 计数法 • 运算规则
从算盘到计算器 计数与运算的工具 ——算盘 • 进十加: 一下五去四 二下五去三 三下五去二 四下五去一 … 九去一进一
从算盘到计算器 用齿轮进行计数与运算
数的概念 小数是不是数? • 如果不是会有什么问题? • 如果是又该如何通过运算工具进行处理?
从算盘到计算器 机械化计算的基础 • 统一进制计数法的出现 • 运算规则的成熟 • 机械化计算工具(算盘)的使用
从算盘到计算器 齿轮驱动的计算
从算盘到计算器 齿轮驱动的计算
从算盘到计算器 算盘 vs 手摇计算器 • 计数能力 有 有 • 操作数 1个 2个 • 运算规则 口诀 固定操作 • 操作数输入 手动 手动 • 运算及进位 手动 联动(动力驱动) • 结果输出 状态 数字 • 用户体验 方法复杂 方法简单 易于维护 容易损坏 便宜 昂贵
1.1 构建计算机:思想和技术之美 一种小巧且便宜的机器
一种小巧且便宜的机器 计算机硬件的更新换代: 第一代是真空管(分立组件); 第二代是晶体管(分立组件); 第三代是集成电路(片上组件); 第四代是为处理器(片上处理器); 第五代是片上系统,即将数字电路、模拟电路、存储器、输入/输出设备等集成在一个芯片上。
电子器件能够达到如此高的集成度,需要感谢以下几位非常重要的科学家。电子器件能够达到如此高的集成度,需要感谢以下几位非常重要的科学家。 威廉.肖克莱、约翰.巴丁、沃尔斯.布拉顿、杰克.基尔比、罗伯特.诺伊斯
芯片的集成度 人的脸皮厚度大约是100μm,头发的直径是50μm,指甲每10分钟长1μm。
著名的摩尔定律 制造商会在一个固定的周期内将芯片上的晶体管数目扩大一倍,而芯片的价格则保持不变。
一种灵活、适用的工具 计算机使用灵活,这是通过执行短小和简单的指令实现的。 尽管指令短小且简单,但计算机每秒1万亿次指令的计算速度,使计算机能够完成复杂的工作。 要实现以上目标,需具备两个条件:◆编译系统(Programming System);◆操作系统(Operating System)
output deposit Data pipe line dep * R_step1 1+ rate Data pipe line rate 计算存款额:deposit * (1+ interest) Step1: 1 + interest rate Step2: deposit * R_step1
output deposit Data pipe line dep * R_step1 1+ rate Data pipe line rate 以时间序代替空间序实现数据的顺序传输 deposit rate output R_step1
rate deposit R_step1 output Control unit ALU 以时间序代替空间序实现数据顺序传输(续) registers dep * R_step1 1+ rate Data pipe line rate deposit R_step1 output
流程化计算机初步架构 CPU Input Instruction Output 2 *(21+ 45 * 342 )
memory 存储器 CPU 中央处理器 Address bus 总线(bus) 冯.诺曼结构计算机
memory 存储器 CPU 中央处理器 Address bus 总线(bus) 地址也是数据
操作 地址 寄存器ADD mem reg
memory 存储器 CPU AC Address bus 总线(bus) 机器指令与指令执行周期 ADD mem reg mov AC mem … ADD 11011001 R0 mov AC 11011001 … PC AR
计算机不是万能的 • 自计算机诞生以来,人们一直思考的问题是:计算机能够做什么?不能够做什么? • 过去人们认为计算机不能做的一些事情,目前计算机也能做。如下棋、打球等。 • 计算机不能做什么?这需要证明。
计算机不是万能的 • 计算机科学中的一个重要概念是:如果认为什么事情可以做,那么就去实现它;如果认为什么事情使计算机不可以做,那么就去证明它。 • 计算机是万能的吗?不是,人们已经对此进行过证明。 • 解决该问题的关键是:可计算性和不可计算性。
Turing的可计算性 1. 一个服从指令的机器不能够做什么? 2. 对于一个给定的程序和相应的数据集合,确定程序是否被终止?
0和1的关系可以用布尔代数表示 直到20世纪50年代,MIT学院的两位教授才提出用布尔代数方法来描述数字系统。
信息的表达:可靠性 通过叠字反复强调那种凄凉的感觉。
信息的表达:可靠性 都与“0变成00”和“1变成11”的情况类似