1、 本章只是简要地阐述最主要的数学知识。对本章只是简要地阐述最主要的数学知识。对于已学过这些知识的读者,本章将起到复习和系于已学过这些知识的读者,本章将起到复习和系统化的作用。对于未曾接触过这些内容的读者,统化的作用。对于未曾接触过这些内容的读者,本章的内容是必要的入门知识,因为这些内容都本章的内容是必要的入门知识,因为这些内容都是以下各章的基础。本章的目的是使本书能够自是以下各章的基础。本章的目的是使本书能够自成系统,读者不必依赖于更多的参考书籍。成系统,读者不必依赖于更多的参考书籍。第1章计算机基础l1.1引言引言l1.2进位计数制进位计数制l1.3计算机中信息的表示方法计算机中信息的表示方
2、法l1.4运算方法运算方法l1.5计算机系统的组成及工作原理计算机系统的组成及工作原理l习题习题1.1 引言一、计算机的发展概况一、计算机的发展概况以电子器件为标志划分以电子器件为标志划分第一代:第一代:1946-1958 1946-1958 电子管计算机电子管计算机。磁鼓存储器,。磁鼓存储器,机器语言、汇编语言编程。体积大,耗电多。主机器语言、汇编语言编程。体积大,耗电多。主要用于科学、军事。要用于科学、军事。世界上第一台数字计算机世界上第一台数字计算机ENIACENIAC。电子计算机电子计算机是一种不需要人的直接干预就能够高是一种不需要人的直接干预就能够高速自动地进行算术和逻辑运算的电子装
3、置。速自动地进行算术和逻辑运算的电子装置。第二代:第二代:1958-1964 1958-1964 晶体管计算机晶体管计算机。磁芯作主存磁芯作主存储器储器,磁盘作外存储器,开始使用高级语言编磁盘作外存储器,开始使用高级语言编程。程。第三代:第三代:1964-1971 1964-1971 集成电路计算机集成电路计算机。使用。使用半导半导体存储器,出现多终端计算机和计算机网络。体存储器,出现多终端计算机和计算机网络。第四代:第四代:1971-1992 1971-1992 大规模集成电路计算机大规模集成电路计算机。出现微型计算机、单片微型计算机,外部设备出现微型计算机、单片微型计算机,外部设备多样化。
4、多样化。第五代:第五代:1992-1992-人工智能计算机人工智能计算机。模拟人的智模拟人的智能和交流方式。能和交流方式。19461946年由美国宾夕法尼亚大学研制年由美国宾夕法尼亚大学研制 ENIACENIAC(Electronic Electronic Numerical Integrator And calculatorNumerical Integrator And calculator),运算速度),运算速度 50005000次次/秒,功耗秒,功耗150kw/h150kw/h,占地,占地170m170m2 2 ,造价,造价100100万美元万美元。l微型计算机的发展概况微型计算机的发
5、展概况第一代微处理器:第一代微处理器:1971-1973 1971-1973。代表产品。代表产品Intel4004,8008Intel4004,8008。前者为。前者为4 4位机,后者为位机,后者为8 8位机。位机。集成度约为集成度约为20002000管管/片,时钟频率为片,时钟频率为1MHz,1MHz,指令指令周期为周期为20uS20uS。第二代微处理器:第二代微处理器:1973-1975 Intel8080,M6800,1973-1975 Intel8080,M6800,8 8位机位机 50005000管管/片,片,2MHz2MHz,2uS2uS第三代微处理器:第三代微处理器:1975-1
6、977 Intel8085,Z801975-1977 Intel8085,Z80,M6802,8M6802,8位机位机 1 1万万管管/片,片,2.5-5MHz2.5-5MHz,1uS1uS第四代微处理器:第四代微处理器:1978-1980 Intel8086,Z80001978-1980 Intel8086,Z8000,M6809,16M6809,16位机位机 3 3万管万管/片,片,5MHz5MHz,0.5uS0.5uS第五代微处理器:第五代微处理器:19801980以后以后 等等,16,16位机位机 1010万管万管/片,片,10MHz10MHz,0.2uS0.2uS 1983 1983
7、以后以后 Intel80386,Motorola68020Intel80386,Motorola68020,3232位机位机 15-5015-50万管万管/片,片,16MHz16MHz,0.1uS0.1uS新的一代微型计算机同前一代微型计算机相新的一代微型计算机同前一代微型计算机相比,集成度、时钟频率等均有大幅提高,另外,比,集成度、时钟频率等均有大幅提高,另外,还采取了一些新技术。如:超标量流水线、高速还采取了一些新技术。如:超标量流水线、高速缓存等。缓存等。二、计算机的主要特点二、计算机的主要特点 自动性自动性高速性高速性准确性准确性逻辑性逻辑性通用性通用性三、计算机的分类和应用三、计算机
8、的分类和应用 计算机的种类很多,从不同角度对计算计算机的种类很多,从不同角度对计算机有不同的分类方法,下面从计算机处理数据机有不同的分类方法,下面从计算机处理数据的类型、使用范围、规模和处理能力三个角度的类型、使用范围、规模和处理能力三个角度进行说明。进行说明。1、按计算机处理数据的类型分类、按计算机处理数据的类型分类 数字计算机数字计算机 模拟计算机模拟计算机 数模混合计算机数模混合计算机处理的是非连续变化的数据,在时间处理的是非连续变化的数据,在时间上是离散的,输入是数字量,输出也上是离散的,输入是数字量,输出也是数字量,如职工编号、年龄、工资是数字量,如职工编号、年龄、工资数据等。基本运
9、算部件是数字逻辑电数据等。基本运算部件是数字逻辑电路,运算精度高、通用性强。路,运算精度高、通用性强。处理和显示的是连续的物理量,数据处理和显示的是连续的物理量,数据用模拟信号(模拟量)来表示,基本用模拟信号(模拟量)来表示,基本运算部件是由运算放大器构成的各类运算部件是由运算放大器构成的各类运算电路。一般说来,他不如数字计运算电路。一般说来,他不如数字计算机精确、通用性不强,但速度快,算机精确、通用性不强,但速度快,主要用于过程控制和模拟仿真。主要用于过程控制和模拟仿真。兼有数字和模拟两种计算机的优点,既兼有数字和模拟两种计算机的优点,既能接受、输出和处理模拟量,又能接受、能接受、输出和处理
10、模拟量,又能接受、输出和处理数字量。输出和处理数字量。按计算机使用范围分类按计算机使用范围分类通用计算机通用计算机专用计算机专用计算机指为解决各种问题,具有较强的通用性而指为解决各种问题,具有较强的通用性而设计的计算机。适用于一般的科学计算、设计的计算机。适用于一般的科学计算、学术研究、工程设计和数据处理等广泛用学术研究、工程设计和数据处理等广泛用途,本身有较大的适用面。途,本身有较大的适用面。指为适应某种特殊应用而设计的计算机,指为适应某种特殊应用而设计的计算机,具有运行效率高、速度快、精度高等特点。具有运行效率高、速度快、精度高等特点。一般用在过程控制中,如智能仪表、飞机一般用在过程控制中
11、,如智能仪表、飞机的自动控制、导弹的导航系统等。的自动控制、导弹的导航系统等。按计算机的规模和处理能力分类按计算机的规模和处理能力分类巨型计算机巨型计算机大大/中型计算机中型计算机小型计算机小型计算机微型计算机微型计算机工作站工作站服务器服务器超级计算机超级计算机指运算速度快、外部存储容量大,运算速度可指运算速度快、外部存储容量大,运算速度可达达1 1亿次亿次/秒以上,主存容量高达几百兆字节甚秒以上,主存容量高达几百兆字节甚至几百万兆字节,字长可达至几百万兆字节,字长可达3232位的机器。价格位的机器。价格相当昂贵,主要用于复杂、尖端的科学研究领相当昂贵,主要用于复杂、尖端的科学研究领域,特别
12、是军事科学计算。域,特别是军事科学计算。按字长分类:按字长分类:4 4位机、位机、8 8位机、位机、1616位机、位机、3232位机、位机、6464位机位机按结构分类:按结构分类:位片机:只有一位位片机:只有一位单片机:一块芯片中包含运算器、控制器、存储单片机:一块芯片中包含运算器、控制器、存储器和输入器和输入/输出接口。输出接口。单板机:单板机:CPU,存储器,存储器,I/O接口,键盘及显示接口,键盘及显示电路制作在一块印刷线路板上。电路制作在一块印刷线路板上。微机系统:运算器和控制器为核心,加上由大规模微机系统:运算器和控制器为核心,加上由大规模集成电路制作的存储器、输入集成电路制作的存储
13、器、输入/输出接口和输出接口和系统总线,再配以相应的外部设备系统总线,再配以相应的外部设备(例如,例如,键盘、显示器、鼠标、打印机键盘、显示器、鼠标、打印机)、电源、辅、电源、辅助电路和控制微机工作的软件助电路和控制微机工作的软件1.2 计算机中数的表示计算机中数的表示一、进位计数制一、进位计数制按照进位的方法进行计数,称为进位计数制。按照进位的方法进行计数,称为进位计数制。常见的进位计数制有:二进制、八进制、十进常见的进位计数制有:二进制、八进制、十进制、十二进制、十六进制等等。制、十二进制、十六进制等等。R进制数的特点:进制数的特点:1、具有、具有R个不同的数符。个不同的数符。0,1,2,
14、R-12、逢、逢R进一。进一。进位计数制的一般表达式进位计数制的一般表达式(按权展开式按权展开式):R进制数的表示方法,任一进制数的表示方法,任一R进制数进制数S可表示为可表示为S=an-1an-2a1a0.a-1a-m位置表示法位置表示法=an-1Rn-1+a1R1a0R0a-1R-1a-mR-m(按权展开式)(按权展开式)其中其中:ai:R进制中的数字符号进制中的数字符号R:基数:基数Ri:位权,简称权:位权,简称权1.十进制十进制ND特点特点:(1)有十个数码:有十个数码:09(2)逢十进一逢十进一加权展开式以加权展开式以10为基数,各位系数为为基数,各位系数为09。ND=dn-110n
15、-1+dn-210n-2+d0100+d-110-1+例例:(1234.5)10=1103+2102+3101+4100+510-12.二进制二进制NB特点:特点:(1)两个数码:两个数码:0、1(2)逢二进一逢二进一加权展开式以加权展开式以2为基数,各位系数为为基数,各位系数为0、1。NB=bn-12n-1+bn-22n-2+b020+b-12-1+例:例:1101.101B=123+122+021+120+12-1+12-33.十六进制十六进制NH特点:特点:(1)十六个数码十六个数码09、AF(2)逢十六进一。逢十六进一。展开式以十六为基数,各位系数为展开式以十六为基数,各位系数为09,
16、AF。NH=hn-116n-1+hn-216n-2+h0160+h-116-1+例:例:DFC.8H=13162+15161+12160+816-1注意:注意:不同进位制数以不同进位制数以后缀后缀区别区别,十进制数可不十进制数可不带后缀。或加括弧,再在括弧之后注明。带后缀。或加括弧,再在括弧之后注明。101、101D、101B、101H、101H(20)10、(1101)2、(345)16二、不同进位计数制之间的转换二、不同进位计数制之间的转换1二、十六进制数转换成十进制数二、十六进制数转换成十进制数方法:方法:先将二、十六进制数按权展开,然后按照先将二、十六进制数按权展开,然后按照十进制运算
17、法则求和。十进制运算法则求和。举例:举例:1011.1010B=123+121+120+12-1+12-3=(11.625)10DFC.8H=13162+15161+12160+816-1=(3580.5)102十进制数转换成二、十六进制十进制数转换成二、十六进制方法:方法:整数部分整数部分,除基取余;小数部分除基取余;小数部分,乘基取整乘基取整不断除以所要转换的进制基不断除以所要转换的进制基数,直至商为数,直至商为0。每除一次。每除一次取一个余数,从低位排向高取一个余数,从低位排向高位。位。例例:a.39转换成二进制数转换成二进制数(39)10=100111Bb.208转换成十六进制数转换成
18、十六进制数208D=D0H用转换进制的基数乘以小数部分,用转换进制的基数乘以小数部分,直至小数为直至小数为0或达到转换精度要求的或达到转换精度要求的位数。每乘一次取一次整数,从最位数。每乘一次取一次整数,从最高位排到最低位。高位排到最低位。例:例:a.(15.8125)10转换成二进制数转换成二进制数b.0.625D转换成十六进制数转换成十六进制数0.62516=10.00.625D=0.AHc.208.625D转换成十六进制数转换成十六进制数208.625D=D0.AH215 1 2 7 1 2 3 1 1 0.8125*2 1.6250*2 1.250*2 0.5*2 1(15.8125)
19、(15.8125)1010=1111.1101=1111.11013 3二进制与十六进制数之间的转换二进制与十六进制数之间的转换二进制与十六进制数之间的转换二进制与十六进制数之间的转换由由24=16可知可知四位二进制数对应一位十六进制数四位二进制数对应一位十六进制数。例例:3AF.2H=001110101111.0010=1110101111.001B3AF21111101.11B=01111101.1100=7D.CH7DC二进制转换为二进制转换为16进制时,整数部分从最低位进行进制时,整数部分从最低位进行划分,每划分,每4位二进制数为一组,不足位二进制数为一组,不足4位的,最高位位的,最高
20、位补零;小数部分从最高位进行划分,每补零;小数部分从最高位进行划分,每4位二进制数位二进制数为一组,不足为一组,不足4位的最低为补零位的最低为补零数字系统中的信息有两类,一类是数码信息,数字系统中的信息有两类,一类是数码信息,另一类是代码信息。另一类是代码信息。数码信息数码信息就是在数字系统中进就是在数字系统中进行运算、存储和传输的数值。为了表示字符等一类行运算、存储和传输的数值。为了表示字符等一类被处理的信息,也需要用一定位数的二进制数码表被处理的信息,也需要用一定位数的二进制数码表示,这个特定的二进制码称为代码。注意,示,这个特定的二进制码称为代码。注意,“代码代码”和和“数码数码”的含义
21、的含义不尽相同,代码是不同信息的不尽相同,代码是不同信息的代号,不一定有数的含义。一般地一个码字是由若代号,不一定有数的含义。一般地一个码字是由若干信息位组成的,每位有干信息位组成的,每位有0和和1两种代码。两种代码。n位代码位代码可以组合成可以组合成2n个不同的码字,即它们可以代表个不同的码字,即它们可以代表2n种种不同信息。不同信息。三、计算机中的编码系统三、计算机中的编码系统1、二进制编码的十进制数、二进制编码的十进制数 BCDBCDBCDBCD码码码码(Binary Coded Decimal)(Binary Coded Decimal)特点:特点:(1)BCD码有十个不同字符,逢十进
22、一,是十码有十个不同字符,逢十进一,是十进制数。进制数。(2)每一位十进制数用)每一位十进制数用4位二进制编码表示,位二进制编码表示,是二进制编码的十进制数。是二进制编码的十进制数。(3)直观。)直观。例:求十进制数例:求十进制数876876的的BCDBCD码码 876.7876.7 =(1000 0111 0110.01111000 0111 0110.0111)BCDBCD 876=36CH=1101101100B 876=36CH=1101101100B注意:注意:BCDBCD码码 十进制码十进制码 二进制二进制 除除BCD编码外,还有其他二进制编码的十进编码外,还有其他二进制编码的十进
23、制数。如余制数。如余3码、余码、余3循环码等。循环码等。2 2、字符编码、字符编码 (ASCII码码AmericanStandardCodeForInformationInterchange,美国标准,美国标准信息交换码信息交换码)可表示可表示128种字符的种字符的7位基本位基本ASC码和可表示码和可表示256种字符的种字符的8位扩充位扩充ASC码(可重新定义)。码(可重新定义)。字符可分为:字符可分为:显示字符显示字符和和控制字符控制字符(例如(例如return、backspace键的编码分别为键的编码分别为13、8)。)。见见P301附表附表309:ASCII码码30H39HAZ:41H5
24、AHaz:61H7AH3、带符号数的表示方法、带符号数的表示方法(1)机器数与真值)机器数与真值机器数:机器数:计算机中数的表示形式,以二进制的形计算机中数的表示形式,以二进制的形式表示,位数通常为式表示,位数通常为8的倍数的倍数。一般。一般数的最高位数的最高位作符号位,作符号位,“0”表示表示“+”,“1”表示表示“-”。真值:真值:机器数所代表的实际数值。可用二进制机器数所代表的实际数值。可用二进制表示,也可用其他进制表示。表示,也可用其他进制表示。举例:一个举例:一个8位机器数与它的真值对应关系如下:位机器数与它的真值对应关系如下:真值:真值:X1=84=+1010100BX2=-84=
25、-1010100B机器数:机器数:X1机机=01010100BX2机机=11010100B(2)计算机对有符号数的三种表示方法)计算机对有符号数的三种表示方法l原码原码(TrueForm)定义:正数符号位为定义:正数符号位为0,负数为,负数为1,数值位保持不变,数值位保持不变例:例:X=124X原原=01111100(8位位)Y=-124Y原原=11111100(8位位)8 8位数的范围:位数的范围:-127+127(-(27-1)27-1)11111111011111111616位数的范围:位数的范围:-32767+32767特点特点:(1)能表示两个能表示两个0,0+=000000000-
26、=10000000(2)和真值近似,一目了然和真值近似,一目了然l 反码(反码(Ones Complement)定义:正数的反码与原码表示相同。定义:正数的反码与原码表示相同。负数反码符号位为负数反码符号位为1,数值位为原码数值,数值位为原码数值各位取反。各位取反。0+反反=000000000-反反=11111111-127反反=10000000例例:8位反码机器数:位反码机器数:x=4:x原原=00000100 x反反=00000100 x=-4:x原原=10000100 x反反=11111011x=100:x原原=01100100 x反反=01100100 x=-100:x原原=11100
27、100 x反反=10011011特点:特点:(1 1)0 0由两种表示方法由两种表示方法(2 2)8 8位:位:-127-127+127 16127 16位:位:-32767-32767+32767+32767(3 3)符号位为)符号位为0 0,正数,后面,正数,后面7/157/15位是其数值;位是其数值;符号位为符号位为1 1,负数,后面,负数,后面7/157/15位按位取反。位按位取反。如:如:x反反=00000101x=5y反反=11111110y=-11.1.模模 计数系统的量程计数系统的量程定义:假定有定义:假定有n n位二进制计数器,其计数范围为位二进制计数器,其计数范围为0 0(
28、2(2n n-1)-1),在该计数器上加,在该计数器上加2 2n n与减与减2 2n n结果不变,称结果不变,称2 2n n为为n n位计数系统的模。位计数系统的模。补码(补码(TwosComplement)举例:时钟系统的举例:时钟系统的“模模”为为12数字系统中的计数器数字系统中的计数器例:例:8 8位寄存器,模位寄存器,模256256100-50=100-50+256=100+206补码的引入:补码的引入:假设当前时间为假设当前时间为7点整,但钟表显示为点整,但钟表显示为9点整,为校点整,为校准钟表可采用以下方法:准钟表可采用以下方法:将时针倒转将时针倒转2圈,即:圈,即:9-2=7将时
29、针正传将时针正传10圈,即:圈,即:9+10=7+12(模舍弃)(模舍弃)可见,倒转两圈和正转两圈作用相同,对于时钟系可见,倒转两圈和正转两圈作用相同,对于时钟系统来说我们称统来说我们称-2和和10为互为补码。为互为补码。即:即:-2补补=109+-2补补=9+10=7+12数学定义:数学定义:如果如果a和和b满足满足aMODM=(n*M+b)MODM(n为正整数,为正整数,M为模),为模),就称就称a和和b同余或同余或a和和b互为补数。互为补数。结论:结论:一个计数系统,某数加(减)其模,结果一个计数系统,某数加(减)其模,结果不变。不变。2.2.补码补码定义:正数定义:正数同原码。同原码。
30、负数负数其对应的原码除符号位外求反加其对应的原码除符号位外求反加1 1。例:求例:求8位补码机器数:位补码机器数:x=+4 x原原=x反反=x补补=00000100 x=-4 x原原=10000100 x反反=11111011x补补=11111100-100原原=11100100-100补补=100111000-补补=11111111+1=00000000=0+补补=0补补-127补补=10000001-128补补=10000000特点:特点:(1 1)仅一个)仅一个0 0(2 2)8 8位:位:-128-128+127 16127 16位:位:-32768-32768+32767+32767
31、 -2 -2n-1 n-1 2 2n-1n-1-1-1(3 3)符号位为)符号位为0 0,正数,其余位是数值;,正数,其余位是数值;符号位为符号位为1 1,负数,其余位按位取反,负数,其余位按位取反+1+1。采用补码,可把减法转换为加法:采用补码,可把减法转换为加法:X=64-9=64+(-9)X=64-9=64+(-9)x补补=64补补+-9补补=01000000+11110111三种表示方式的比较:三种表示方式的比较:表示范围:表示范围:原码:原码:-127+127反码:反码:-127+127补码:补码:-128+127信息的冗余性:原码、反码存在冗余编码,补码信息的冗余性:原码、反码存在
32、冗余编码,补码不存在冗余编码不存在冗余编码运算的繁简程度:运算的繁简程度:原码、反码对加减法需要进行不同的计算原码、反码对加减法需要进行不同的计算补码对加减法只需进行加法运算即可。补码对加减法只需进行加法运算即可。4、机器数与真值之间的转换、机器数与真值之间的转换(1)真值)真值机器数机器数以下各例均为以下各例均为8位二进制数位二进制数1)X1=+127,X2=-127,求,求X原原、X补补X1原原=X1补补=01111111B=7FHX2原原=11111111=FFHX2补补=10000001=81H2)x1=+37,x2=-37,求求x原原,x补补3)x1=+45,x2=-45,求求x原原
33、,x补补(2)机器数)机器数真值真值注意机器数表示(原码、反码、补码)注意机器数表示(原码、反码、补码)注意机器数符号位注意机器数符号位1)X1原原=59H,X2原原=D9H,求真值?,求真值?X1原原=01011001=+89X2原原=11011001=-892)X1补补=59H,X2补补=D9H,求真值,求真值?X1=+1011001B=+89X2=10100111B=-395、运算方法、运算方法计算机内部对于加减法运算采用相同的运算器计算机内部对于加减法运算采用相同的运算器计算机内部对于加减法运算采用相同的运算器计算机内部对于加减法运算采用相同的运算器(加法器)进行计算,即:将参与运算的
34、各数值转换(加法器)进行计算,即:将参与运算的各数值转换(加法器)进行计算,即:将参与运算的各数值转换(加法器)进行计算,即:将参与运算的各数值转换为补码进行加、减运算,最高位作为数值直接参与运为补码进行加、减运算,最高位作为数值直接参与运为补码进行加、减运算,最高位作为数值直接参与运为补码进行加、减运算,最高位作为数值直接参与运算算算算,变减法为加法运算。变减法为加法运算。变减法为加法运算。变减法为加法运算。1.补码加法运算:补码加法运算:X+Y补补=X补补+Y补补例:例:X1=+13,Y1=+6,X2=-13,Y2=-6求求X1+Y1补补、X2+Y2补补解:先求解:先求X1补补、Y1补补、
35、X2补补、Y2补补00001101+13补补11110011-13补补+00000110+6补补+11111010-6补补00010011+19补补111101101-19补补2.2.补码减法运算补码减法运算补码减法运算补码减法运算 X-YX-Y补补补补=X=X补补补补-Y-Y补补补补=X=X补补补补+-Y+-Y补补补补例:例:X1=+6,Y1=+8,X2=-6,Y2=-8,求求X1-Y1、X2-Y2解:求解:求X1补补、Y1补补、-Y1补补、X2补补、Y2补补、-Y2补补00000110+6补补11111010-6补补+11111000-(+8)补补+00001000-(-8)补补11111
36、110-2补补100000010+2补补进位为模,舍弃进位为模,舍弃3 3、无符号数加减运算、无符号数加减运算、无符号数加减运算、无符号数加减运算法则:法则:法则:法则:加法运算,直接相加;减法运算,变补相加。加法运算,直接相加;减法运算,变补相加。加法运算,直接相加;减法运算,变补相加。加法运算,直接相加;减法运算,变补相加。例例:X=150=96H,Y=10=0AH,计算,计算X+Y=?X-Y=?1001011015010010110150+00001010+10+11110110-1010100000160 110001100140机器数机器数无符号数无符号数 补码补码100101101
37、50-106+00001010+10+1010100000160-96总结:总结:通过上例可以看出,计算机只是按照补码通过上例可以看出,计算机只是按照补码的运算规则进行加减法运算,其无法判断的运算规则进行加减法运算,其无法判断出参与运算的数据究竟是有符号数还是无出参与运算的数据究竟是有符号数还是无符号数。符号数。四、数的定点与浮点表示四、数的定点与浮点表示1 1、定点数、定点数、定点数、定点数计算机中对小数点位置采用固定位置的方法来表计算机中对小数点位置采用固定位置的方法来表计算机中对小数点位置采用固定位置的方法来表计算机中对小数点位置采用固定位置的方法来表示小数。运算简便示小数。运算简便示小
38、数。运算简便示小数。运算简便,表示范围小表示范围小表示范围小表示范围小。1)定点整数:小数点固定在数值位之后。定点整数:小数点固定在数值位之后。2)定点小数:小数点固定在数值位之前符号位之后定点小数:小数点固定在数值位之前符号位之后格式格式符号位符号位数值部分(尾数)数值部分(尾数)小数点在此为小数点在此为小数点在此为小数点在此为定点小数定点小数定点整数定点整数例例1:求定点机器数:求定点机器数5AH表示的真值。表示的真值。定点整数表示的真值:定点整数表示的真值:+1011010定点小数表示的真值:定点小数表示的真值:+0.101101例例2:求定点机器数:求定点机器数A5H表示的真值。表示的
39、真值。定点整数表示的真值:定点整数表示的真值:-1011011B定点小数表示的真值:定点小数表示的真值:-0.1011011B定点数的运算定点数的运算参与运算的数据要事先确定比例因子,将数据转参与运算的数据要事先确定比例因子,将数据转换为定点小数或定点整数后,进行计算。比例因换为定点小数或定点整数后,进行计算。比例因子既不能太大也不能太小,否则可能造成数据的子既不能太大也不能太小,否则可能造成数据的溢出或损失精度溢出或损失精度例:例:x=10.01,y=001.100解:采用定点小数法:选取比例因子解:采用定点小数法:选取比例因子2-2,即将,即将x、y分别除以分别除以4(右移两位)(右移两位
40、)x转换为转换为10.01在机器中表示为在机器中表示为10010000y转换为转换为001.100在机器中表示为在机器中表示为01100000 x+y得得11110000例:例:010.01+001.100=(0.1001+0.0110)*222 2、浮点数浮点数浮点数浮点数小数点位置不固定。表示范围大,运算复杂。小数点位置不固定。表示范围大,运算复杂。小数点位置不固定。表示范围大,运算复杂。小数点位置不固定。表示范围大,运算复杂。PfP1P2P3PmSfS1S2Sn阶符阶符阶码阶码数符数符尾数尾数二进制数的浮点表示格式二进制数的浮点表示格式二进制数的浮点表示格式二进制数的浮点表示格式:阶码阶
41、码P P尾数尾数S S二进制数浮点表示:二进制数浮点表示:N=2pSSN的尾数,表示的尾数,表示N的有效数值。的有效数值。Sf尾数的符号位,尾数的符号位,Sf=0正,正,Sf=1负负PN的阶码,表示小数点的位置(整数),决的阶码,表示小数点的位置(整数),决定定N的范围。的范围。2阶码的底,与尾数基数相同。阶码的底,与尾数基数相同。例:例:0 11 0 1011 N=20 11 0 1011 N=2+11+11 0.10110.1011 0 0000101 0 0001101 0 0000101 0 0001101X=+0.00011012+101=+11.01=+3.25 规格化浮点数:规格
42、化浮点数:使尾数数值部分的最高位为有效使尾数数值部分的最高位为有效数值位。尾数满足数值位。尾数满足0.5=|S|1N1=2 211 11 0.01011(0.01011(错错)N2=2 210 10 0.1011 0.1011(对)(对)注意:注意:浮点数的运算存在对阶问题,阶码不同的浮点数的运算存在对阶问题,阶码不同的浮点数不能参与运算浮点数不能参与运算3、浮点数与定点数的比较、浮点数与定点数的比较以长度为以长度为32位的数据比较位的数据比较(1)数值的范围:)数值的范围:定点小数(数符一位,尾数定点小数(数符一位,尾数31位)范围:位)范围:2-31=|S|=1-2-31定点小数(数符一位
43、,尾数定点小数(数符一位,尾数31位)范围:位)范围:1=|S|=231-1浮点数:阶码浮点数:阶码8位(位(1位阶符)位阶符)24位尾数(位尾数(1位数符)位数符)2-1282-23=|S|=2127(1-2-23)近似近似0=|S|=2127(2 2)浮点数的运算比定点数的运算复杂浮点数的运算比定点数的运算复杂浮点数的运算存在对阶问题,阶码不同的浮点数的运算存在对阶问题,阶码不同的浮点数不能直接参与运算。浮点数不能直接参与运算。1.3 计算机系统的组成及其工作原理计算机系统的组成及其工作原理计算机系统由软件系统和硬件系统组成计算机系统由软件系统和硬件系统组成一、一、硬件系统硬件系统1、计算
44、机硬件的基本结构、计算机硬件的基本结构硬件是指组成计算机的各种电子的,机械的,硬件是指组成计算机的各种电子的,机械的,光磁学的物理器件和设备。光磁学的物理器件和设备。至今为止,不论是低档微机或是高档微机,至今为止,不论是低档微机或是高档微机,均是冯均是冯诺依曼型的机器。它主要由诺依曼型的机器。它主要由5个基本部分个基本部分组成,即:组成,即:运算器(算术与逻辑运算单元运算器(算术与逻辑运算单元ALU),),控制器,存储器,输入设备和输出设备控制器,存储器,输入设备和输出设备。图。图1.1给给出了计算机的基本组成结构的框图。出了计算机的基本组成结构的框图。图图1.1用来实现算术、逻辑等用来实现算
45、术、逻辑等各种运算的部件各种运算的部件对整个运算过程进行有规律控制协调的部对整个运算过程进行有规律控制协调的部件(指令指针寄存器件(指令指针寄存器IP,指令寄存器指令寄存器IR,指指令译码器令译码器ID,控制信号发生器)控制信号发生器)实现计算结果实现计算结果输出的设备输出的设备实现计算程序和原实现计算程序和原始数据输入的设备始数据输入的设备外存是扩大计算机存储外存是扩大计算机存储信息能力的设备信息能力的设备主机主机外设或外设或I/O设备设备CPU 内存是用来存放原始数据、中内存是用来存放原始数据、中间数据及计算程序的部件间数据及计算程序的部件在微机中,一块集成芯片可包括控制器和运在微机中,一
46、块集成芯片可包括控制器和运算器两大部分,称为微处理器或处理器(算器两大部分,称为微处理器或处理器(centerprocessingunit,CPU)。一台微型计算机由处理)。一台微型计算机由处理器、存储器、器、存储器、I/O接口以及若干接口以及若干I/O设备所组成。各设备所组成。各部分之间通过部分之间通过总线总线连接在一起,实现信息的交换。连接在一起,实现信息的交换。图图1.2微型计算机的组成框图微型计算机的组成框图总线就是一组信号线的集合,是在计算机总线就是一组信号线的集合,是在计算机系统各部件之间传输信息的公共通路。系统各部件之间传输信息的公共通路。DB:双向的,与:双向的,与CPU的位数
47、相对应的位数相对应AB:单向的,从:单向的,从CPU送出的,送出的,AB的位的位数决定数决定CPU可直接寻址的内容范围可直接寻址的内容范围CB:双向的,传送不同控制信号:双向的,传送不同控制信号(1)计算机的结构)计算机的结构CPU的结构的结构图图1.3存储器结构存储器结构 2.2.计算机的基本工作原理计算机的基本工作原理计算机的基本工作原理计算机的基本工作原理图图1.3地址寄存器地址寄存器数据寄存器数据寄存器指令寄存器指令寄存器指令指针寄指令指针寄存器(或程存器(或程序计数器)序计数器)指令译码器指令译码器控制电路控制电路标志寄存器标志寄存器算术逻辑单元算术逻辑单元注意内存单元的地址和内容注
48、意内存单元的地址和内容每个单元都对应一个地址,以实现对单元内容每个单元都对应一个地址,以实现对单元内容的寻址的寻址1011011038F04H内存地址内存地址单元内容单元内容读操作读操作写操作写操作图图1.4读:将内存单元的内容取入读:将内存单元的内容取入CPUCPU,原单元内容不改变,原单元内容不改变写:写:CPUCPU将信息放入内存单将信息放入内存单元,单元中原来的内容被元,单元中原来的内容被覆盖覆盖例如,求例如,求5+4=?(1)编制程序,并分配计算程序及数据在存储器中编制程序,并分配计算程序及数据在存储器中的存放地址。的存放地址。(2)用输入设备将计算程序和原始数据输入到存储用输入设备
49、将计算程序和原始数据输入到存储器指定地址的存储单元中(器指定地址的存储单元中(见图见图1.5)。)。(2 2)计算机的基本工作原理)计算机的基本工作原理)计算机的基本工作原理)计算机的基本工作原理(3)从计算程序的首地址启动计算机工作,在从计算程序的首地址启动计算机工作,在CPU的控制下完成下列操作:的控制下完成下列操作:图图1.5取指阶段:从首地址所在的存储单元中,取出取指阶段:从首地址所在的存储单元中,取出第一条指令的操作码送入第一条指令的操作码送入CPU中的控制器。控中的控制器。控制器经分析,确认它为何种操作(比如取数)制器经分析,确认它为何种操作(比如取数)CPU自动将存储单元地址加自
50、动将存储单元地址加1,然后从此地址中,然后从此地址中将第一条指令操作数的地址码送到存储器的地址将第一条指令操作数的地址码送到存储器的地址译码器,并发出读命令从该单元中取出数据译码器,并发出读命令从该单元中取出数据“5”送入送入CPU的运算器中。的运算器中。至此第一条指令执行完毕。至此第一条指令执行完毕。CPU再次将存储地再次将存储地址加址加1,形成下一条指令的存放地址,并按此,形成下一条指令的存放地址,并按此地址取出指令,在控制器中分析该指令要执行地址取出指令,在控制器中分析该指令要执行的是什么操作,并发出执行该操作所需要的控的是什么操作,并发出执行该操作所需要的控制信号,直至完成该条指令所规