导论第2章信息表示课件.ppt
2022/12/5,中山大学计算机科学系,第2章,信息表示技术基础,2022/12/5,中山大学计算机科学系,第2章 信息表示技术基础,数制及转换数值型数据的表示及运算字符编码技术数据压缩,2022/12/5,中山大学计算机科学系,2.1 数制及转换,2.1.1 进位计数制数制:也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法。进位计数制:按进位的方法进行计数。例如,十进制、二进制、八进制和十六进制等。进位计数制三要素数位:如个、十、百、千、万位等。基数:数码个数,逢基数进一。位权:与数位相关的一个固定数值。例如,十进制数的个位位权为100=1,十位为101=10,百位为102=100 而小数点后的位权依次为10-1、10-2 等;对于二进制数101.01,其位权依次是22、21、20、2-1、2-2。,2022/12/5,中山大学计算机科学系,2.1 数制及转换,常见进位计数制,2022/12/5,中山大学计算机科学系,2.1 数制及转换,位权展开式用于把任何一个R进制数N转换为等值的十进制数:其中:i=0,1,2,3, Ri为第i位的位权,ai为第i位数码所对应的十进制数(或称系数)。,2022/12/5,中山大学计算机科学系,2.1 数制及转换,2.1.2 将非十进制数转换为十进制数方法:采用位权展开式示例:(1011.101)2 = 123+022+121+120+ 12-1+02-2+12-3 = (11.625)10 (143) 8 = 182+481+380 = (99)10 (FA59)16 = 15163+10162+5161+9160 = (64089)10,2022/12/5,中山大学计算机科学系,2.1 数制及转换,2.1.3 将十进制数转换为非十进制数基本方法:将整数部分和小数部分分别进行转换,然后再将它们合并起来。一、对于整数部分,采用除R取余数倒排法:例2.2,(89)10 (1011001)2 ,采用“除2取余倒排法”,2022/12/5,中山大学计算机科学系,2.1 数制及转换,例2.3,(219)10 (DB)16 ,采用“除16取余倒排法”,2022/12/5,中山大学计算机科学系,2.1 数制及转换,二、对于小数部分,采用乘R取整顺排法例2.4,(0.3125)10 (0.0101)2 , 采用“乘2取整顺排法”,2022/12/5,中山大学计算机科学系,2.1 数制及转换,2.1.4 非十进制数之间的转换(一)二进制转换为八进制十六进制方法:3位合1位(或4位合1位),不足补0 例2.5,2022/12/5,中山大学计算机科学系,2.1 数制及转换,(二)八进制十六进制转换为二进制方法: “一分为三”(或 “一分为四”),去除头尾多余的0。例2.6,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2.2.1 二进制的基本运算一、算术运算二进制加、减运算规则:逢二进一,借一当二例2.7,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,二、逻辑运算逻辑或:00=0 01=1 10=1 11=1逻辑与:00=0 01=0 10=0 11=1非运算:0的非是1,1的非是0。异或运算:例2.8,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2.2.2 机器数与真值机器数:数值在计算机中的二进制表示形式,包括数的正、负符号和小数点。真值:机器数所代表的一般数学意义上用正负号和数字符号表示的实际数值。数符:机器数的最高位通常定义为符号位,表示数的正负号,一般0表示正号“+”,1表示负号“”。其余位则表示数值的大小。如:(0110101)2表示为:,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2.2.3 整数和实数的表示方法定点数和浮点数:在计算机内部,并不显式地表示出小数点,而是通过对小数点的位置加以规定来表示。根据数中小数点的位置是否固定,可把机器数分为定点数和浮点数两种表示方法。通常,使用定点数表示整数,而用浮点数表示实数。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,一、整数整数没有小数部分,因此可以认为小数点固定在数的最右边。整数分为:无符号整数:所有二进制位表示数值的大小有符号整数:最高位表示数的正负号,其他位表示数值的大小。如,65的一种机内表示是:整数表示的数值是精确的,但数值范围受机器字长的限制。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,二、实数基本表示方法:用阶码和尾数来表示。如: 0.3429106 尾数 阶码为什么称为浮点数表示法?由于阶码可以取不同数值,使得小数点的位置不固定,从而可以有多种形式表示同一个实数。例如,1010.1011可以表示为:10.101011210 101010.11210 0.101010112+100,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,浮点数机内表示形式尾数:表示数值的有效数字,当尾数不为0时,其绝对值大于等于0.5(注:因为是二进制数,要求尾数的第1位必须是1 )且小于1。阶码:用来指示尾数中的小数点应当向左或向右移动的位数。例如,设机器字长为16位,尾数为8位,阶码为6位,则二进制实数1101.010 = 0.1101012100,其机内表示形式如下:,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2.2.4 原码、反码和补码机器数的编码方法有多种,最常用的是原码、反码和补码。一、原码编码规则:符号位0表示正,1表示负,数值部分用该数绝对值的二进制数表示。例如:原码易于乘除运算,但不易于加减运算,且零有两种表示形式,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,二、反码编码规则:符号位0表示正,1表示负,正数的反码等于原码,负数的反码等于原码除符号位外按位取反,即0变1、1变0。例如:反码不方便运算,且零也有两种表示形式,一般在求补码的过程中用到反码。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,三、补码编码规则:符号位0表示正,1表示负,正数的补码等于原码,负数的补码等于其反码末位加1。例如:例2.9,求X=+1011,Y=1101的原码、反码和补码:补码易于加减运算,且零有唯一的表示形式,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,四、BCD码BCD码:用一组4位二进制码来表示1位十进制数的编码方法,也称作二十进制码。通常是指8421 BCD码。例2.10,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2.2.5 数值运算一、补码运算采用补码进行加减运算十分方便。通过对负数的编码处理,允许符号位和数值一起参与运算,可以把减法运算转化为加法运算。不论求和、求差,也不论操作数为正、为负,运算时一律只做加法,从而大大简化运算器的设计。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,例2.11 通过补码计算9+5、95、9+5和95,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,二、移位运算移位的意义移位运算运算相当于乘 2n 运算可以采用移位和加法相结合,实现乘/除运算移位运算分为:算术移位:对有符号数的移位逻辑移位:对无符号数的移位,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,算术移位规则不论是正数还是负数,移位后其符号位均不变,只对数值位进行移位(见下表)。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,示例:正数+26在不同码制下的移位,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,示例:负数-26在不同码制下的移位,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,逻辑移位规则逻辑左移时,高位移出,低位添0;逻辑右移时,低位移出,高位添0。例如,对于01010011,逻辑左移1位为10100110;对于10110010,逻辑右移1位为01011001。,2022/12/5,中山大学计算机科学系,2.2 数值型数据的表示及运算,三、精度和溢出精度:可以给出的有效数字的位数。机器字长越长,可以表示的数的范围越大,精度越高。溢出:一个数的大小超出了计算机所能表示的数的范围。上溢:两个正数相加,结果大于机器所能表示的最大正数。下溢:两个负数相加,结果小于机器所能表示的最小负数。程序状态字寄存器(PSW):标记溢出(即将其溢出标志位自动置为1,否则为0)。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.1 字符编码的基本知识字符是各种文字和符号的总称,包括各国文字、标点符号、图形符号、数字以及一般不可见的控制符等字符编码是指将字符表示为一个二进制数。字符集是字符的集合,也称为编码字符集,强调字符集为每个字符分配一个唯一整数。代码点是指可用于编码字符集的整数。由编码字符集定义的代码点整数取值范围称为编码空间。每个代码点表示一个字符或被声明为未使用。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,字符编码方案:是从编码空间的每个代码点到1个或多个固定宽度编码单元序列的映射。编码单元:表示代码点整数的基本二进制位序列,一般为8位、16位或32位。最终将转换为字节序列。字节序(Endian ):是指多字节整数在内存中的存放顺序,分为:大序(Big-Endian):高位在前,低位在后。例如,将整数6C49H编排为字节序列 6C 49小序(Little-Endian):低位在前,高位在后。例如,将整数6C49H编排为字节序列 49 6C字符的编码过程: 分配代码点用1个或多个编码单元表示字节序列,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.2 十六进制编辑器简介Hex编辑器能够以字节和二进制位为单位来修改文件。由于任何文件可看成字节流,因此Hex编辑器可查看、编辑任何文件的二进制表示WinHex简介,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.3 ASCII码及其ANSI扩展ASCII码是美国信息交换标准码(American Standard Code for Information Interchange)的简称,用于编码国际上最通用的西文字符。ASCII码一般使用8位(1个字节)编码单元表示字符,最高位恒为0,只用低7位对字符进行编码,能表示27=128种字符。ASCII字符集包括26个大写字母AZ、26个小写字母az、10个数字09、32个标点符号和运算符、1个空格(码值32)以及33个控制字符。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,每个ASCII码由一个高3位组 b6b5b4 和一个低4位组b3b2b1b0 构成。例如,回车符(CR)的ASCII码是 000 1101,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,例2.12 验证编辑文本文档时通过按回车键产生的换行符通常称为回车换行符(CR/LF)。启动“记事本”,输入“abc”、回车键、 “ABC”,存盘启动 WinHex 编辑器,打开第1步保存的 文件。中间2个字节0D、0A分别是回车符(CR)和换行符(LF)的十六进制数表示,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,ASCII扩展字符集由于ASCII码只使用单字节编码单元中的低7位,因此ASCII码可被扩展。ANSI 扩展标准:ASCII扩展字符集仍然使用单字节编码单元,要求ASCII码必须用1个等值的高位为0的编码单元表示,但对于其他高位为1的编码单元则依赖于特定字符集的具体定义ANSI 字符集 :是指按ANSI标准派生的ASCII扩展字符集,如:Latin-1、GB2312、Big-5等。有时也称为多字节字符集(简称MBCS)。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.4 汉字编码 常用编码:GB2312、BIG-5、GBK和GB180302.3.4.1 GB2312一、国标字符集与区位码GB2312字符集包括6763个常用简体汉字和682个图形符号,并为每个字符给出国标码和区位码。所有字符排成一个9494的矩阵,矩阵中每一行称为一个区,每一列称为一个位。矩阵中的每个字符可用区码和位码表示,称为区位码。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,区位码也是一种汉字输入码。例如,在“区位输入法”(或称“内码输入法”)状态下输入0102、0103、0104可输入全角符号“、。”输入1601、1602、1603可输入一级汉字“啊阿埃”输入5601、5602、5603可输入二级汉字“亍丌兀”,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,二、国标码、区位码和机内码之间的换算关系国标码采用两个字节表示: 国标码高字节 = (区码)16 20H 国标码低字节 = (位码)16 20H汉字机内码(符合ANSI字符集标准):机内码高字节 = 国标码高字节 80H = (区码)16 A0H机内码低字节 = 国标码低字节 80H = (位码)16 A0H,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,例2.13 查看汉字“国啊”的机内码。启动“记事本”,输入“abc国啊”,存盘(注意: “编码”下拉列表中的“ANSI”表示按ANSI字符编码格式保存)。启动 WinHex 编辑器,打开刚保存的文件。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.4.2 其他常用汉字编码一、BIG-5 (大五码)通行于我国台湾、香港等地区的繁体字编码方案。采用双字节编码方案,第1字节的最高位总是1,第2字节的最高位可能是1或0。二、GBKGBK是对GB2312的扩充,仍然采用双字节编码方案,收录21886个汉字和图形符号。GB18030是对GBK的扩充,在双字节编码的基础上对罕见汉字使用4字节编码。收录27484个汉字,同时还收录日文、朝鲜语和藏、蒙等文字。 ASCII GB2312 GBK GB18030 向下兼容,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.5 Unicode编码Unicode(通用码)是当前国际上最为通用的字符编码规范,它为全世界所有语言(超过650种)的每个字符分配一个唯一数字,以满足跨语言、跨平台进行文本转换、处理的要求。Unicode标准已经被计算机业界主流所采用,许多操作系统、所有最新的浏览器和许多其他软件产品都支持它。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.5.1 Unicode字符集Unicode字符集采用四维编码空间每个字位对应一个Unicode代码点。Unicode代码点书写格式:如 U+41 表示 “A”,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,UCS-4码和UCS-2码UCS-4码定义Unicode字符集的所有代码点,对每个代码点使用4个8位(即32位,且最高位总是0)依次表示这个代码点所在的组、平面、行和字位:共有231=2,147,483,648个代码点。例如,字符“ ”编排在00组01面04行00位,故其UCS-4码是U+00010400。基本多文种平面(BMP):是指Unicode字符集的第1个平面,即0组0面。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,UCS-2码只对BMP中的代码点进行双8位编码,共有216=65,536个代码点。例如 “A” U+0041 “” U+20AC “汉” U+6C49。UCS-2码基本上可以容纳所有的欧美字符和绝大部分的亚洲字符,因此,UCS-2字符集被普通支持。小提示:在Word中,将输入点移至某个字符的右侧,按下Alt+X,该字符就转换为Unicode代码点,再按则转换回原字符,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.5.2 UTF编码UTF是对Unicode字符集编码的实现方案,为每个Unicode字符给出机内表示格式, Unicode 字符的机内码UTF规范定义了三种编码格式,即UTF-8、UTF-16和UTF-32,它们都能够正确地编码任何Unicode代码点。其中,UTF-8和UTF-16被广泛使用,而UTF-32很少使用。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,一、UTF-32UTF-32码是定长码,使用1个32位(即4字节)编码单元表示每个等值的Unicode代码点。例如,字符“A”的代码点U+41用4个字节表示等值的无符号整数41H。UTF-32的优点在于编码简单,缺点是每个字符都需4字节表示,太浪费存储空间。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,二、UTF-16UTF-16码是变长码,使用1个或2个16位(即2字节)编码单元对Unicode代码点进行编码。对BMP字符的表示方式等同于UCS-2,使用2个字节。例如用两个字节6CH和49H表示字符“汉”的代码点U+6C49对于非BMP字符则使用4个字节表示。UTF-16的优点在于几乎所有常见字符都使用双字节表示,便于统一处理;缺点是每个ASCII字符也要用2个字节表示。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,UTF-16分类由于UTF-16使用双字节编码单元,因此UTF-16码有两种形式:大序UTF-16(UTF-16 big-endian):如“国”的代码点U+56FD表示为2字节序列56 FD小序UTF-16(UTF-16 little-endian):如“国”表示为2字节序列FD 56。标记字节序:使用BOM字符U+FEFF,即如果文档起始2个字节是FE FF,则表示文档是大序UTF-16;若这2个字节为FF FE,则文档为小序UTF-16。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,例2.14 查看英文字符“a”和汉字“国”的小序UTF-16编码启动“记事本”,输入文字“a国”,然后以“Unicode”编码格式保存。启动 WinHex 编辑器查看。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,三、UTF-8UTF-8码也是变长码,使用1个或多个8位(即1字节)编码单元对Unicode代码点进行编码。对BMP字符使用13个字节序列编码,如表2-11所示对于非BMP字符则使用4个或更多字节表示,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,UTF-8编码示例字符“汉”的代码点是U+6C49,根据表2-11所示格式,先将6C49写成二进制数01101100 01001001,然后用这个比特流依次替换模板 1110 xxxx 10 xxxxxx 10 xxxxxx 中的x,得到11100110 10110001 10001001,即UTF-8把字符“汉”编码为3字节序列 E6 B1 89。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,UTF-8的优点在于与ASCII兼容、容错能力强、与字节序无关,便于在不同平台之间交流;其缺点是所有汉、日、韩等字符必须用3个字节表示。UTF-8文档常起始于3字节序列EF BB BF(即字符U+FEFF的UTF-8编码),2022/12/5,中山大学计算机科学系,2.3 字符编码技术,例2.15 查看字符“A”和“汉”的UTF-8编码启动“记事本”,输入文字“A汉”,然后以“UTF-8”编码格式保存启动 WinHex 编辑器查看,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.5.3 统汉字Unicode 把经过中日韩整合(CJK Unification)的汉字称为统汉字(Unihan),共有2万多个。2.3.5.4 Unicode与代码页“代码页”(Code Page)是某种字符集的编号,如GB2312的代码页是20936、BIG5是950。由代码页可确定相应的字符编码转换表。Windows系统内核已统一使用 Unicode,但由于大量应用软件及文档还未使用 Unicode,因此 Windows 仍然保留代码页字符转换机制,即通过指定的字符编码转换表将非 Unicode 的字符编码(如GBK、Big-5码)转换为 Unicode 编码,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.6 字形码字形是指字符的外观,相当于一个小图形字形码(也称字模)是描述字符字形的编码。字库:存放字模的数据文件汉字库:主要用于存放汉字字模的字库字符输出:计算机在输出(显示或打印)字符时,要根据字符的机内码找出该字符的字模在字库中的位置,从而取出字模,用于输出。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,点阵点阵是对字符外观的直接描述,其他描述(如矢量、轮廓方法)的最终结果仍是点阵。点阵描述方法:将字符放入一个横竖都经过等分的方块中,如图2.9所示,形成一个位图。每个点用1位二进制数表示,有笔划的为1,无笔划的为0。每8个点依次组成1个字节。例如,在1616点阵中,每个字模需要1616/8=32个字节表示。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,矢量字模用一种称为形(shape)的图形实体来定义字符,使用直线和圆弧作为字符的基本笔画。其优点是字模存储量少,缺点是字形不优美。轮廓字模轮廓技术采用直线或二次曲线的集合来描述一个字符的轮廓线,对轮廓线构成的一个或若干个封闭平面区域,采用适当的区域填充算法,生成字符的位图点阵。兼有字模存储量少、字形又美观的双重优点。轮廓字符可以任意放大、缩小及变化形体。TrueType 字形技术采用这种轮廓技术, Windows 的绝大多数字库都属于 TrueType 字库,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.7 汉字输入码汉字输入码是指从键盘上输入的代表汉字的编码,又称汉字外码。汉字输入码分为以下4类:流水码:将汉字按一定的顺序排列,依次编排一个号码,如区位码。流水码输入法简单、唯一,但较难记忆和掌握。音码:根据汉字的读音进行编码,如全拼、双拼、智能ABC等。音码输入法易于掌握,懂得汉语拼音即可,但重码率高,不便盲打。,2022/12/5,中山大学计算机科学系,2.3 字符编码技术,2.3.7 汉字输入码(2)形码:根据汉字的字形进行编码。如五笔字型、郑码。形码输入法较难掌握,但重码率低,便于盲打。音形码:根据汉字的字音和字形进行编码,如首尾码。此外,多数汉字输入法都提供了重码字辅助选择、词组输入、联想输入等功能。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,2.4.1 基本概念数据压缩是指对数据重新进行编码,以减少所需存储空间解压缩是指将压缩的数据恢复成原状压缩比:压缩前和压缩后的数据量之比,如压缩比为201表示压缩后的数据量是原始数据的1/20数据压缩技术用于压缩文本、图像、音频和视频等数据。有些压缩技术需要特殊的硬件,而有些压缩技术则完全由软件实现。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,数据为什么能被压缩呢?数据中常存在一些冗余,如重复符号数据中间尤其是相邻的数据之间,常存在着相关性,如图像中常常有色彩均匀的背影、视频的相邻两帧之间可能只有少量的变化影物是不同的、音频信号有时具有一定的规律性和周期性等等耳、目对信号的时间变化和幅度变化的感受能力都有一定的局限性,因此可以将信号中感觉不出的分量隐蔽掉。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,数据压缩技术的指标:压缩比:显然压缩比越大就越好恢复效果:尽量能够解压缩回原始数据速度:实现压缩的算法要简单,压缩、解压速度快,尽可能支持实时压缩、解压。对称性:压缩和解压缩占用相同的处理能力和时间,适用于实时压缩的视频传送(如视频会议);而不对称编码意味着压缩和解压缩占用不同的处理能力和时间,适用于电子出版和其他多媒体应用。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,2.4.2 数据压缩方法简介一、数据压缩方法的分类根据对压缩数据进行解压缩后的数据是否与压缩前的原始数据完全一致作为标准,压缩方法分为:无损压缩方法:可以将压缩数据完全恢复回原始数据。无损压缩一般用于数据和应用软件的压缩,压缩比较低,一般在2:15:1之间。有损压缩方法:会减少信息量,并且损失的信息不能恢复。有损压缩法常用于对图像、音频、视频等数据的压缩,压缩比较大,可达100:1400:1。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,二、游程编码编码规则:重复的数据值序列用一个重复次数和单个数据值来代替。常用的一种RLE编码格式由一个控制符、一个重复次数字节和一个被重复的字节构成3字节序列码。例如, WTBBBBXYFFFFF 压缩为 WT#4BXY#5F # 为控制字符显然,重复字符数大于3时,RLE才有压缩效果。RLE算法常用于压缩位图图像。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,三、词典编码词典编码法利用原始数据包含重复的代码序列这个特性,如文本文件和位图图像词典编码法分为两类,即指针型和索引型。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,指针型词典编码的原理是:查找正在压缩的字符序列是否在前面的输入数据中出现过,如果是,则用指向早先出现过的字符串的“指针”替代重复的字符串。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,索引型词典编码的方法是:从输入的数据中动态创建一个“短语词典”,在编码过程中当遇到已经在词典中出现的“短语”时,编码器就使用该短语的“索引”,而不是短语本身。显然,文档中含有的重复短语越多,压缩效果也就越好。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,2.4.3 通用文件压缩工具简介通用文件压缩工具:采用无损压缩算法对文件进行压缩与解压缩的软件,常用于数据备份和网络文件传输,具有操作简单、功能丰富等特点。压缩软件通常把一个或多个文件压缩成一个单独的较小文件,称为压缩文件。常见的压缩文件类型是RAR、ZIP和ACE,此外还有ARJ、CAB、GZ、ISO等。常用压缩软件:WinRar、WinZip、WinAce等。,2022/12/5,中山大学计算机科学系,2.4 数据压缩,WinRar3.50简介两种操作模式:快捷菜单和窗口操作模式简易压缩与解压缩方法使用“向导”工具分卷压缩:将大型压缩文件分解成几个小的压缩文件为压缩文件设置密码生成自解压文件:生成一个*.EXE文件,可以脱离WinRAR环境自行解压缩。,