【文档说明】计算机科学导论第三章数据存储课件.ppt,共(55)页,238.318 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-77401.html
以下为本文档部分文字说明:
计算机科学导论第三章数据存储3.1数据类型数据以不同的形式出现在计算机中。数据的不同类型数据文本数字图像音频视频计算机内部数据基本的容量单位(1)位(bit)位是计算机存储数据的最小单位。二进制数据中的一个,每个0或1就是一个位。(
2)字节(Byte)字节是计算机数据存储和处理的最常用的基本单位。字节(Byte),简记为B。规定一个字节为8位,即1B=8bit,每个字节由8个二进制位组成。计算机的存储器通常是以多少字节来表示容量的。(3)字(Word)字是计算机一次处
理的二进制数。一个字通常由一个或若干个字节组成。字长是计算机能一次直接处理的二进制数据的位数。(4)衡量数据容量的单位KB,千字节,简称K,1KB=210B=1024B。MB,兆字节,简称M,1MB=210KB=220B。1GB,吉字节,简称G,1GB=210MB=230B。1T
B,太字节,简称T,1TB=210GB=240B。3.2.1存储整数在计算机中参与运算的数有两大类:无符号数和有符号数。无符号数无符号数是指没有符号的数,即非负整数。机器字长中的全部数位均用来表示整数值的大小,相当于数的绝对值。无符号数的表示范围字长为n位的无符号数的
表示范围是0~(2n-1)如,机器字长为16位,则无符号数的表示范围是0~(216-1),即0~65535有符号数据的表示通常在绝对值前面加“+”、“-”符号来表示有符号数。在计算机中,有符号数中的
正负号及小数中的小数点都以二进制形式表示。数的符号数值化在计算机中,有符号数的符号同样用0和1表示。在计算机中,数的最高位定义为符号位,用“0”表示正数,用“1”表示负数。首先补充几个概念:2.机器数:计算机内部编码表示的数,称为机器数(机器码),即真值在机器中的表示
。1.真值:正负号加某进制数绝对值的形式,如+3,(-101101)2机器数和真值例:真值机器数+52=+0110100——00110100-52=-0110100——10110100符号位数值位机器数的表示形式在计算机中,机器数有三种表示方法:原
码、反码和补码。引入三种编码的目的,主要是为了将减法运算转换为加法运算,提高运算速度。原码机器数的最高位代表符号位,数值部分为真值的绝对值的一种表示方法。原码表示规则符号位:0表示正数、1表示负数。数值位:二进制数的绝对值。1.符号
加绝对值表示法(原码表示法)符号位+绝对值。最高位表示符号:0为正,1为负表示范围:-(2n-1-1)~(2n-1-1)存在溢出问题0000000100100011010001010110011110001001
10101011110011011110111134567-0-1-2-3-4-5-6-7012例3.4,3.5。例3.6,3.7。0的原码有2个原码表示范围-(2n-1-1)~(2n-1-1)如字长为8,则原码表示范围为-27+1~27-1,即–127~+127。0的原
码不唯一[+0]原=00000000[-0]原=10000000原码表示的例子:X=+101011[X]原=0101011或00101011X=-101011[X]原=1101011或10101011为书写方便,数X的原码、反码、补码分别记做[X]原
、[X]反、[X]补。机器数的真值机器数反码反码是对一个数按位求反。反码表示规则符号位:0表示正数,1表示负数。数值位:正数为这个数本身。负数为其绝对值各位求反。反码反码表示范围-(2n-1-1)~(2n-1
-1)如字长为8,则反码表示范围为-27+1~27-1,即–127~+127。0的反码不唯一[+0]反=00000000[-0]反=11111111000000010010001101000101011001111000100110101011110011011110111101
234567-7-6-5-4-3-2-1-0反码表示的例子:X=+1101[X]反=01101X=-1101[X]反=10010机器数的真值机器数规定字长的情况如规定了字长,若不满要求位数时,需在真值绝对值前补0,然后再按位求反,转换为反码。若字长为8,则X=+1101[
X]反=00001101X=-1101[X]反=11110010反码转换为真值符号位为“0”,符号为正,数值位不变。符号位为“1”,符号为负,数值位按位取反。如:[x]反=11100100,则x=-0011011=-11011补码
表示规则符号位:0表示正数,1表示负数。数值位:正数为这个数本身。负数为其绝对值各位求反,然后在最低位加1。以n=4为例:可以求得图3-8。1000100110101011110011011110111100000001001000110100010101
100111-5-4-3-2-101234567-8-7-6最高位表示符号:0为正,1为负表示范围:-2n-1~(2n-1-1)0的补码只有1个补码表示范围-2n-1~(2n-1-1)如字长为8,则补码表示范围为-27~27-1
,即-128~+127。0的补码唯一[0]补=[+0]补=[-0]补=00000000补码表示的例子:X=+1001[X]补=01001或00001001X=-1001[X]补=10111或11110111补码转换为真值符号位为“0”,符号为正,数值位不变。符号位为“1”,符号为负,
数值位按位取反,最低位加1。即再次求补。(或,数值位先减1,然后按位取反。)即:[[X]反]反=[X]原,[[X]补]补=[X]原[x]补=11100100,则x=-0011100=-11100原码、反码和补码真值原码反码补码-0-000000001
00000001111111100000000+0+00000000000000000000000000000000+127+01111111011111110111111101111111-127-01111111111111111000000010000001-12
8-10000000不存在不存在10000000在补码中用-128代替了-0,所以补码的表示范围为-128到0到127共256个(这样使数的范围扩大了一个)机器数的形式原码:反码:补码:正数的原码=符号位0+真值负数的原码=符号位1+|真值|正数的反码=原码负数的反码=符号位
1+|真值|按位取反正数的补码=原码负数的补码=符号位1+|真值|按位取反再加1例:假设X1=+83,X2=-76,字长为8。求X1、X2的原码、反码及补码。解:[X1]原=[X1]反=[X1]补=01
010011[X2]原=11001100[X2]反=10110011[X2]补=[X]反+1=10110100练:假设X1=+38,X2=-38,字长为8。求X1、X2的原码、反码及补码。定点数定点数是指小数点的位置固定不变。用定点表示法来表示实数,可能会存在一定的问题
。很大的整数或是小数部分的实数,不适合用定点法表示。3.2.2存储实数一、浮点表示法该方法允许小数点浮动。一个十进制实数都可以有以下几种不同的表示形式:-34.62=-3462×10-2=-0.3462×102=-3.462×101二进
制实数也可以用上述几种不同的表示形式表示:-10.01=-1001×2-2=-0.1001×22=-1.001×21浮点数符号位移量定点数一个数字的浮点表示法由3部分组成:符号、位移量、定点数。用记阶表示法表示数时,相同的数可以有许多
种不同的表示形式。如:-0.1001×22=-0.01001×23=-0.001001×24用浮点方法表示上述不同形式的数时,所需要的编码长度是不相同的。为了便于计算机中浮点数的运算,提高运算的精度,需要充分地利用尾
数的有效数位,必须有一个统一规范的表示:浮点数的规格化表示。二、规范化1.为什么要规范化?2.什么叫规范化浮点数?为了使一个数的浮点表示是唯一的。浮点表示法在小数点左边使用了唯一的非零数码,即:±1.yyyyyyyyyy3.规范化浮点数的存储形式?规范化的浮点数存储:
符号、指数、尾数。浮点数实数可以表示为:N=M×RE其中:N为浮点数E和M都是带符号数E叫做阶码M叫做尾数R为浮点数阶码的底,与尾数的基数相同。这样的表示方法称为记阶表示法。三、余码系统指数可以作为无符号数存储。偏移量
的值是2m-1-1,m是存储指数的位数。四、IEEE754标准1.IEEE754的浮点数格式在IEEE754标准的浮点数中包含三个部分:符号位S,指数E和尾数M。SEM符号位S是浮点数尾数M的符号位,也是整个浮点数的符号位
。浮点数的指数E用余码尾数用无符号数,规格化尾数为1.M(非0规格化尾数最高位必定为1),个位1为隐含位。2.两种常用的IEEE754浮点数据格式单精度和双精度(1)单精度格式(32位):S为1位,E为8位,M为23位其中:指数E=(27-1)+e=127+e,e为真值偏移量为127,又称为余
127码(2)双精度格式(64位):S为1位,E为11位,M为52位其中:指数E=(210-1)+e=1023+e,e为真值偏移量为1023,又称为余1023码18Excess_12723符号指数尾数111Excess_102352符号指数尾数3.IEEE754标准浮点数的存储实数存储为IEEE标
准浮点数格式的步骤:判别实数符号,在符号位S中存储0或1;将实数转换为二进制数;规范化;例3.233.24确定指数E和尾数M;连接符号S,指数E和尾数M。4.IEEE754标准浮点数的还原IEEE标准浮点数格式还原为实数的步骤:找到符号S
,指数E,尾数M的值;若S=0,符号为正;否则为负;找到位移量e=E-127(1023);对尾数去规范化,得到一个二进制数;将二进制数转换为十进制;在十进制前加上符号。例3.26说明:1、存在溢出现
象。2、0的存储:符号,指数和尾数都设为0。3、截断误差。3.3存储文本文本:要以数字化的形式表示文本,必须表示在文本中可能出现的每个字符;要表示的字符数是有限的,最常用的方法就是给每一个字符分配一个二进制字符;字符集就是字符和
表示它们的代码的清单。在计算机制造商就关于使用哪种字符集达成一致后,文本数据的处理变得容易多了。下面介绍常用的代码。代码:被设计用于表示文本符号的位模式集合。一、ASCII使用最广泛的字符编码是美国信
息交换标准字符码,即ASCII码。ASCII码选用了128个常用字符,可用7位二进制代码的编码表示。AmericanStandardCodeforInformationInterchangeASCII字符编码表b6b
5b4b3b2b1b00000010100111001011101110000NULDLESPace0@P„p0001SOHDC1!1AQaq0010STXDC2“2BRbr0011ETXDC3#3CScs0100EOTDC4$4DTdt0101ENQNAK%5EUeu0110
ACKSYN&6FVfv0111DELETB7GWgw1000BSCAN(8HXhx1001HTEM)9IYiy1010LFSUB*:JZjz1011VTESC+;K[k{1100FFFS,<L\l|1101CRGS-=M]m}1110SORS。>N
↑n~1111SIUS/?O_oDEL0-32及127(共34个)是控制字符和通信专用符。33-126是字符。48-57为0到9十个阿拉伯数字。65-90为26个大写英文字母。97-122为26个小写英文
字母。在ASCII码中如何表示“BYTE”单词二、UnicodeUnicode(统一码、万国码、单一码)是一种在计算机上使用的采用32位的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满
足跨语言、跨平台进行文本转换、处理的要求。3.4存储音频音频:声音或音乐;与数字和文本的存储不同,数字和文字都是可数的;随时间变化,是模拟数据的例子,数值有无限个;所以在存储时需要采样。一、采样在模拟信号上选择有限的数值点(等时间间隔)来度量他们的值,并记录下来。二、量化量化:指的是将样本
的值截取为最接近的整数值的一种过程。如:实际值是17.2,就可截取为17;实际值是17.8,就可截取为18.三、编码编码:指的是将量化的样本值编码成位模式。位深度:每个样本所分配的二进制的位数。位率=位深度×每秒样本数.(即每秒的音频
存储的位数)存储音频采样量化编码音频数据变成位模式的步骤1)对模拟信号进行采样(采样就是以相等的间隔来测量信号的值)2)量化采样值(量化就是给采样值分配值)3)将量化值转换成位模式4)存储位模式音频编码的主流标准MP3MP3是一种
音频压缩技术,其全称是动态影像专家压缩标准音频层面3(MovingPictureExpertsGroupAudioLayerIII),简称为MP3。每秒44100个样本以及每样本16位,再使用人耳无法识别的信息压缩方法进行压缩.
3.5存储图像存储图像图像光栅图(位图)矢量图一、光栅图又叫位图、点阵图、像素图;最小单位由像素构成图,每个像素有自己的颜色;适合存储图形不规则,且颜色丰富没有规律的图,比如照相,扫描;电脑中的BMP,GIF,
JPEG等图片格式均是光栅图。光栅图的缺点:放大光栅图像看上去很粗糙。二、矢量图又叫向量图;不存储每位像素的位模式;将图像分解成几何图形的组合,每个图形由数学公式表达;矢量图由定义如何绘制这些形状的一系列命令构成;适合存储像标志、线路图、设计图等;放大不失真、占空间小,比如很
多flash动画就是矢量绘图。3.6存储视频视频:图像在时间上的表示(称为帧)。所以视频的存储同存储图像,只不过是连续不断的图像而已,可以认为是很多图片。