《大学计算机基础 课件 第二章 计算机信息基础》由会员分享,可在线阅读,更多相关《大学计算机基础 课件 第二章 计算机信息基础(48页珍藏版)》请在金锄头文库上搜索。
1、,大学计算机基础 (省精品课程) 计算机信息基础 (第二章),华南农业大学 信息学院,第二章 计算机信息基础,本章讨论的问题,第二章 计算机信息基础,熟悉计算机中的数据的运算及表达方式。,对计算机计算有初步的了解和整体的认识。,知识点,数制转换,二进制,实数表示,整数编码,ASCII编码,汉字编码,教学目的,理解计算机中信息输入、编码、存储、转换过程。,2.1 计算机所使用的数制,2.1.1 数制的概念,基数:R进制的基数=R,位权:是一个与数字位置有关的常数,位权=Rn 其中n取值:以小数点为界,向左 0,1,2,3, 向右-1,-2,-3,2.1 计算机所使用的数制,2.1.2 计算机为什
2、么要采用二进制?,我们知道,在电气元件中很容易实现两种稳定状态,如电压高低、晶体管导通与截止、电灯亮与灭。,如果用一盏灯表示09这十个数就很困难了。也许有人会说,用灭来表示0,亮一点表示1最亮为9,那么请问怎样才能区分亮一点或更亮一点?由于技术上的原因,计算机不得不最终选择二进制。,例如:有两只灯泡,分别表示亮与灭。,0 1 2 3 (十进制) 0 0 0 1 1 0 1 1 (二进制),2.1 计算机所使用的数制,计算机选择二进制可以从以下方面说明:(1) 电路简单:0、1两种状态在技术上轻而易举。(2) 可靠性高:只有两种状态,传输各处理时不易出错。(3) 运算简单:二进制数运算比较简单。
3、如二进制乘法运算只有3种:10=0;01=0;11=1,若采用十进制,则有55种(九九乘法口诀)。(4) 逻辑性强:只有0和1,可表示逻辑上的“真”、“假”。(5) 数据存储:通过磁盘的磁极的取向(南极、北极)、光盘表面的凹凸、光照有无反射等,二进制形式很容易在物理上实现数据的存储。,2.1 计算机所使用的数制,对于用户,通常还是用十进制与计算机交往,然后由计算机自动实现十进制与二进制转换。然而,在二进制位数和十进制数字之间没有显然的关系。为了克服这个问题,发明了两种位置化系统:十六进制和八进制。八进制和十六进制与二进制恰巧有倍数关系,即1位八进制数等于3位二进制数,1位十六进制数等于4位二进
4、制数。由于八进制或十六进制与二进制之间的转换很直观和简单,在认知上接近二进制,这些原因促进人们引入八进制和十六进制。但在计算机内部,数据全部都是以二进制的形式存储和加工的。采用二进制后,进入计算机中的各种数据的编码都要进行二进制转换,同样从计算机输出的数据需要进行逆转换。,2.1 计算机所使用的数制,常 用 数 制 的 对 应 关 系,2.1 计算机所使用的数制,2.1.3 二进制的运算,二进制的算术运算,加: 0+0=0 0+1=1 1+0=1 1+1=10,减: 0-0=0 0-1=1 1-0=1 1-1=0,乘: 00=0 01=0 10=0 11=1,除: 00=0 01=0 10(无
5、意义) 11=1,二进制的逻辑运算,与AND: 00=0 01=0 10=0 11=1,或OR: 00=0 01=1 10=1 11=1,0表示“假、否”,1表示“真、是”,2.1 计算机所使用的数制,十进制数,二、八、十六进制的转换,由一种数制转换成另一种数制,2.1 计算机所使用的数制,2.1.3 二进制和其它进制的转换,十进制转二进制:整数部分除以2取余,直至商为0;小数部分乘以2取整,直至小数部分为0或达到所需精度为止。十进制转八进制:方法同上。整数部分除以8,小数部分乘以8。十进制转十六进制:方法同上。整数部分除以16,小数部分乘以16。,2.1 计算机所使用的数制,结果为:1001
6、011,0.6875 2 1 1.3750 20 0.7500 21 1.5000 21 1.0000,结果为:0.1011,(75.6875)10=(1001011.1011)2,2.1 计算机所使用的数制,结果为:113,结果为:4B,16 75 B16 4 40,2.1 计算机所使用的数制,例:(1011.1)2 =,二进制、八进制、十六进制 十进制,位权相加法:各位数码乘位权,再相加。,2.1 计算机所使用的数制,123 + 022 + 121 + 120 + 12-1= 8 + 0 + 2 + 1 + 0.5= (11.5)10,例:(AB.1)16 =,10161+ 11160 +
7、 116-1= 16 + 11 + 1/16= (27.0625)10,整数部分从右向左,小数部分从左向右, 每3位二进制一组,变为1位八进制。 不足3位时分别在最左端和最右端补0凑够3位。,2.1 计算机所使用的数制,例:(1100101001011.1101)2 =,(14513.64)8,(001 110 011 100 111.101 010)2 (1110011100111.10101)2,二进制 十六进制,整数部分从右向左,小数部分从左向右, 每4位二进制一组,变为1位十六进制。 不足4位时分别在最左端和最右端补0凑够4位。,2.1 计算机所使用的数制,例:(11010111101
8、.1010001)2 =,(6BD.A2)16,(0100 1100 0010.1111 0110)2 (10011000010.1111011)2,计算机看起来神奇、智慧,但其本质上还是一种工具。作为一种前所未有的特殊的电子装置,要在物理上实现二进制的运算,首先要解决的问题是如何物理地表示或存储二进制的两个数值符号0和1,然后才是实现物理上的二进制运算。,2.1 计算机所使用的数制,2.1.5 二进制运算的物理实现,要理解二进制运算在物理上是怎样实现的,让我们从最基本的电信号开始。例如,用开关可以实现两种状态:当开关断开时电流被切断代表0;当开关接通时,电路中有电流通过,代表1。,在大多数情
9、况下,一个二进制数由一连串的0和1组成,需要很多开关来表示这个二进制数。可以先从最简单的加法运算开始,了解其运算过程。,2.1 计算机所使用的数制,图中,中间的方框表示运算部件,运算部件的左边和下边各有一个开关,分别用于输入两个参与运算的二进制数。运算部件右边就是输出结果,可以把小灯泡接在一根输出线上,这样通过灯泡的亮和不亮来代表输出的结果是0还是1。当然,这种简单的加法器没有考虑到进位,只是用电路实现了二进制的加法,称为半加器。通过简单的半加器,进而可以实现带二进制加法进位的全加器,把多个全加器连接起来就可以进行多位二进制数的加法运算了。,加法器的内部是什么呢?怎样实现开关的自动化呢?,2.
10、1 计算机所使用的数制,我们知道,当一根电线有电流通过时,就会在其周围产生微弱的磁场,那么就可以通过电流的有无来控制磁性的有无,继而来控制机械部分。继电器就是采用了这个原理,它通过电磁转换为机械的吸合、释放达到开关的作用,从而实现电路的自动导通、切断。二进制逻辑运算是计算机实现计算的基础。布尔代数是实现逻辑运算的数学工具,然而计算机如何与逻辑关系结合起来呢?数学家香农把布尔代数的“真”与“假”和电路系统的“开”与“关”对应起来,用1和0表示,并证明了可以通过继电器电路来实现布尔代数的逻辑运算。香农还提出了实现加、减、乘、除等运算的电子电路的设计方法。这些均奠定了数字电路的理论基础。,用继电器制
11、造的电路,可以实现逻辑运算。同样可以以晶体管为基础来描述数字电路,从而构成计算的基础,并实现更加复杂的逻辑运算。大量晶体管的使用促进了集成电路的发展,所有元件在结构上组成一个整体,使电子元件向着微小型化、低功耗和高可靠性方面迈进了一大步。随着制作工艺的不断改进,又产生了大规模集成电路和超大规模集成电路,使计算机硬件越来越小、功能越来越强。,2.1 计算机所使用的数制,2.2 计算机中的数据单位,位(bit):计算机存储数据的最小单元(0、1),字节(Byte):处理数据的基本单位(8bit/Byte),字长:CPU一次处理数据的二进制位数。,常用的字节计数单位:1KB1024 Byte (21
12、0B) 1MB1024 KB (220B)1GB1024 MB (230B) 1TB1024 GB (240B),2.3 数值在计算机中的表示,符号位:最高位用0表示“正”,1表示“负”。,机器数:正负符号被数值化了的数。,真值:该机器数所表达的数值。,2.3.1 整数的表示,在数学中,数值是用“”和“”表示正数和负数的,而在计算机中只有0和1,所以正负号也用0和1表示,即数值符号数字化。,2.3 数值在计算机中的表示,对有符号数的运算,需要通过原码、反码、补码的转换来完成。,2.3 数值在计算机中的表示,补码的概念是怎么来的?,补码与“模”的概念有关。“模”是指一个系统所能表示的数据个数。按
13、模运算是指运算结果超过模时,模(或模的整数倍)将溢出而只剩下余数。,例如: 8位二进制的模为28=256,假设M为模,若数a,b满足abM,则称a,b互为补数。 在有模运算中,减去一个数等于加上这个数对模的补数。,2.3.2 实数的表示,2.3 数值在计算机中的表示,在计算机中,实数的小数点是不占位置的,但又隐含规定了小数点的位置。根据小数点的位置不同,实数的表示采用了定点数和浮点数两种方式。,其中:小数点位置固定的数称为定点数。小数点位置不固定的数称为浮点数。,定点数,定点数又分为定点整数和定点小数。定点整数:定点整数是纯整数,其符号位右边所有的位数表示的是一个整数。小数点隐含固定在数值部分
14、最右端。,2.3 数值在计算机中的表示,2.3 数值在计算机中的表示,定点小数:定点小数是纯小数。小数点隐含固定在数值部分最左端。,定点数表示法简单直观,但是用定点数表示数值受到字长限制,因此表达的数值数据的范围和精度是有限的。为了方便地表示更大范围的数据以及更高的精度,在现代的计算机系统中,通常采用浮点数表示来解决这类问题。,定点小数: (+0.5),符号位,浮点数,小数点位置不固定的数称为浮点数,它既有整数部分又有小数部分,如123.55、33.789等。在计算机中通常把浮点数分成阶码和尾数两部分来表示,也就是平时所说的科学记数法。通常需要对尾数进行规格化处理,即保证尾数的最高位为1,实际
15、数值通过阶码进行调整。例如,二进制实数1010.1101可以用0.101011012100表示。(注:100等同于十进制的4),2.3 数值在计算机中的表示,规格化的形式:尾数的绝对值大于等于0.1并且小于1,从而唯一地规定了小数点的位置。,例:将十进制数 +55 以浮点数格式存放(浮点数的字长4字节)。(55)10 = (110111)2 = 0.110111 * 2110,(注:110等同于十进制的6),2.3 数值在计算机中的表示,尾数的位数决定数的精度;阶码的位数决定数的范围。,2.4 信息编码,所谓编码,就是利用数字串来标识所处理对象的不同个体。计算机采用的是二进制,这就意味着所有需
16、要计算机处理的信息,如数值、字母、汉字、符号、声音、图像等,都要用0和1组成的二进制编码形式来表示。在计算机系统中通常采用统一的编码方式,因此制定了编码的国家标准或国际标准。如BCD码、ASCII码、汉字编码、图形图像编码等。计算机使用这些编码在计算机内部和外部设备之间以及计算机之间进行信息交换。,编码和数是完全不同的!,2.4.1 十进制数的编码BCD码,BCD码(8421码):二十进制编码,用4位二进制码表示1位十进制数。(不能参与运算)例:(13579)10 =(0001 0011 0101 0111 1001)BCD(0110 1000 0000 . 0010 0100)BCD =(680.24 )10,