数据的表示与编码.ppt
数据的表示与编码现在学习的是第1页,共75页理解数字系统和数制的概念;理解数字系统和数制的概念;掌握二进制、十进制及其他进制的计数方法,掌握不同进制间的掌握二进制、十进制及其他进制的计数方法,掌握不同进制间的转换方法;转换方法;掌握二进制整数和实数的表示方法掌握二进制整数和实数的表示方法掌握二进制原码、反码、补码的表示方法;掌握二进制原码、反码、补码的表示方法;掌握二进制数的算术运算;掌握二进制数的算术运算;了解英文字符、汉字字符等的编码方式;了解英文字符、汉字字符等的编码方式;了解不同数据类型如何以不同的编码方式存储在计算机中了解不同数据类型如何以不同的编码方式存储在计算机中教 学 目目 的的现在学习的是第2页,共75页1计算机中的计算机中的数和数制数和数制 2数值的表示数值的表示与运算与运算3非数值信息非数值信息的编码的编码教教 学学 内内 容容现在学习的是第3页,共75页学学 习习 重重 点点进位计数制和数制之间的转换进位计数制和数制之间的转换定点数和浮点数定点数和浮点数带符号数的表示方法带符号数的表示方法字符编码字符编码非字符信息的编码非字符信息的编码现在学习的是第4页,共75页第一节第一节计算机中的数和数制计算机中的数和数制现在学习的是第5页,共75页 主要内容:主要内容:数字系统数字系统进位计数制进位计数制进制之间的转换进制之间的转换 1 计算机中的数和数制现在学习的是第6页,共75页 1 计算机中的数和数制数字系统数字系统设计计算机的最初目的是进行数值计算,计算机中首先表示的数据就设计计算机的最初目的是进行数值计算,计算机中首先表示的数据就是各种数字信息。随着应用的发展,现在计算机数据以不同的形式出是各种数字信息。随着应用的发展,现在计算机数据以不同的形式出现,如:数字、文字、图像、声音和视频等。但是,在计算机内部,现,如:数字、文字、图像、声音和视频等。但是,在计算机内部,这些数据形式还是以数字的形式存储和处理的。这些数据形式还是以数字的形式存储和处理的。数字系统基本概念包括:数字系统基本概念包括:数据、信息、媒体数据、信息、媒体现在学习的是第7页,共75页 1 计算机中的数和数制数据:数据:是对事实、概念或指令的一种特殊表达形式,可是对事实、概念或指令的一种特殊表达形式,可以用人工方式或自动化装置进行通信、翻译转换或加工以用人工方式或自动化装置进行通信、翻译转换或加工处理。处理。一般计算机中的数据包含以下两类:一般计算机中的数据包含以下两类:数值型数据:数值型数据:具有特定值的一类数据,可用来表示具有特定值的一类数据,可用来表示数量的多少,可比较其大小。数量的多少,可比较其大小。非数值型数据:非数值型数据:具有特定值的一类数据,可用来表具有特定值的一类数据,可用来表示数量的多少,可比较其大小。示数量的多少,可比较其大小。现在学习的是第8页,共75页信息:信息:指对于使用者有用的数据,这些数据的使用指对于使用者有用的数据,这些数据的使用可能影响到人们的行为和决策。可能影响到人们的行为和决策。计算机本质上就是计算机本质上就是进行信息存储与处理的工具。进行信息存储与处理的工具。信息处理:信息处理:通过数据的采集和输入,有效地把数据组织通过数据的采集和输入,有效地把数据组织到计算机中,由计算机系统对数据进行相应的处理加工到计算机中,由计算机系统对数据进行相应的处理加工(如:存储、建库、转换、合并、分类、计算、统计、(如:存储、建库、转换、合并、分类、计算、统计、汇总、传送等操作),最后向人们提供有用的信息的全汇总、传送等操作),最后向人们提供有用的信息的全过程。过程。1 计算机中的数和数制现在学习的是第9页,共75页媒体:媒体:承载信息的载体。包括范围比较广。承载信息的载体。包括范围比较广。与计算机信息处理有关的媒体:与计算机信息处理有关的媒体:表示媒体:表示媒体:为了使计算机有效地加工、处理、传输感觉为了使计算机有效地加工、处理、传输感觉 媒体而在计媒体而在计算机内部采用的特殊表示形式,即声、文、图、活动图像的二进制编码算机内部采用的特殊表示形式,即声、文、图、活动图像的二进制编码表示。表示。感觉媒体:感觉媒体:能使人听觉、视觉、嗅觉、味觉和触觉器官直接产生感觉的一类媒能使人听觉、视觉、嗅觉、味觉和触觉器官直接产生感觉的一类媒体,如声音、文体,如声音、文 字、图画、气味等,它们是人类使用信息的有效形式。字、图画、气味等,它们是人类使用信息的有效形式。存储媒体:存储媒体:用于存放表示媒体以便计算机随时加工处理的物理实体,如磁盘、用于存放表示媒体以便计算机随时加工处理的物理实体,如磁盘、光盘、半导体存储器等。光盘、半导体存储器等。表现媒体:表现媒体:用于把感觉媒体转换成表示媒体进而转换为感觉媒体的物理设用于把感觉媒体转换成表示媒体进而转换为感觉媒体的物理设备,如计算机的输入输出设备。备,如计算机的输入输出设备。传输媒体:传输媒体:用来将表示媒体从一台计算机传递到另一台计算机的通信载体,如同用来将表示媒体从一台计算机传递到另一台计算机的通信载体,如同轴电缆、光纤、电话线等。轴电缆、光纤、电话线等。1 计算机中的数和数制现在学习的是第10页,共75页计算机表示信息的途径:计算机表示信息的途径:通过使用数字对各式各样的信息按照进行一定的规则进行通过使用数字对各式各样的信息按照进行一定的规则进行编辑,最终变换为计算机易于识别的信息,这个过程称为数字编辑,最终变换为计算机易于识别的信息,这个过程称为数字化编码。化编码。数字化编码:数字化编码:用少量最简单的基本符号,对大量复杂多样的信息进用少量最简单的基本符号,对大量复杂多样的信息进行一定规律的组合。行一定规律的组合。编码的两大基本要素:编码的两大基本要素:基本符号的种类(例如二进制的基本符号的种类(例如二进制的“0”0”和和“1”1”)组合规则组合规则现代计算机内部采用二进制符号进行信息编码。现代计算机内部采用二进制符号进行信息编码。1 计算机中的数和数制现在学习的是第11页,共75页计算机内部采用的二进制表示方式的原因 1、二进制只有两个数码、二进制只有两个数码“0”和和“1”,易于用物理器件表示。这些物理状态,易于用物理器件表示。这些物理状态都是不同的质的变化,形象鲜明、易于区别,并且数的存储、传送和处理可都是不同的质的变化,形象鲜明、易于区别,并且数的存储、传送和处理可靠性高。靠性高。2、运算规则简单,操作实现容易、运算规则简单,操作实现容易3、二进制加、减、乘、除运算,可以归结为加、减、移位三种操作。、二进制加、减、乘、除运算,可以归结为加、减、移位三种操作。4、理论和实践证明,采用、理论和实践证明,采用R=e=2.71828进制时,存储设备最省,取进制时,存储设备最省,取3比取比取2更节省设备,但二进制比三进制易于表示更节省设备,但二进制比三进制易于表示5、二进制中的、二进制中的“1”和和“0”与逻辑命题中的与逻辑命题中的“真真”、“假假”相对应,为计算相对应,为计算机实现逻辑运算和程序中的逻辑判断创造了良好条件。机实现逻辑运算和程序中的逻辑判断创造了良好条件。为了书写方便,在用户层计算机也采用八进制和十六进制表示方式,为了书写方便,在用户层计算机也采用八进制和十六进制表示方式,进制的表示和进制之间的转换统称为进制的表示和进制之间的转换统称为进位计数制。进位计数制。1 计算机中的数和数制现在学习的是第12页,共75页 进位计数制的主要内容1进位基数和位的权数进位基数和位的权数2二进制、八进制、十六进制数制二进制、八进制、十六进制数制3数制之间的相互转换数制之间的相互转换 1 计算机中的数和数制现在学习的是第13页,共75页基数:计数制中用到的数码的个数,用基数:计数制中用到的数码的个数,用R表示。表示。位权:以基数为底的指数,指数的幂是数位的序位权:以基数为底的指数,指数的幂是数位的序号。号。对一个数对一个数S,其基数为,其基数为R,则:,则:1 计算机中的数和数制1进位基数和位的权数进位基数和位的权数现在学习的是第14页,共75页进位制进位制二进制二进制八进制八进制十进制十进制十六进制十六进制规则规则逢二进一逢二进一逢八进一逢八进一逢十进一逢十进一逢十六进一逢十六进一基数基数R=2R=8R=10R=16基本符号基本符号0,10,1,2,70,1,2,90,1,.,9,A,.,F权权2i8i10i16i形式表示形式表示BODH2计算机常用的各种进制数的表示计算机常用的各种进制数的表示 1 计算机中的数和数制现在学习的是第15页,共75页(1 1)二、八、十六进制数转换为十进制数)二、八、十六进制数转换为十进制数(2 2)十进制数转换为二、八、十六进制数)十进制数转换为二、八、十六进制数 十进制数转换为二进制十进制数转换为二进制 十进制数转换为八进制十进制数转换为八进制 十进制数十六进制数十进制数十六进制数(3 3)二进制数和八进制数、十六进制数的转换)二进制数和八进制数、十六进制数的转换 二进制数转换为八、十六进制数二进制数转换为八、十六进制数 八、十六进制数转换为二进制数八、十六进制数转换为二进制数 1 计算机中的数和数制3数制之间的相互转换数制之间的相互转换现在学习的是第16页,共75页 1 计算机中的数和数制(1)二、八、十六进制数转换为十进制数)二、八、十六进制数转换为十进制数转换规则:转换规则:现在学习的是第17页,共75页例例1-1将将(10010.11)2转换为十进制数转换为十进制数解:解:(10010.11)2=124+023+022+121+020+12-1+12-2=(18.75)10 1 计算机中的数和数制举例:举例:现在学习的是第18页,共75页例例1-2将将(548.6)8转换为十进制数转换为十进制数解:解:(548.6)8=582+481+880+68-1=(360.75)10例例1-3将将(C6E.A2)16转换为十进制数转换为十进制数解:解:(C6E.A2)16=12162+6161+14160+1016-1+216-2=(3182.6328125)10 1 计算机中的数和数制现在学习的是第19页,共75页任一十进制数任一十进制数X,可以表示为,可以表示为X=X整数整数+X小数小数。将这两部分分开转换。将这两部分分开转换整数部分的转换:整数部分的转换:采用采用“除除2求余法求余法”,转换方法为:将,转换方法为:将X整数整数连续用连续用2除,求得余除,求得余数(数(1或或0)分别为)分别为K0、K1、K2、,直到商为,直到商为0,所有余数排列,所有余数排列Kn-1Kn-2K2K1K0即为所转换的二进制整数部分。即为所转换的二进制整数部分。小数部分的转换:小数部分的转换:采用采用“乘乘2取整法取整法”。转换方法为:连续用。转换方法为:连续用2乘乘X小数小数,依次,依次求得各整数位(求得各整数位(0或或1)K-1、K-2、K-m,直到乘积的小数部分为,直到乘积的小数部分为0。在小数转换。在小数转换过程中,出现过程中,出现Fi恒不为恒不为0时,可按精度要求确定二进制小数的位数。时,可按精度要求确定二进制小数的位数。1 计算机中的数和数制(2)十进制数转换为二、八、十六进制数)十进制数转换为二、八、十六进制数转换规则:转换规则:现在学习的是第20页,共75页十进制转换为二进制举例:十进制转换为二进制举例:例例1-4求求(65)10的二进制表示的二进制表示解:解:除以除以2商商Qi余数余数Ki65/232K0=132/216K1=016/28K2=08/24K3=04/22K4=02/21K5=01/20K5=1(65)10=(1000001)2 1 计算机中的数和数制现在学习的是第21页,共75页例例1-5求求(0.6875)10的二进制值的二进制值解:解:乘以乘以2小数小数Fi整数整数Ki0.687520.3750K-1=10.375020.7500K-2=00.750020.5000K-3=10.500020.0000K-4=1(0.6875)10=(0.1011)2 1 计算机中的数和数制现在学习的是第22页,共75页将十进制数转换为八进制数、十六进制数时,使用的方法与十将十进制数转换为八进制数、十六进制数时,使用的方法与十进制数转换成二进制数的方法基本相同,只是求整数部分时是进制数转换成二进制数的方法基本相同,只是求整数部分时是用商除以用商除以8或或16,取其余数;小数部分改用乘以,取其余数;小数部分改用乘以8或或16,取其整数,取其整数即可。即可。1 计算机中的数和数制(2)十进制数转换为二、八、十六进制数)十进制数转换为二、八、十六进制数现在学习的是第23页,共75页转换规则:转换规则:二进制数表示为(二进制数表示为(N整数整数+N小数小数),例如,),例如,(11001.01)2整数部分:从右向左按三整数部分:从右向左按三(四四)位分组,不足补零,然后按三位分组,不足补零,然后按三(四四)位转换为相应进制数。位转换为相应进制数。小数部分:从左向右按三小数部分:从左向右按三(四四)位分组,不足补零,然后按三位分组,不足补零,然后按三(四四)位位转换为相应进制数。转换为相应进制数。(3)二进制数转换为八、十六进制数)二进制数转换为八、十六进制数 1 计算机中的数和数制现在学习的是第24页,共75页二进制转换为八进制举例:二进制转换为八进制举例:例例1-6 二进制数二进制数(10011001011.10110101)2 (010011001011.101101010)2=(2313.552)8 2 3 1 3 5 5 2 二进制转换为十六进制举例:二进制转换为十六进制举例:例例1-7 二进制数二进制数(1001011.110101)2 (0100 1011.1101 0100)2=(4B.D5)16 4 B D 5 1 计算机中的数和数制现在学习的是第25页,共75页(4)八、十六进制数转换为二进制数)八、十六进制数转换为二进制数转换规则:转换规则:从右向左按一位八进制数转换为三位二进制数从右向左按一位八进制数转换为三位二进制数从右向左按一位十六进制数转换为四位二进制数从右向左按一位十六进制数转换为四位二进制数 1 计算机中的数和数制现在学习的是第26页,共75页举例:举例:例例1-8八进制数八进制数(1365.24)8转换为二进制数转换为二进制数(1365.24)8=(001011110101.010100)2=(1011110101.0101)2例例1-9十六进制数十六进制数(FB4.5C)16转换为二进制数转换为二进制数(FB4.5C)16=(111110110100.01011100)2=(111110110100.010111)2 1 计算机中的数和数制现在学习的是第27页,共75页第二节第二节数值的表示与运算数值的表示与运算现在学习的是第28页,共75页 主要内容:主要内容:计算机中数值表示方法计算机中数值表示方法整数的表示整数的表示实数的表示实数的表示位的算术运算位的算术运算 2 数值的表示与运算现在学习的是第29页,共75页(1)计算机中数据的表示方法)计算机中数据的表示方法 定点表示法定点表示法 浮点表示法浮点表示法任何一个二进制数任何一个二进制数N都可以表示为都可以表示为N=2ES其中其中E是一个二进制整数,称为数是一个二进制整数,称为数N的阶码,的阶码,2为阶码的基数,为阶码的基数,S是二进制小数,称为数是二进制小数,称为数N的尾数。的尾数。E和和S可正可负。尾数可正可负。尾数S表示数表示数N的全部有效数据,阶码的全部有效数据,阶码E指明该数的小数点位置,表示数据的大小范指明该数的小数点位置,表示数据的大小范围。围。2 数值的表示与运算现在学习的是第30页,共75页定点表示法定点表示法阶码阶码E保持不变保持不变若若E=0,小数点固定在最高位之前,则该数是一个纯小数或定点小,小数点固定在最高位之前,则该数是一个纯小数或定点小数。数。例如例如N=200.110101001=0.110101001若若E=n(n为尾数的位数为尾数的位数),则把小数点定在尾数最末位之后,表,则把小数点定在尾数最末位之后,表示一个纯整数示一个纯整数(定点整数定点整数)。例如例如N=270.1011010=01011010 2 数值的表示与运算现在学习的是第31页,共75页浮点表示法浮点数的格式阶码位数阶码位数m与尾数位数与尾数位数n之间有如下关系:之间有如下关系:2m-1n即表示阶码的值应保证实际的小数点可以在整个尾数的位格中移动。即表示阶码的值应保证实际的小数点可以在整个尾数的位格中移动。浮点数的表示形式阶码阶符尾数尾符 2 数值的表示与运算现在学习的是第32页,共75页定点表示法与浮点表示法的比较:定点表示法与浮点表示法的比较:表示的数据范围不同(假设字长为位)表示的数据范围不同(假设字长为位)定点表示法,定点表示法,8 8位小数,能表示的数据范围:位小数,能表示的数据范围:0.00000010.1111111 (2-71-2-7)浮点表示法,浮点表示法,2 2位阶码,位阶码,1 1位阶符,位阶符,4 4位尾数,位尾数,1 1位尾符表示的范位尾符表示的范围:围:0.00012-11 0.1111211运算规则的复杂性不同运算规则的复杂性不同定点数:定点数:较简单;较简单;浮点数:浮点数:较复杂。较复杂。精度不同:精度不同:规格化浮点数的精度远远大于定点数。规格化浮点数的精度远远大于定点数。2 数值的表示与运算现在学习的是第33页,共75页数的表示单位和机器字长:数的表示单位和机器字长:数的表示单位:数的表示单位:位(位(BitBit):):表示数的最基本单位,对二进制只有表示数的最基本单位,对二进制只有“0”0”和和“1”1”字节(字节(ByteByte):):8 8位二进制数位二进制数字(字(WordWord):):1616位二进制数位二进制数机器字长:机器字长:参加运算的寄存器所含的二进制位数,代表机器的精度参加运算的寄存器所含的二进制位数,代表机器的精度固定长度固定长度可变字长可变字长 2 数值的表示与运算现在学习的是第34页,共75页2.4 带符号数的表示 数据的表示方法:数据的表示方法:一个数的表示方法,是它们在计算机中的组成格式和编码规则。一个数的表示方法,是它们在计算机中的组成格式和编码规则。当一个数送入计算机进行运算处理时,首先将其转换为二进当一个数送入计算机进行运算处理时,首先将其转换为二进制数,同时还要解决以下几个问题:制数,同时还要解决以下几个问题:1怎样表示数的符号怎样表示数的符号2怎样确定小数点的位置(怎样确定小数点的位置(对于整数则不需要对于整数则不需要)现在学习的是第35页,共75页(2)整数的表示)整数的表示 整数是没有小数部分的整型数字整数是没有小数部分的整型数字 例如:例如:123、4、-56、0等都是整数,而等都是整数,而1.34则不是整数。则不是整数。计算机中整数的分类:计算机中整数的分类:无符号整数:无符号整数:不区分正负的正整数。不区分正负的正整数。有符号整数:有符号整数:最高位表示正负的整数。最高位表示正负的整数。2 数值的表示与运算现在学习的是第36页,共75页整数的原码、反码和补码整数的原码、反码和补码原码:原码:所谓原码是用一个数的最高位存放符号所谓原码是用一个数的最高位存放符号(0为正为正,1为为负负),后续的其他位与数的真值相同的数据表示方,后续的其他位与数的真值相同的数据表示方法。法。2 数值的表示与运算现在学习的是第37页,共75页整数的原码表示:整数的原码表示:规则:规则:机器数的最高一位表示符号,机器数的最高一位表示符号,“0”表示正号;表示正号;“1”表示负表示负号,后面各位用数的绝对值表示。号,后面各位用数的绝对值表示。整数原码的定义为:整数原码的定义为:上式中,上式中,X原原为机器数的原码为机器数的原码,X为真值为真值,n为整数的位数为整数的位数。例例1-10:求:求X=1101和和Y=-1101的原码的原码解:解:X=1101时,时,原原=01101Y=-1101时,时,Y原原=24-(-1101)=11011 2 数值的表示与运算现在学习的是第38页,共75页整数的反码整数的反码反码:反码:数值的反码表示法是用最高位存放符号,并将数值的反码表示法是用最高位存放符号,并将原码的其余各位逐位取反。反码的取值空间和原码相原码的其余各位逐位取反。反码的取值空间和原码相同且一一对应。同且一一对应。2 数值的表示与运算现在学习的是第39页,共75页定义:定义:整数反码的数学定义为:整数反码的数学定义为:或者或者X反反=X(mod2n+1-1)例例1-12X=1011,则,则X反反=01011=-1011,则则反反=25-1+X=10100整数的反码整数的反码 2 数值的表示与运算现在学习的是第40页,共75页整数的补码整数的补码补码:补码:在补码表示法中,正数的补码表示与原码相同,即最高符在补码表示法中,正数的补码表示与原码相同,即最高符号位用号位用0表示正,其余位为数值位。而负数的补码则为它的反表示正,其余位为数值位。而负数的补码则为它的反码、并在最低有效位加码、并在最低有效位加1所形成。所形成。例例1-11:求:求X=1101和和Y=-1101的反码的反码解:解:X=1101时,时,原原=01101补补=00010Y=-1101时,时,Y原原=24-(-1101)=11011Y补补=10100注:我们在使用程序设计语言设计程序中使用的是数据的原码,而数据注:我们在使用程序设计语言设计程序中使用的是数据的原码,而数据在计算机中是以补码的形式存在的。在计算机中是以补码的形式存在的。2 数值的表示与运算现在学习的是第41页,共75页三种编码的比较:三种编码的比较:相同点:相同点:1、三种编码(原码、反码、补码)的最高位都是符号位。三种编码(原码、反码、补码)的最高位都是符号位。2、当真值为正时,三种编码的符号位都用当真值为正时,三种编码的符号位都用0表示,数值部分与表示,数值部分与真值相同。真值相同。即它们的表示方法是相同的。即它们的表示方法是相同的。3、当真值为负时,三种编码的符号位都用当真值为负时,三种编码的符号位都用1表示,但数值部分的表示,但数值部分的表示各不相同,数值部分存在这样的关系:补码是原码的表示各不相同,数值部分存在这样的关系:补码是原码的“求反求反加加1”(整数整数),或者,或者“求反末位加求反末位加1”(小数小数);反码是原码的;反码是原码的“每位求每位求反反”。4、它们所能表示的数据范围基本一样。它们所能表示的数据范围基本一样。区别:区别:在于对负数的表示方法有所不同。在于对负数的表示方法有所不同。2 数值的表示与运算现在学习的是第42页,共75页溢出溢出因为存储空间大小(即存储单元的位的数量)的限制,可以表达的整因为存储空间大小(即存储单元的位的数量)的限制,可以表达的整数范围是有限的,当要表达的数超出计算机表达的范围,就会得到错数范围是有限的,当要表达的数超出计算机表达的范围,就会得到错误的结果,我们称这种情况为误的结果,我们称这种情况为溢出溢出。举例:举例:假设在假设在4-bit存储单元中,我们可以存储的无符号整数仅为存储单元中,我们可以存储的无符号整数仅为0到到241之间之间,若要存储,若要存储18(10010)2这个数,则计算机只保留右边四位这个数,则计算机只保留右边四位(0010)2=2,产生错误结果,发生溢出。,产生错误结果,发生溢出。在现代计算机中,都有对溢出的保护设置,当发生溢出时,机器将自在现代计算机中,都有对溢出的保护设置,当发生溢出时,机器将自动停止当前运算,并报警。动停止当前运算,并报警。2 数值的表示与运算现在学习的是第43页,共75页(3)实数的表示)实数的表示 实数是带有整数部分和小数部分的数字实数是带有整数部分和小数部分的数字 例如:例如:1.23、3.4、0.56等都是实数。等都是实数。实数小数点位置不固定,所以称实数小数点位置不固定,所以称浮点数浮点数。它是既有整数又有小数的。它是既有整数又有小数的数,纯小数可以看作实数的特例。数,纯小数可以看作实数的特例。在计算机中采用在计算机中采用浮点表示法浮点表示法来表示实数:来表示实数:2 数值的表示与运算现在学习的是第44页,共75页(3)实数的表示)实数的表示实数的格式为了使表示法的固定部分统一,科学计数法(用于十进制)和浮点为了使表示法的固定部分统一,科学计数法(用于十进制)和浮点表示法(用于二进制)都在小数点左边使用了唯一的非零数码。这称为表示法(用于二进制)都在小数点左边使用了唯一的非零数码。这称为规范化规范化。计算机表示实数时,只存储实数的三部分信息:符号,指数,和尾计算机表示实数时,只存储实数的三部分信息:符号,指数,和尾数(小数点右边的位)。小数点和定点部分左边的位数(小数点右边的位)。小数点和定点部分左边的位1并没有存储并没有存储他们是隐含的。他们是隐含的。2 数值的表示与运算现在学习的是第45页,共75页(3)实数的表示)实数的表示例如,一个实数例如,一个实数1000111.0101规范化后变成为:规范化后变成为:261.0001110101,在计算机中表示为:在计算机中表示为:+261.0001110101+60001110101符号符号指数指数尾数尾数符号符号一个数的符号可以用一个二进制位来存储(一个数的符号可以用一个二进制位来存储(0或者或者1)。)。指数指数指数(指数(2的幂)定义为小数点移动的位数。其可以为正也可以为负。的幂)定义为小数点移动的位数。其可以为正也可以为负。余码表示法余码表示法(后面讨论)是用来存储指数位的方法。(后面讨论)是用来存储指数位的方法。尾数尾数尾数是指小数点右边的二进制数。它定义了该数的精度。尾数是作为无符号整数尾数是指小数点右边的二进制数。它定义了该数的精度。尾数是作为无符号整数存储的。存储的。2 数值的表示与运算现在学习的是第46页,共75页(3)实数的表示)实数的表示余码系统为为了了让让正正的的和和负负的的整整数数都都可可以以作作为为无无符符号号数数存存储储,计计算算机机通通常常采采用用余余码码系系统统。在在余余码码系系统统中中,使使用用一一个个正正整整数数(称称为为一一个个偏偏移移量量)加加到到每每个个数数字字中中,用用于于把把他他们们同同一一移移到到非非负负的的一一边边。这这个偏移量的值是个偏移量的值是2m-1-1,m是内存单元存储指数的大小。是内存单元存储指数的大小。2 数值的表示与运算现在学习的是第47页,共75页(3)实数的表示(举例)实数的表示(举例)假如一个字节存储的实数是假如一个字节存储的实数是01011011。利用前面的知识分析这个位模式,。利用前面的知识分析这个位模式,符号位符号位0指数指数101尾数尾数1011在尾数的左边放置一个小数点,于是得到:在尾数的左边放置一个小数点,于是得到:1011求解指数部分(求解指数部分(101)的内容)的内容,使用余,使用余3码,用其表示的值减去偏移量码,用其表示的值减去偏移量3即,即,(101)2-3=5-3=2,指数表示为正数指数表示为正数2。将上面所得结果的小数点向右移动将上面所得结果的小数点向右移动2位。(负指数域就意味着向左移动小数位。(负指数域就意味着向左移动小数点。)因点。)因此,我们可以得到:此,我们可以得到:1011这就是这就是2.75的二进制表示。的二进制表示。2 数值的表示与运算现在学习的是第48页,共75页(4)位的算术运算)位的算术运算1.整数的算术运算整数的算术运算整数算术运算:整数算术运算:加、减、乘、除;加、减、乘、除;整数算术运算的方法:整数算术运算的方法:以补码的形式进行运算以补码的形式进行运算 2 数值的表示与运算现在学习的是第49页,共75页整数的算术运算(举例)整数的算术运算(举例)例例1 13:用二进制补码表示方法计算:用二进制补码表示方法计算19加加24。解:解:(19)()(24)=(43)这些数字在这些数字在8位存储单元中用二进制补码分别表示为位存储单元中用二进制补码分别表示为00010011和和00011000。结果对于任何。结果对于任何分配大小来说是类似的。分配大小来说是类似的。0001001100011000进位进位1结果结果00101011(00101011)2=(+43)10减法运算可以看作与负数的加法运算,过程大致类似减法运算可以看作与负数的加法运算,过程大致类似。2 数值的表示与运算现在学习的是第50页,共75页(4)位的算术运算)位的算术运算2.实数的算术运算实数的算术运算实数(浮点数)也可以进行包括加减乘除在内的算术运算。我们只实数(浮点数)也可以进行包括加减乘除在内的算术运算。我们只介绍加法和减法,因为乘法和除法是加法和减法的多次重复运算。介绍加法和减法,因为乘法和除法是加法和减法的多次重复运算。浮点数加减法是同一个处理过程。步骤如下:浮点数加减法是同一个处理过程。步骤如下:1.检验符号检验符号,如果符号相同,相加其值,结果符号与他们相同。如果符,如果符号相同,相加其值,结果符号与他们相同。如果符号不同,比较绝对值,绝对值大的减去小的,结果符号取绝对值大的一号不同,比较绝对值,绝对值大的减去小的,结果符号取绝对值大的一方。方。2.移动小数点移动小数点,使两者阶数相同。也就是说,当阶数不同时,使两者阶数相同。也就是说,当阶数不同时,数值小的一方将小数点左移,但要使值不变。数值小的一方将小数点左移,但要使值不变。3.将变换后的数值进行加减运算将变换后的数值进行加减运算(包括整数和小数部分)。(包括整数和小数部分)。2 数值的表示与运算现在学习的是第51页,共75页第三节第三节非数值信息的编码非数值信息的编码现在学习的是第52页,共75页 主要内容:主要内容:字符的编码字符的编码ASCII码码汉字的编码汉字的编码Unicode码码静态图像的编码静态图像的编码动态数据的编码动态数据的编码 3 非数值信息的编码现在学习的是第53页,共75页随着现代计算机运用的深入,计算机不仅仅进行科学计算,实随着现代计算机运用的深入,计算机不仅仅进行科学计算,实际上更大量的工作是用于处理人们日常工作和生活中最常使用际上更大量的工作是用于处理人们日常工作和生活中最常使用的信息形式,也就是所谓的非数值型数据,包括语言文字、逻的信息形式,也就是所谓的非数值型数据,包括语言文字、逻辑语言、视频图像等非数值信息。这需要为计算机找到一种合辑语言、视频图像等非数值信息。这需要为计算机找到一种合适的方法来表达这些信息。适的方法来表达这些信息。计算机中使用了不同的计算机中使用了不同的编码编码来表示和存储数字、文字符号、声音、来表示和存储数字、文字符号、声音、图片和图像(视频)信息。图片和图像(视频)信息。编码(或代码)编码(或代码)通常指一种在人和机器之间进行信息转换的通常指一种在人和机器之间进行信息转换的系统(体系)。编码是人们在实践中逐步创造的一种用较少系统(体系)。编码是人们在实践中逐步创造的一种用较少的符号来表达较复杂信息的表示方法。的符号来表达较复杂信息的表示方法。3 非数值信息的编码现在学习的是第54页,共75页(1)字符的编码字符的编码ASCII码码字符是非数值型数据的基础,字符与字符串数据是计算机中用字符是非数值型数据的基础,字符与字符串数据是计算机中用得最多的非数值型数据。在使用计算机的过程中,人们需要利得最多的非数值型数据。在使用计算机的过程中,人们需要利用字符与字符串编写程序、表示文字及各类信息,以便与计算用字符与字符串编写程序、表示文字及各类信息,以便与计算机进行交流。为了使计算机硬件能够识别和处理字符,必须对机进行交流。为了使计算机硬件能够识别和处理字符,必须对字符按一定规则用二进制进行编码,使得系统里的每一个字母字符按一定规则用二进制进行编码,使得系统里的每一个字母有唯一的编码;文本中还存在数字和标点符号,所以也必须有有唯一的编码;文本中还存在数字和标点符号,所以也必须有它们的编码。它们的编码。美国最先制定了符合他们使用需要的美国美国最先制定了符合他们使用需要的美国标准信息交换标准码标准信息交换标准码(AmericanStandardCodeforInformationInterchange),),简称简称ASCII码。码。3 非数值信息的编码现在学习的是第55页,共75页ASCII码码“美国标准信息交换代码美国标准信息交换代码”(AmericanStandardCodeforInformationInterchange),简称,简称ASCII码。其包含码。其包含7位二进制位二进制编码编码,可表示,可表示27=128个个字符。字符。ASCII码中,编码值码中,编码值031不对应任何可印刷(或称有字不对应任何可印刷(或称有字形)字符,通常称它们为控制字符,用于通信中的通信控制形)字符,通常称它们为控制字符,用于通信中的通信控制或对计算机设备的功能控制。编码值为或对计算机设备的功能控制。编码值为32的是空格(或间隔)的是空格(或间隔)字符字符SP。编码值为。编码值为127的是删除控制的是删除控制DEL码。其余的码。其余的94个字符称个字符称为可印刷字符。为可印刷字符。标准标准ASCII码表如图所示码表如图所示(标准(标准ASCII码表)码表)3 非数值信息的编码现在学习的是第56页,共75页(2)汉字编码)汉字编码汉字也是字符,与西文字符比较,汉字数量大,字形复杂,同音汉字也是字符,与西文字符比较,汉字数量大,字形复杂,同音字多,这就给汉字在计算机内部的存储、传输、交换、输入、输字多,这就给汉字在计算机内部的存储、传输、交换、输入、输出等带来了一系列的问题。为了能直接使用西文标准键盘输入汉出等带来了一系列的问题。为了能直接使用西文标准键盘输入汉字,还必须为汉字设计相应的字,还必须为汉字设计相应的输入编码输入编码,以适应计算机处理汉字的,以适应计算机处理汉字的需要。需要。汉字编码的特点:汉字编码的特点:(1)汉字是一种象形文字,据统计,从甲骨文至今约有六万左右的汉)汉字是一种象形文字,据统计,从甲骨文至今约有六万左右的汉字。目前常见的汉字有约七千个。字。目前常见的汉字有约七千个。(2)汉字字形结构复杂,笔划繁多。)汉字字形结构复杂,笔划繁多。(3)汉字同音字多,多音字多。)汉字同音字多,多音字多。(4)涉及多种编码:)涉及多种编码:3 非数值信息的编码现在学习的是第57页,共75页汉字信息所涉及的编码:汉字信息所涉及的编码:国际码:国际码:1980年我国颁布了年我国颁布了信息交换用汉字编码字符集基本集信息交换用汉字编码字符集基本集代号为代号为GB2312-80,是国家规定的用于汉字信息处理使用的代码依据,这种编码称为国标码。在国标码的字是国家规定的用于汉字信息处理使用的代码依据,这种编码称为国标码。在国标码的字符集中共收录了符集中共收录了6763个常用汉字和个常用汉字和682个非汉字字符(图形、符号),其中一级汉字个非汉字字符(图形、符号),其中一级汉字3755个,以汉语拼音为序排列,二级汉字个,以汉语拼音为序排列,二级汉字3008个,以偏旁部首进行排列。个,以偏旁部首进行排列。机内码:机内码:汉字的机内码是计算机系统内部对汉字进行存储、处理、传输统一使用的汉字的机内码是计算机系统内部对汉字进行存储、处理、传输统一使用的代码,又称为汉字内码。汉字内码是与代码,又称为汉字内码。汉字内码是与ASCII对应的,用二进制对汉字进行的编码。对应的,用二进制对汉字进行的编码。一般用一般用2个字节来存放汉字的内码,即双字节字符集(个字节来存放汉字的内码,即双字节字符集(double-bytecharacterset,简称,简称DBCS)数字编码数字编码:如电报码、区位码等。特点:难于记忆,不易推广;:如电报码、区位码等。特点:难于记忆,不易推广;字音编码字音编码:如拼音码等。特点:简单易学,但重码多;:如拼音码等。特点: