授课教案 2_2_第1页
授课教案 2_2_第2页
授课教案 2_2_第3页
授课教案 2_2_第4页
授课教案 2_2_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

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

文档简介

1、第一单元第二讲计算机发展简史运算器功能及数据表示内容提要 计算机发展简史 运算器基本功能 数据表示 数值 整数 定点小数 浮点数 字符 逻辑值Computer Generations Gen-0: Mechanical computers (BC to early 1940s) Gen-1: Vacuum Tubes (1943-1959) Gen-2: Transistors (1960-1968) John Bardeen, Walter Brattain, and William Shockley Gen-3: Integrated Circuits (1969-1977) Jack K

2、ilby (1958) Gen-4: VLSI (1978-present) Gen-5: Optical? Quantum? 生物? 古代及近代计算技术公元前500年,中国出现算盘1642年,Blaise Pascal发明自动进位的加法机器,齿轮驱动拨盘,在窗口显示结果1822年,Charles Babbage,差分机(Differential Engie)1833年,分析机(Analytical Engine),通用机器16世纪,Alkhowarizmi提出算法概念,并出版以算法(Algorithm)为题的书籍Turing机1937年,Alan Turing提出一种“通用”计算机的概念,它

3、可以执行任何一个描述好的程序(算法),实现需要的功能,形成了“可计算性”概念的基础。存储程序的思想,使计算机从专用走向通用。正是这一创新,开创了计算机的新时代。Turing机特点 通用计算机:并不是保存所有问题的结果。 存储程序计算机:问题的求解由程序或过程给出,程序和过程可以通过语言描述。 有限速度:计算机执行程序的时间是有限的。 是现代计算机的鼻祖。现代计算机的里程碑年年代代机机器器名名称称制制造造者者说说明明1834Analytical EngineBabbage建造数字计算机的第一次尝试1936Z1Zuse第一台使用继电器的计算机器1943COLOSSUS英国政府第一台电子计算机194

4、4Mark IAiken第一台美国通用计算机1946ENIAC IEckert/Mauchley现代计算机历史从它开始1949EDSACWilkes第一台存储程序的计算机1951Whirlwind IM.I.T.第一台实时计算机1952IASVon Neumann大多数现代计算机还用的设计1960PDP-1DEC第一台小型机(销售 50 台)19611401IBM非常流行的小型商用机19627094IBM60 年代早期的主流科学计算用机1963B5000Burroughs面向高级语言设计的第一台计算机1964360IBM系列机的第一个产品19646600CDC第一台用于科学计算的超级计算机19

5、65PDP-8DEC第一台占领市场的小型机(销售 50,000 台)1970PDP-11DEC70 年代的主导小型机19748080Intel第一台在一个芯片上的 8 位计算机1974CRAY-1Cray第一台向量超级计算机1978VAXDEC第一台 32 位超级小型计算机1981IBM PCIBM开创现代个人计算机新纪元1985MIPSMIPS第一台商用 RISC 机1987SPARCSun第一台基于 SPARC 的 RISC 工作站1990RS6000IBM第一台超标量体系结构计算机第一台通用电子计算机ENIACElectronic Numerical and Integrate Calc

6、ulator Mauchly and Eckert 设计 1946年2月14日第一台通用电子计算机,设计用于计算火炮的弹道重30吨,占地15000平方英尺,18000个电子管,耗电 140KW运算速度:5000次加法/秒使用十进制数20个寄存器,每个存放10位的十进制数通过设置6000个开关和其它众多的插头和插座来编程Von Neumann机IAS现代计算机结构的鼻祖:五大功能部件将程序和数据统一表示:存储器有4096个字,每个字40位。采用二进制数据:简化了存储器只提供整数运算:任何有能力的数学家都能在头脑中记住小数点的位置。第一台小型计算机:PDP-1 1957年由DEC公司生产 第二代计

7、算机(晶体管) 18位字长,4K内存,机器周期为5微秒 售价120000美元。售出50台。 开创了计算机产业!第一个系列计算机:IBM 360 第三代计算机 计算机应用:科学计算和商务处理 如何在不同的硬件平台上运行相同的软件? 系列计算机:IBM 360 计算机系统结构:程序员眼中的计算机。具有相同系统结构的计算机可以运行相同的程序。 微程序控制器应用的普及:IBM PC机RISC计算机精简指令系统计算机指令系统尽量简单,复杂指令通过简单指令的组合来完成提高计算机的运行速度下一代计算机 ?运算器基本功能 完成算术、逻辑运算 +、。 取得操作数 寄存器组、立即数 输出、存放运算结果 寄存器组、

8、数据总线 暂存运算的中间结果 Q寄存器、移位寄存器运算器基本功能 获得运算结果的状态 C、Z、V、S 理解、响应控制信号DatapathMemoryI/OALU功能和设计 功能 对操作数A、B完成算术逻辑运算 ADD、AND、OR 设计 算术运算 加法器 逻辑运算 与门、或门323232operationresultabALUOne-Bit Logical Instructions Map directly onto hardware components AND instruction One of data lines should be a simple AND gate OR inst

9、ruction Another data line should be a simple OR gateABC01Op (control)DefinitionA or B1A and B0COpOne-Bit Full Adder Each bit of addition has Three input bits: Ai, Bi, CarryIni Two output bits: Sumi, CarryOuti ( CarryIni+1 = CarryOuti )CarryIn. . . (0) (1) (0) (0) (0). . . 0 0 1 0 1. . . 0 0 1 1 0. .

10、 . 0 (0)1 (1)0 (0)1 (0)1+InputsOutputsA:B:Sum:CarryOutFull Adders Truth TableSumASymbolBCarryInCarryOut+DefinitionABCarryIn CarryOut Sum0000000101010010111010001101101101011111CarryOut = (A*B*CarryIn) + (A*B*CarryIn) + (A*B*CarryIn) + (A*B*CarryIn) = (B*CarryIn) + (A*CarryIn) + (A*B) Sum = (A*B*Carr

11、yIn) + (A*B*CarryIn) + (A*B*CarryIn) + (A*B*CarryIn)Full Adder Circuit (1/2)Construct the gates for SumImplement the gates for CarryOutConnect all inputs with the same nameFull Adder Circuit (2/2)One-Bit ALULeast significant bitOther bits数据编码与表示 计算机中要存储的数据 程序、整数、浮点数、字符(串)、逻辑值 需要编码进行表示 存储方式 用数字电路的两个状

12、态表示 由上一层的抽象计算机来识别不同的内容 编码原则 少量简单的基本符号 一定的规则 表示大量复杂的信息基二码(二进制码)基二码(二进制码)只使用只使用两个两个基本符号:基本符号:符号个数符号个数最少最少,物理上容易实现,物理上容易实现与与二值逻辑二值逻辑的的 真真 假假 两个值对应简单两个值对应简单用二进制码用二进制码表示表示数值数据数值数据运算规则简单运算规则简单数据表示二进制位可以表示任何对象二进制位可以表示任何对象: 字符 26 字母 = 5 位 大/小写 + 其它符号 = 7 bits (in 8) 世界上其他语言 = 16 bits (unicode) 无符号整数 (0, 1,

13、, 2n-1) 逻辑值 0 - False, 1 = True 颜色 位置 / 地址 / 指令 但 n 位只能代表 2n 个不同的对象逻辑型逻辑型数据数据逻辑型数据只有两个值:逻辑型数据只有两个值:真真 和和 假假,正好可以用二进制码的两个符号分别表示,正好可以用二进制码的两个符号分别表示,例如例如 1 表示表示 真真 则则 0 表示表示 假假不必使用另外的编码规则。不必使用另外的编码规则。对逻辑型数据可以执行逻辑的对逻辑型数据可以执行逻辑的 与与 或或 非非等等基本逻辑运算。其规则如下:基本逻辑运算。其规则如下:逻辑型数据逻辑型数据基本运算规则基本运算规则 X Y X与Y X或Y X的非 0

14、 0 0 0 1 0 1 0 1 1 1 0 0 1 0 1 1 1 1 0 字符型字符型数据的表示数据的表示 字符作为人字符作为人机联系的媒介,是最重要机联系的媒介,是最重要的数据类型之一,当前的西文字符集由的数据类型之一,当前的西文字符集由 128 个符号组成,通常用个符号组成,通常用 8 位二进制编码位二进制编码,即即用用一个字节来表示每一个符号一个字节来表示每一个符号,当前通用的两,当前通用的两个标准字符集是:个标准字符集是:ASCII 码码: 即即 American Standard Code for Information InterchangeUNICODE: IS10646 A

15、SCII码字符集具体编码如下表所示:码字符集具体编码如下表所示: ASCII字符编码集字符编码集 b6 b5 b4 000 001 010 011 100 101 110 111 b3 b2 b1 b0 0000 NUL DLE SP 0 P , p 0001 SOH DC1 ! 1 A Q a q 0010 STX DC2 “ 2 B R b r 0011 ETX DC3 # 3 C S c s 0100 EOT DC4 $ 4 D T d t 0101 ENQ NAK % 5 E U e u 0110 ACK SYN & 6 F V f v 0111 BEL ETB 7 G W g

16、 w 1000 BS CAN ( 8 H X h x 1001 HT EM ) 9 I Y i y 1010 LF SUB * : J Z j z 1011 VT ESC + ; K k 1100 FF FS , N n 1111 SI US / ? O _ o 字符串的表示与存储字符串的表示与存储 字符串是指连续的一串字符,它们占据主存中连续的字符串是指连续的一串字符,它们占据主存中连续的多个字节,每个字节存放一个字符,对一个主存字的多个字节,每个字节存放一个字符,对一个主存字的多个字节,有按从低位到高位字节次序存放的,也有多个字节,有按从低位到高位字节次序存放的,也有按从高位到低位字节次序

17、存放的。表示字符串数据要按从高位到低位字节次序存放的。表示字符串数据要给出串存放的主存起始地址和串的长度。例如:给出串存放的主存起始地址和串的长度。例如:IF AB THEN READ(C)就可以有如下不同的存放方式:就可以有如下不同的存放方式: I F A A F I B T T B 假定每个字假定每个字 H E N N E H 由由 4 个字节个字节 R E A D D A E R 组成组成 ( C ) ) C (UNICODE编码 使用16位表示一个字符,可以表示65536个字符 将整个编码空间划分为块,每块为16的整数倍,按块进行分配。 保留6400个码点供本地化使用。 并无法覆盖所有

18、字符。进位记数法与进制转换进位记数法与进制转换进位记数法进位记数法N N=i=mD Di* *irN 代表一个数值代表一个数值r 是这个数制的基是这个数制的基(Radix)i表示这些符号排列的位号表示这些符号排列的位号Di是位号为是位号为i i的位上的一个符号的位上的一个符号ri是位号为是位号为i i的位上的一个的位上的一个 1 1 代表的值代表的值irDi*是第是第i i位的所代表的实际值位的所代表的实际值表示表示m+k+1m+k+1位的值求累加和位的值求累加和 -k十进制转二进制十进制转二进制整数部分除整数部分除2 2取余取余 小数部分乘小数部分乘2 2取整取整2 1 1222521011

19、010.625 * 210.25 * 200.5 * 21 0.0 除尽为止除尽为止 求得位数满足要求为止求得位数满足要求为止低低高高高高低低从二进制数求其十进制的值,逐位码权累加求和从二进制数求其十进制的值,逐位码权累加求和二到八或十六进制转换二到八二到八 从小数点向左右从小数点向左右三位一分组三位一分组(10 011 100 . 01)10 011 100 . 01)2 2 = ( 234 . 2 ) = ( 234 . 2 )8 8 010 010 二到十六二到十六 从小数点向左右从小数点向左右四位一分组四位一分组(1001 1100 . 01)1001 1100 . 01)2 2 =

20、( 9C . 4 ) = ( 9C . 4 )1616 01000100 说明:说明:整数部分不足位数对转换无影响,整数部分不足位数对转换无影响, 小数部分不足位数要补零凑足,小数部分不足位数要补零凑足, 否则出错。否则出错。二二 十进制编码(十进制编码(BCD编码)编码)用四位二进制表示一位十进制,用四位二进制表示一位十进制, 16个编码状态选用其中的个编码状态选用其中的10个编码个编码有多种方案,例如:有多种方案,例如:8421码,余码,余 3 码,循环码码,循环码又可区分为:又可区分为:有权码:每位上的有权码:每位上的 1 代表确定的值代表确定的值无权码:无法确定每位上的无权码:无法确定

21、每位上的 1 代表的值代表的值0 0000 0011 0000 00001 0001 0100 0001 01112 0010 0101 0011 01103 0011 0110 0010 01014 0100 0111 0110 01005 0101 1000 1110 10116 0110 1001 1010 10107 0111 1010 1000 10018 1000 1011 1100 10009 1001 1100 0100 1111有权码有权码 无权码无权码8421余余3码码 循环码循环码 84-2-1如何判定码权如何判定码权 0 0000 1 0111 4 +(-2)+(-1)

22、 2 0110 4 +(-2) 验证每个码的值验证每个码的值 3 0101 4 +(-1) 4 0100 4 从一编码求码权从一编码求码权 5 1011 8 +(-2)+(-1) 6 1010 -2 结论结论 7 1001 -1 证明此编码系统为有权码证明此编码系统为有权码 8 1000 8 9 1111 8 + 4 +(-2)+(-1)如何判定码权如何判定码权 0 0011 2+1 = 0 验证各码的值验证各码的值 1 0100 1 从一编码求码权从一编码求码权 2 0101 1 3 0110 2 4 0111 5 1000 6 1001 结论结论 7 1010 证明此编码系统为无权码证明此

23、编码系统为无权码 8 1011 9 1100 数值数据在计算机内的格式数值数据在计算机内的格式定点小数定点小数: N = N N N .Ns-1-n-2整整 数数 : N = N N N . N N01snn-1浮点数浮点数: N = M E E .E E M M .M ssm-110-1-2-n符号位符号位 阶码位阶码位 尾数数码位尾数数码位 总位数总位数 短浮点数短浮点数: 1 8 23 32长浮点数长浮点数: 1 11 52 64 临时浮点数临时浮点数: 1 15 64 80IEEE 标准:标准: 阶码用移码,阶码用移码,尾数用原码尾数用原码 基为基为 2数值数据在计算机内的格式数值数据

24、在计算机内的格式定点小数定点小数: N = N N N .Ns-1-n-2整整 数数 : N = N N N . N N01snn-1浮点数浮点数: N = M E E .E E M M .M ssm-110-1-2-n符号位符号位 阶码位阶码位 尾数数码位尾数数码位 总位数总位数 短浮点数短浮点数: 1 8 23 32长浮点数长浮点数: 1 11 52 64 临时浮点数临时浮点数: 1 15 64 80IEEE 标准:标准: 阶码用移码,阶码用移码,尾数用原码尾数用原码 基为基为 2数值数据在计算机内的格式数值数据在计算机内的格式定点小数定点小数: N = N N N .Ns-1-n-2整整

25、 数数 : N = N N N . N N01snn-1浮点数浮点数: N = M E E .E E M M .M ssm-110-1-2-n符号位符号位 阶码位阶码位 尾数数码位尾数数码位 总位数总位数 短浮点数短浮点数: 1 8 23 32长浮点数长浮点数: 1 11 52 64 临时浮点数临时浮点数: 1 15 64 80IEEE 标准:标准: 阶码用移码,阶码用移码,尾数用原码尾数用原码 基为基为 2定点小数表示定点小数表示: Ns N1 N2 Nn X = X = X =原原 X 1 - X -1 X 0反反 X(2 - 2 )+ X-n0 X 1-1 X 0补补 X 2 + XMo

26、d ( 2 - 2 )0 X 1-1 X 0Mod 20 X 1-n(纯小数)原码,反码,补码的定义(纯小数)原码,反码,补码的定义定点小数表示定点小数表示: Ns N1 N2 Nn 原原 码码 定义:定义: X 原原 = 实例:实例:X1 = 0.10110 -0.10110 0.0000 X 原原 = 010110 110110 00000 10000 结论:结论:原码原码为符号位加数的绝对值,为符号位加数的绝对值,0正正1负负 原码原码零有两个编码,零有两个编码,+0和和 -0编码不同编码不同 原码原码难以用于加减运算,但乘除方便难以用于加减运算,但乘除方便 X 1 - X -1 X 0

27、 0 X 1定点小数表示定点小数表示: Ns N1 N2 Nn 反反 码码定义:定义: X 反反 = 实例:实例:X1 = 0.10110 -0.10110 0.0000 X 反反 = 010110 101001 00000 11111 结论:反码为符号位跟数每一位的反,结论:反码为符号位跟数每一位的反,0正正 1 负负 反码零有二个编码,分反码零有二个编码,分+0 和和 -0 反码难以用于加减运算,有循环进位问题反码难以用于加减运算,有循环进位问题 X (2-2-n) + X -1 X 0 MOD (2-2-n) 0 X 1定点小数表示定点小数表示: Ns N1 N2 Nn 模模 2 补码补

28、码 定义:定义: X 补补 = 实例:实例:X = 0.10110 -0.10110 0.0000 X 补补 = 010110 101010 00000结论:补码最高一位是符号位,结论:补码最高一位是符号位,0正正 1 负负 补码表示为补码表示为 2*符号位符号位 + 数的真值数的真值 补码零只有一个编码,故能表示补码零只有一个编码,故能表示 -1 补码能很好地用于加减(乘除)运算补码能很好地用于加减(乘除)运算 X 2 + X -1 X 0 MOD 2 0 X 1整数的编码表示整数的编码表示整数的整数的 原码原码 反码反码 补码补码 表示表示与小数的三种表示基本相同,与小数的三种表示基本相同

29、,差别仅表现在小数点的位置,差别仅表现在小数点的位置,可以认为整数的小数点在最低数值位的右侧可以认为整数的小数点在最低数值位的右侧因此整数的模与整数位数有关,因此整数的模与整数位数有关,讲课中不大用整数讲讲课中不大用整数讲 原原 反反 补补 码定义码定义例如:整数八位码:例如:整数八位码: X = +01110 X原原= 0 01110 X补补= 0 01110 X = - 01110 X原原= 1 01110 X补补= 1 10010补码表示中的符号位扩展补码表示中的符号位扩展由由 X补补 求求 X / 2补补 的方法的方法 原符号位不变,原符号位不变, 且符号位与数值位均右移一位,例如,且符号位与数值位均右移一位,例如,X补补 =10010 则则 X/2补补 =110010不同位数的整数补码相加减时,不同位数的整数补码相加减时, 位数少的补码数的符号位向左扩展,位数少的补码数的符号位向左扩展, 一直扩展到与另一数的符号位对齐。一直扩展到与另一数的符号位对齐。 01010101110000

温馨提示

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

评论

0/150

提交评论