计算机科学导论第三章-数据存储课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《计算机科学导论第三章-数据存储课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机科学 导论 第三 数据 存储 课件
- 资源描述:
-
1、3 数据存储数据存储 (Data Storage)1 教学目标 通过本章的学习,同学们应该能够:?列出计算机中使用的五种数据类型.?描述不同的数据如何以位模式存储在计算机中.?描述整数如何以无符号格式存储在计算机中.?描述整数如何以符号加绝对值格式存储.?描述整数如何以二进制补码格式存储.?描述实数如何以浮点格式存储在计算机中.?描述文本如何通过各种不同的编码系统存储在计算机中.?描述音频如何通过采样、量化和编码存储在计算机中.?描述图像如何通过光栅和矢量图模式存储在计算机中.?描述视频如何以图像随时间变化的表示来存储在计算机中.2 3-1 引言 INTRODUCTION 如今,数据以不同的形
2、式出现,如:数字、文本、音频、图像和视频(Figure 3.1).i Figure 3.1 不同类型的数据 计算机中使用术语“多媒体”来定义包含数字、文本、图像、音频和视频的信息.3 计算机内部的数据 Data inside the computer 所有计算机外部的数据都采用统一的数据表示法转换后存入计算机中,当数据从计算机输出时再还原回来。这种通用的格式称为位模式.位(为了表示数据的不同类型,采用位模式,一个序列bit)是存储在计算机中的最小单位,0 或1.长度为8 的位模式称为1 个字节(byte).Figure 3.2 位模式 书P29 图3.2 错误,16 个位 4 不同数据类型的存
3、储 5 Figure 3.3 数据压缩 Data compression 更小的空间存储更多的数据 更短的时间下载更多的数据 存储或发送更少的位数(数据)数据压缩 i 数据压缩将在第15 章讨论.6 3-2 存储数字 STORING NUMBERS 在存储到计算机内存中之前,数字被转换为二进制系统,如第二章所述.但是,这里还有两个问题需要解决:1.如何存储数字的符号.2.如何显示十进制小数点.7 存储整数 Storing integers?整数是完整的数字(即没有小数部分).如134 和?125 是整数,而134.23 和?0.235 则不是.?整数可被当作小数点位置固定:小数点固定在最右边.
4、因此,定点表示法用于存储整数,如图 3.4 所示.?在这种假设中,小数点是假设的,但是并不存储.i Figure 3.4 整数的定点表示法 整数通常使用定点表示法存储在内存中.8 无符号表示法 Unsigned representation 无符号整数就是没有符号的整数,范围介于0到无穷大.在n位存储单元中,可以存储的无符号整数为 02n1 存储无符号整数的步骤:1.首先,将整数变成二进制数.2.如果二进制位数不足 n位,则在二进制整数的左边补0,使它的总位数为n位.如果位数大于n位,则无法存储,导致溢出。9 Example 3.1 将7 存储在8 位存储单元中.解:首先将整数转换为二进制数
5、(111)2.左边加5 个0 使总位数为8位,即(00000111)2.再将该整数保存在存储单元中.注意:右下角的 2用于强调该整数是二进制的,并不存储在计算机中.10 Example 3.2 将258 存储在16 位存储单元中.解:首先将整数转换为二进制 (100000010)2.左边加7 个0 使总位数满足16 位,即(0000000100000010)2.再将该整数存储在存储单元中.11 Example 3.3 当译解作为无符号整数保存在内存中的位串00101011时,从输出设备返回什么?解:使用第2 章的解题过程,二进制整数转换为十进制无符号整数43.32+8+2+1=43 12 假如
6、存储大于存中,会发生溢出的情况 24?1=15.的整数到仅为4 位的内 Figure 3.5 无符号整数的溢出 13 无符号表示法的优势 因为不必存储整数的符号,无符号整数可以提高存储效率,所有分配的位单元都可以用来存储数字。只要用不到负整数,都可以用无符号整数表示法。14 无符号整数的应用?计数:可以从0 或1 开始增加?寻址:地址是从0(存储器的第一个字节)开始到整个存储器的总字节数的正数。?为其他数据类型排序:其他数据类型(文本、图像、音频、视频)等是以位模式存储的,可以翻译为无符号整数。15 符号加绝对值表示法 Sign-and-magnitude representation 在这种
7、方法中,用于无符号整数的有效范围 (0 to 2n?1)被分成2 个相等的子范围.前半部分表示正整数,后半部分表示负整数.Figure 3.6 符号加绝对值的表示法 i 符号加绝对值表示法中,最左位定义整数的符号。0 表示正整数,1 表示负整数.16 符号加绝对值表示法 Sign-and-magnitude representation?在一个8位存储单元中,可以仅用 7位表示数字的绝对值(不带符号)?最大的整数值,仅是无符号最大数的一半。?在n位单元中,可存储的数字范围是:(2n11)(2n11)17 Example 3.4 用符号加绝对值格式表示法将存储单元中.+28 存储在8 位解:先把
8、该整数转换成7 位的二进制数.最左边位置为0,即存储为8 位数.18 Example 3.5 用符号加绝对值格式表示法将-28存储在8 位存储单元中.解:先把该整数转换成7 位的二进制数。最左边位置为1,即存储为8 位数.19 Example 3.6 将 用 符 号 加 绝 对 值 格 式 表 示 法 存 储 的01001101 复原成整数.解:因为最左位是0,符号为正。其余位(1001101)转换成十进制数 64+8+4+1=77 加上符号后,该整数是+77.20 Example 3.7 将 用 符 号 加 绝 对 值 格 式 表 示 法 存 储 的10100001复原成整数 解:因为最左位
9、是1,符号为负。其余位(0100001)转换成十进制数 32+1=33 加上符号后,该整数是?33.错误:p32(书17)21 符号加绝对值表示法的应用?符号加绝对值表示法不用于存储整数,而用于存储部分实数?符号加绝对值表示法通常用于采样模拟信号,如音频。22 二进制补码表示法 几乎所有的计算机都使用二进制补码表示法来存储位于n位存储单元中的有符号整数。在补码表示法中,无符号整数的有效范围 (02n?1)被分为2个相等的子范围。第一个子范围用来表示非负整数(0 和正),第二个子范围用于表示负整数.若n4,范围是00001111,分为两半,00000111和10001111,按左负右正的常规交换
10、。(错:书P33)23 赋值给负和非负整数的位模式如图 3.8 所示.Figure 3.8 二进制补码表示法 i 在二进制补码表示法中,最左位决定符号。如果最左位是0,该整数为正 如果最左位是1,该整数为负 24 反码 在介绍补码表示法之前,需要介绍两种运算 第一种称为反码或取一个整数的反码.?该运算可以应用到任何整数,无论是正的还是负的.?该运算简单反转各个位.即把0 位变为1 位,把1 位变为0 位 25 Example 3.8 如何取整数00110110的反码?26 Example 3.9 进行两次反码运算,就可以得到原先的整数.27 补码 第二种运算:称为二进制中的补码或取一个整数的补
11、码。该运算分为两步:?首先,从右边复制位,直到有1 被复制,?接着,反转其余的位.28 Example 3.10 如何取整数00110100的补码?29 Example 3.11 如果进行2 次补码运算,就可以得到原先的整数.i 另一种将一个整数进行补码运算的方法是,先对它进行1 次反码运算,再加上 1 得到结果。第4 章 30 Example 3.12 用二进制补码表示法将28 存储在8 位存储单元中.解:该整数是正数,因此,把该整数从十进制转换为二进制后不再需要其他操作.注意,3 个多余的0 加到该整数的左边使其成为8 位.(错:书P34)31 Example 3.13 用二进制补码表示法
12、将整数?28 存储在8 位存储单元中.解:该整数是负数,因此,在转换成二进制后,计算机对其进行二进制补码运算.32 Example 3.14 用二进制补码表示法将存储在 8位存储单元中的00001101还原成整数.解:最左位是0,因此,符号为正.该整数需要转换为十进制并加上符号即可.33 Example 3.15 用二进制补码表示法将存储在8位存储单元中的11100110还原成整数.解:最左位是1,因此符号为负.在整数转换成十进制前进行补码运算.34 i 二进制补码表示法仅有 1 个0.Figure 3.9 二进制补码表示法的溢出 35 36 比较 存储实数 Storing reals 实数是
13、带有整数部分和小数部分的数字.例:23.7 是一个实数,整数部分是 23,小数部分是 0.7.尽管固定小数点的表示法可以用于表示实数,但结果不一定精确或达不到需要的精度.i 带有很大的整数部分或者很小的小数部分的实数不应该用定点表示法存储.37 Example 3.16 在十进制系统中,假定用一种定点表示法,右边2 个数码,左边14 个数码,总计16 个数码.如何表示十进制数1.00234?该系统的实数精度就会受损,该系统把这个数字存储为 1.00.38 Example 3.17 在十进制系统中,假定用一种右边6 个数码,左边10 个数码,总共 16 个数码的定点表示法.如何存储十进制数 23
14、6154302345.00?该系统的实数精度就会受损,该系统把这个数字存储为 6154302345.00 整数部分比实际小了很多.39 浮点表示法 Floating-point representation 用于维持正确度或精度的解决方法是使用浮点表示法.浮点表示法允许小数点浮动,小数点的左右可以有不同数量的数码,增加了可存储的实数范围.i Figure 3.9 在浮点表示法中的三个部分 浮点表示法由3 部分组成:符号、位移量、定点数 40 Example 3.18 在科学计数法中,定点部分在小数点左边只有 1 位,位移量是 10 的幂次。用科学计数法(浮点表示法)表示的十进制数 7,425,
15、000,000,000,000,000,000.00 这三部分为:符号(+),位移量(21),定点数(7.425).注意:位移量就是指数.7.425E21 41 Example 3.19 用科学计数法表示数字?0.0000000000000232 解:将小数点移到数码2 之后,如下所示:这三部分为:符号注意:这里指数是负的(-)、位移量.(-14)、定点数(2.32)-2.32E-14 42 Example 3.20 用浮点格式表示数字 (101001000000000000000000000000000.00)2 解:使用前例同样的方法,小数点前只保留一位数字.指数显示为32,实际上以二进制
展开阅读全文