第1章数据的表示与编码精.ppt
《第1章数据的表示与编码精.ppt》由会员分享,可在线阅读,更多相关《第1章数据的表示与编码精.ppt(63页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第1章数据的表示与编码第1页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论2这次课的主要内容这次课的主要内容1计算机中的计算机中的数和数制数和数制 2数值的表示数值的表示与运算与运算3非数值信息非数值信息的编码的编码第2页,本讲稿共63页第一节第一节 计算机中的数和数制计算机中的数和数制第3页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论4 1.1.1 进位基数和位的权数进位基数和位的权数基数:计数制中用到的数码的个数,用R表示。位权:以基数为底的指数Ri,指数的幂是数位的序号。对一个数S,其基数为R,则:基数权数码第4页,本讲稿共63页7/11/2009
2、10:11 AM第0章 绪论5 1.1.2 计算机常用的各种进制数计算机常用的各种进制数1 十进制 每位数符为09,逢十进一。N10=2 二进制每位数符为0或1,逢二进一。N2=3 八进制 每位数符为07,逢八进一。N8=4 十六进制每位数符为09,AF,逢十六进一。N16=第5页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论6 1.1.2 计算机常用的各种进制数计算机常用的各种进制数进位制进位制二进制二进制八进制八进制十进制十进制十六进制十六进制规则规则逢二进一逢二进一逢八进一逢八进一逢十进一逢十进一逢十六进一逢十六进一基数基数R=2R=8R=10R=16基本符号基本符号0
3、,10,1,2,70,1,2,90,1,.,9,A,.,F权权2i8i10i16i形式表示形式表示BODH第6页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论7 1.1.2 计算机常用的各种进制数计算机常用的各种进制数十进制二进制八进制十六进制000011112102231133410044510155611066711177810001089100111910101012A11101113B12110014C13110115D14111016E15111117F第7页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论8 1.1.3 各种数制间的转换各种数制间的
4、转换二、八、十六进制数转换为十进制数二、八、十六进制数转换为十进制数十进制数转换为二、八、十六进制数十进制数转换为二、八、十六进制数 十进制数转换为二进制十进制数转换为二进制 十进制数转换为八进制十进制数转换为八进制 十进制数十六进制数十进制数十六进制数二进制数和八进制数、十六进制数的转换二进制数和八进制数、十六进制数的转换 二进制数转换为八、十六进制数二进制数转换为八、十六进制数 八、十六进制数转换为二进制数八、十六进制数转换为二进制数第8页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论9 1.1.3 各种数制间的转换各种数制间的转换1 二、八、十六进制数转换为十进制数转换
5、规则:按权展开后,再求和。第9页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论10 1.1.3 各种数制间的转换各种数制间的转换1 二、八、十六进制数转换为十进制数例例1:将:将(110111.101)2转换为十进制数转换为十进制数解:解:(110111.101)2 =1 25 1 24 0 23 1 22 1 21 1 20 1 2-1 0 2-2 1 2-3 =(55.625)10例例2:将:将(547.6)8转换为十进制数转换为十进制数解:解:(547.6)8 =582+481+780+68-1 =(359.75)10例例3:将:将(C6E.A2)16转换为十进制数转换
6、为十进制数解:解:(C6E.A2)16 =12162+6161+14160+1016-1+216-2 =(3182.6328125)10第10页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论11 1.1.3 各种数制间的转换各种数制间的转换2 十进制数转换为二、八、十六进制数(1)十进制数转换为二进制数转换规则:任一十进制数任一十进制数X,可以表示为,可以表示为X=X整数整数+X小数小数。将这两部分分开。将这两部分分开转换转换整数部分的转换:整数部分的转换:采用采用“除除2求余法求余法”,转换方法为:将,转换方法为:将X整数整数连续连续用用2除,求得余数(除,求得余数(1或或
7、0)分别为)分别为K0、K1、K2、,直到商为,直到商为0,所有余数排列所有余数排列Kn-1Kn-2K2K1K0 即为所转换的二进制整数部分。即为所转换的二进制整数部分。小数部分的转换:小数部分的转换:采用采用“乘乘2取整法取整法”。转换方法为:连续用。转换方法为:连续用2乘乘X小数小数,依次求得各整数位(,依次求得各整数位(0或或1)K-1、K-2、K-m,直到乘积,直到乘积的小数部分为的小数部分为0。在小数转换过程中,出现。在小数转换过程中,出现Fi恒不为恒不为0时,可按精度时,可按精度要求确定二进制小数的位数。要求确定二进制小数的位数。第11页,本讲稿共63页7/11/2009 10:1
8、1 AM第0章 绪论12 1.1.3 各种数制间的转换各种数制间的转换2、十进制数转换为二、八、十六进制数例例4:求:求(65)10的二进制表示的二进制表示解:除以解:除以2 商商Qi 余数余数Ki 65/2 32 K0=1 32/2 16 K1=0 16/2 8 K2=0 8/2 4 K3=0 4/2 2 K4=0 2/2 1 K5=0 1/2 0 K6=1 (65)10=(1000001)2 例例5 求求(0.6875)10的二进制值的二进制值解:乘以解:乘以2 小数小数Fi 整数整数Ki 0.68752 0.3750 K-1=1 0.37502 0.7500 K-2=0 0.75002
9、0.5000 K-3=1 0.50002 0.0000 K-4=1 (0.6875)10=(0.1011)2第12页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论13 1.1.3 各种数制间的转换各种数制间的转换2 十进制数转换为二、八、十六进制数(2)十进制数转换为八、十六进制数转换规则:将十进制数转换为八进制数、十六进制数时,使用的方法与十将十进制数转换为八进制数、十六进制数时,使用的方法与十进制数转换成二进制数的方法基本相同,只是求整数部分时是用进制数转换成二进制数的方法基本相同,只是求整数部分时是用商除以商除以8或或16,取其余数;小数部分改用乘以,取其余数;小数部分
10、改用乘以8或或16,取其整数,取其整数即可。即可。第13页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论14 1.1.3 各种数制间的转换各种数制间的转换2 十进制数转换为二、八、十六进制数100D=144O=64H例 100.345D=1100100.01011B2 1.040.690 0.7601.3800.3452 2 21.520 2 八进制100408128184110025022521226232100010011201001664616十六进制第14页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论15 1.1.3 各种数制间的转换各种数制间的转
11、换3 二进制数转换为八、十六进制数转换规则:转换规则:二进制数表示为(二进制数表示为(N整数整数+N小数小数),例如,),例如,(11001.01)2整数部分:从右向左按三整数部分:从右向左按三(四四)位分组,不足补零,然后按三位分组,不足补零,然后按三(四四)位转位转换为相应进制数。换为相应进制数。小数部分:从左向右按三小数部分:从左向右按三(四四)位分组,不足补零,然后按三位分组,不足补零,然后按三(四四)位转位转换为相应进制数。换为相应进制数。第15页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论16 1.1.3 各种数制间的转换各种数制间的转换3 二进制数转换为八、十
12、六进制数二进制转换为八进制举例:二进制转换为八进制举例:例例6 二进制数二进制数(10011001011.10110101)2 (010 011 001 011.101 101 010)2=(2313.552)8 2 3 1 3 5 5 2 二进制转换为十六进制举例:二进制转换为十六进制举例:例例7 二进制数二进制数(1001011.110101)2 (0100 1011.1101 0100)2=(4B.D4)16 4 B D 4第16页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论17 1.1.3 各种数制间的转换各种数制间的转换4 八、十六进制数转换为二进制数转换规则:转
13、换规则:二进制数表示为(二进制数表示为(N整数整数+N小数小数),例如,),例如,(11001.01)2整数部分:从右向左按一位八整数部分:从右向左按一位八(十六十六)进制数转换为三进制数转换为三(四四)位二进位二进制数。制数。小数部分:从左向右按一位八小数部分:从左向右按一位八(十六十六)进制数转换为三进制数转换为三(四四)位二进制数。位二进制数。第17页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论18 1.1.3 各种数制间的转换各种数制间的转换4 八、十六进制数转换为二进制数例例8 八进制数八进制数(1365.24)8 转换为二进制数转换为二进制数 (1365.24)
14、8=(001 011 110 101.010 100)2 =(1011110101.0101)2 例例9 十六进制数十六进制数(FB4.5C)16 转换为二进制数转换为二进制数 (FB4.5C)16=(1111 1011 0100.0101 1100)2 =(111110110100.010111)2 第18页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论19计算机采用二进制编码计算机采用二进制编码计算机采用二进制编码计算机采用二进制编码计算机内部采用二进制表示各类数据。这是因为:在二进制系统中,只有两个数字:0和1,因而二进制数在物理上容易实现,并且运算规则简单,可靠性强。
15、计算机中的数据可以分为数值型数据和非数值型数据两种。对于数值型数据,我们可以通过进制转换原则来完成转换;而对于非数值型数据,则必须制定特定的二进制编码才能解决,如字符型数值09、英文字符、汉字、声音、图形、图像等。1 0 1 0 0 1 0 1第19页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论20采用二进制后的一个问题采用二进制后的一个问题采用二进制后的一个问题采用二进制后的一个问题在在我我们们前前面面的的例例子子里里,b(空空格格)的的作作用用很很重重要要,它它表表示示着着一一个数的边界。如果没有了它怎么办?个数的边界。如果没有了它怎么办?在在计计算算机机中中的的做做法
16、法是是:预预先先规规定定数数据据的的表表示示单单位位。这这样样,数数据据就就不不需需要要用用特特殊殊的的符符号号来来表表示示它它的的边边界界,因因为为它它所所在在的的那那个个单单位的边界,就是这个数据的边界。位的边界,就是这个数据的边界。在计算机中有这样几个基本单位:在计算机中有这样几个基本单位:位位(bit):1 或者或者 0;字节字节(byte):8bits(可表示(可表示28(256)个不同的数);个不同的数);字字(word):与与具具体体的的计计算算机机有有关关,如如:8bits、16bits、32bits、64bits等等。它它的的长长度度为为对对应应计计算算机机的的字字长长,相相
17、当当于于在对应的图灵机中,有这么多个读写头同时读写。在对应的图灵机中,有这么多个读写头同时读写。第20页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论21计算机存储容量的常用表示单位计算机存储容量的常用表示单位计算机存储容量的常用表示单位计算机存储容量的常用表示单位最小的数据单位:位(bit)最基本的存储容量单位:字节(Byte)其它存储容量单位:KB、MB、GB、TB1B=8bit1KB=1024B1MB=1024KB1GB=1024MB1TB=1024GB字节(Byte)7 6 5 4 3 2 1 0位(Bit)第21页,本讲稿共63页第二节第二节 数值数据的表示和运算数
18、值数据的表示和运算第22页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论23计算机中二进制数的四则运算计算机中二进制数的四则运算仿照十进制数的运算规则,可以做二进制数的加法。仿照十进制数的运算规则,可以做二进制数的加法。用计算机做二进制数的减法:用计算机做二进制数的减法:等一会儿回答。等一会儿回答。用计算机做二进制数的乘法:用计算机做二进制数的乘法:把被乘数累加乘数那么多次即可(例:把被乘数累加乘数那么多次即可(例:2*3=2+2+2)。)。用计算机做二进制数的除法:用计算机做二进制数的除法:反复在被除数中减去除数、直到小于除数,减的次数为商,剩下为余反复在被除数中减去除数、
19、直到小于除数,减的次数为商,剩下为余数(例:数(例:7/3,7-3-3=1,商为,商为2,余数为,余数为1)。)。11100+)110111 101001116+8+4=2832+16+4+2+1=5564+16+2+1=83第23页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论24 1.2.1 整数的表示整数的表示1 无符号整数无符号整数 机器字长的所有位都表示数值大小机器字长的所有位都表示数值大小,步骤:,步骤:首先将整数转换为二进制形式;首先将整数转换为二进制形式;如果二进制位数不足位,则在二进制的左边补如果二进制位数不足位,则在二进制的左边补0。例将例将9存储在存储在
20、8位字长的存储单元中。位字长的存储单元中。解:首先将解:首先将9转换成二进制数转换成二进制数1001;然后高位补;然后高位补4个个0使总位数为使总位数为8,得到,得到00001001;最后将该数存储在存储单元中。;最后将该数存储在存储单元中。第24页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论25 1.2.1 整数的表示整数的表示2 有符号整数有符号整数 在数据的最高位为符号位,在数据的最高位为符号位,0表示表示“正数正数”,1表示表示“负数负数”。符号位之后符号位之后的那些位为数值位,用来表示这个整数的绝对值。的那些位为数值位,用来表示这个整数的绝对值。例将例将9存储在存
21、储在8位字长的存储单元中。位字长的存储单元中。解:解:8位中,最高位为符号位,余下位中,最高位为符号位,余下7位是有效数值位;最后存储的结果位是有效数值位;最后存储的结果是是10001001。在计算机中,数可以有三种不同的二进制表示方法(差别在于负数之在计算机中,数可以有三种不同的二进制表示方法(差别在于负数之数值位的表示不同):数值位的表示不同):l 原码表示原码表示l 反码表示反码表示l 补码表示补码表示第25页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论26 1.2.1 整数的表示整数的表示(1)原码表示)原码表示原码:原码:在给定码长后,根据一个整数的正负填写在给定
22、码长后,根据一个整数的正负填写符号位符号位,再将这个整,再将这个整数之数之绝对值绝对值的二进制表示,按照数值位的长度在前面补足必要的的二进制表示,按照数值位的长度在前面补足必要的 0 后,就后,就得到这个整数的得到这个整数的原码表示。原码表示。若码长为 8,则 123(10)的原码表示是:01111011-123(10)的原码表示是:11111011若码长为 16,则 123(10)的原码表示是:0000000001111011-123(10)的原码表示是:1000000001111011第26页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论27 1.2.1 整数的表示整数的
23、表示(1)原码表示)原码表示原码表示的计算公式是:原码表示的计算公式是:对于整数对于整数 X,设,设 X原原是它的原码表示,是它的原码表示,n 是码长,则是码长,则 X0 X 2n-1-1X原原 =2n-1+|X|-(2n-1-1)X 00 有两种原码表示:有两种原码表示:0000000010000000当当 n=8,则,则 X原原的表示范围是的表示范围是 127127 。第27页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论28 1.2.1 整数的表示整数的表示(2)反码表示)反码表示规定:规定:l 一个正整数的反码表示与其原码表示相同;一个正整数的反码表示与其原码表示相同
24、;l 一个负整数的反码表示:对其原码表示的数值位进行一个负整数的反码表示:对其原码表示的数值位进行按位按位变反变反(按位将(按位将 1 换成换成 0、将、将 0 换成换成 1)的结果。)的结果。例如(若码长为例如(若码长为 8):):(26)(反)(反)=(26)(原)(原)=0 0011010(-26)(反)(反)=11100101 (10011010 11100101)第28页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论29 1.2.1 整数的表示整数的表示(2)反码表示)反码表示反码表示的计算公式是:反码表示的计算公式是:对于整数对于整数 X,设,设 X反反是它的反码
25、表示,是它的反码表示,n 是码长,则是码长,则0 也有两种反码表示:也有两种反码表示:0000000011111111当当 n=8,则,则 X 反反的表示范围是的表示范围是 127127 。X0 X 2n-1-1X反反 =2n-1-|X|-(2n-1-1)X 0第29页,本讲稿共63页7/11/2009 10:11 AM第0章 绪论30 1.2.1 整数的表示整数的表示(3)补码表示)补码表示刚才留下了一个问题:刚才留下了一个问题:用计算机怎么做二进制数的减法?用计算机怎么做二进制数的减法?如如果果能能够够在在负负数数的的表表示示上上想想办办法法,就就有有可可能能在在计计算算机机中中利利用用二
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 表示 编码
限制150内