1.3k likes | 1.4k Views
第四讲 信息的编码、存储与管理. 北京大学信息学院 2014 年 10 月. 3 个问题. 1+1=10 ,对吗?. 代表什么意思?. 明朝,张居正,一条鞭法的含义? —— 万物皆数. 这些概念,你能理解吗?. 数量,结绳记事 数制,二进制 一一映射 编号 / 编码,编码长度,溢出 上下文,歧义 离散,空间分割,时间序列 采样,代表,近似 冗余,压缩. 数制转换及二进制运算 数制及数制转换、二进制数的运算 数字化原理 声音、图像、视频等信息的编码 计算机信息的分层存储 寄存器、高速缓存、主存储器、外部存储设备 信息的输入与输出
E N D
第四讲 信息的编码、存储与管理 北京大学信息学院 2014年10月
3个问题 1+1=10,对吗? 代表什么意思? • 明朝,张居正,一条鞭法的含义? • ——万物皆数
这些概念,你能理解吗? 数量,结绳记事 数制,二进制 一一映射 编号/编码,编码长度,溢出 上下文,歧义 离散,空间分割,时间序列 采样,代表,近似 冗余,压缩
数制转换及二进制运算 • 数制及数制转换、二进制数的运算 • 数字化原理 • 声音、图像、视频等信息的编码 • 计算机信息的分层存储 • 寄存器、高速缓存、主存储器、外部存储设备 • 信息的输入与输出 • 键盘/鼠标输入、显示打印输出等等 • 外部存储设备的结构特点和工作原理 • 硬磁盘、软盘、磁带、光盘、优盘及闪存卡 • 信息的管理 • 文件系统、数据库 课后自己学习 本讲内容 北京大学
什么是数制? 数制也称计数制, 是指用一组固定的符号和规则来表示数值的方法 进位计数制 使用进位的方式进行计数的方法, 称为进位计数制
不同数制之间的转换 基本思想 如果两个有理数相等, 则这两个数的整数部分和小数部分一定分别相等 在不同数制之间进行转换时, 可以分别对整数部分和小数部分进行转换
十进制二进制 整数部分的转换 除2取余 1 1 253 …… 2 2 2 2 2 2 2 2 0 0 126 …… 将10进制数253转换为2进制数 1 63 1 …… 31 1 1 …… 15 1 1 …… 7 1 1 …… 3 1 1 …… 1 1 1 …… 0
十进制二进制 整数部分的转换 除2取余 1 253 …… 2 2 2 2 2 2 2 2 0 126 …… 将10进制数253转换为2进制数 63 1 …… 31 1 …… 15 1 …… 253 ( )10 7 1 …… 3 1 …… 1 1 1 1 1 1 0 1 1 ( )2 1 …… 0
十进制二进制 小数部分的转换 乘2取整 1 0.745×2 = 1.490 0 0.490×2 = 0.980 将10进制数0.745转换为2进制数 1 0.980×2 = 1.960 1 0.960×2 = 1.920 1 0.920×2 = 1.840 1 0.840×2 = 1.680 ……
十进制二进制 小数部分的转换 乘2取整 0.745×2 = 1.490 0.490×2 = 0.980 将10进制数0.745转换为2进制数 0.980×2 = 1.960 在转换过程中,在小数部分部不为零的情况下, 重复的次数越多,结果就越精确 0.960×2 = 1.920 0.745 ( )10 0.920×2 = 1.840 0.840×2 = 1.680 0 0. 1 1 1 1 1 ( )2 ……
十进制八进制 整数部分的转换 小数部分的转换 整数部分的转换 小数部分的转换 整数部分的转换 小数部分的转换 除16取余 乘16取整 除X取余 乘X取整 除8取余 乘8取整 十进制十六进制 十进制X进制
非十进制数十进制数 基本方法 把非十进制数各个数位上的数按权值展开求和 7 6 5 4 3 2 1 0 -1 -2 -3 -4 (11 1 11101.1 011)2 + + + + + + + + + + + 1×2-1 0×2-2 0×2-3 1×2-4 1×23 0×21 1×27 1×26 1×25 1×24 1×22 1×20 (253.6875)10
不同数制之间的转换 X进制Y进制 10进制
不同数制之间的转换 X进制Y进制 两种特殊情况 2进制8进制 (11 111101.101 1)2 (011 111101.101 100)2 (3 75.5 4)8
不同数制之间的转换 X进制Y进制 两种特殊情况 2进制16进制 (FD.B)16 (11111101.1011)2
二进制数的运算 1.算术运算 2.逻辑运算
二进制数的算术运算 二进制加法运算规则 二进制减法运算规则 • 0+0=0 • 0+1=1+0=1 • 1+1=10(进位) • 0-0=1-1=0 • 1-0=1 • 0-1=1(借位) ( 1 1 0 1 )2 ( 1 1 0 1 )2 + ( 1 0 1 1 )2 − ( 1 0 1 1 )2 1 1 1 -1 ( 11 0 0 0 )2 ( 0 0 1 0 )2
二进制数的算术运算 乘法示例 除法示例 0 1 1 0 ( 1 1 0 1 )2 1 1 0 1 0 0 1 1 0 × ( 1 0 1 1 )2 1 1 0 1 1 0 1 0 1 1 1 1 1 0 1 1 1 0 0 0 0 0 1 1 0 1 1 0 余数 ( 1 0 0 0 1 1 1 1 )2
二进制数的逻辑运算 • 逻辑非:~ • ~1 = 0; ~0 = 1 • 逻辑或:| • 0 | 0 = 0; 0 | 1 = 1; 1 | 0 = 1; 1 | 1 = 1 • 逻辑与:& • 0 & 0 = 0; 0 & 1 = 0; 1 & 0 = 0; 1 & 1 = 1 • 逻辑异或:^ • 0 ^ 0 = 0; 0 ^ 1 = 1; 1 ^ 0 = 1; 1 ^ 1 = 0 按位运算,没有进位 1 1 0 0 1 | 0 1 1 0 1 1 1 1 0 1 1 1 0 0 1 & 0 1 1 0 1 0 1 0 0 1 1 1 0 0 1 ^ 0 1 1 0 1 1 0 1 0 0 ~ 1 1 0 1 0 0 0 1 0 1
数字化原理 一、数字化原理 二、汉字的输入/输出过程
Peking University 北京大学 Peking University 北京大学 Peking University 北京大学 Peking University 北京大学 多彩多姿的图片 文字处理 音乐欣赏 蝴蝶泉边 一、数字化原理 影片欣赏 海鸥
一、数字化原理 • “冯.偌依曼体系结构” 的基本思想: • 采用二进制形式表示数据和指令。 • 程序与数据预先存入主存,工作时连续自动高速顺序执行。即“存储程序”思想。 • 由运算器、存储器、控制器、I/O设备五大部分组成。 • 虽然现实生活中的数据其表现形式多种多样,但在计算机内部,它们的形式得到了概括和统一:任何数据,包括计算机指令,一律采用二进制表示。
一、数字化原理 • 计算机内的数据:指令、数值、字符、颜色、图像、声音、影像等 • 二进制数表示:任何信息在计算机中都以二值的数字形式被存储、被处理,还通过各种通讯媒体被传输和接收。 • 数字化编码:在特定的上下文环境中,对表示某类信息的二值数据赋予意义,形成基本的共识性数据。 • 结构化数据:复杂数据,是各种基本共识性数据的组合,如Word文件、PowerPoint文件等,其中可以包括字符、数字、图像、声音等。
一、数字化原理 二进制信息存储容量的量化单位 更大的量化单位:PB(PetaByte)、EB(Exa Byte)、ZB(Zetta Byte)、YB(Yotta Byte)、NB(Nona Byte)、DB(Dogga Byte)
001011… 00101101… 一、数字化原理 • 计算机内数据的输入与输出
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
一、数字化原理 ——指令编码 • 将计算机内部所能进行的各种基本操作用二进制数表示出来,以便于计算机的识别于运行。如: • 加法 00000001 • 减法 00000010 • 乘法 00000011 • 除法 00000100 • 跳转 00000101 • …… • 则: • 1 + 3 可以表示为 00000001 00000001 00000011 • 2 * 4 可以表示为 00000010 00000011 00000100 每条指令,都用固定长度的二进制数表示
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
一、数字化原理 ——数值的表示 • 在计算机内部,由于要表示符号等因素,因此并不是直接以原始的二进制数本身来存储的,而是要经过一定的编码,包括:原码、反码和补码。有关这三种码的含义及其所表示的数据的方式(整数和浮点数),有兴趣的同学可以在课后阅读有关文献。 • 此外,计算机内用来表示数据的二进制位数也不是无限的,往往用固定位数来表示数据,因此,其表达的数据范围是有限的(超出范围,则称为“溢出”,在“程序设计”中会涉及): • 8位:0~255(28 - 1) ——字节 • 16位:0~65535(216 - 1) • 32位:0~40亿(232 - 1) • 64位:天文数字(264)
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
一、数字化原理 ——英文字符编码:ASCII码 • ASCII码 • 美国信息交换标准码(American Standard Code for Information Interchange) • 国际上使用最广泛的字符编码 • ASCII码的编码规则 • 每个字符用7位二进制数(d6d5d4d3d2d1d0)来表示;可表示128个字符(7位二进制共有128种状态,27 = 128) • ASCII码在计算机中的存储 • 在计算机中,每个字符的ASCII码用一个字节存 • 字节的最高位d7为校验位,通常用0填充;字节的后7位为实际编码值
一、数字化原理 ——英文字符编码:ASCII码 A:(01000001)2/(65)10 ASCII码
三、数字化原理 ——汉字编码 • 常用汉字数量:3000~5000个 • 无法用一个字节来编码 • 国标码《通用汉字字符集(基本集)及其交换码标准》 • 共收集了7445个字符 • 用两个字节来编码一个汉字;每个字节的最高位为0 • 国标码在计算机中的存储:汉字内码 • 把国标码两个字节的最高位变为1(避免和ASCII码发生冲突) 00110000 00100001 国标码: 汉字啊 10110000 10100001 内码:
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
三、数字化原理 ——声音的编码 从字符的编码可以看出,在计算机内表示现实生活中的现象的方法就是:每个现象都用一个特定位数的二进制数来表示。但是,现实生活中的很多现象是连续的、无穷无尽的,而在计算机内部,表达数据的二进制位数是有限的,因此,不可能像字符那样对连续的现象进行穷举,需要有关现象的连续特性进行离散化采样,以减少相关现象的数量,从而能够用有限位数的二进制数来一一描述它们。 所谓离散化采样就是把连续现象划分为离散的区段,把每一个区段内这些相近的现象看作一种现象,并用一个特定的二进制数来表示它。
波形高度 时间 三、数字化原理 ——声音的编码 声音就是一种连续的现象,它是随时间变化的声波波形。 该如何对音波形进行离散化采样呢?
1 2 波形高度 3 4 5 … 30 时间 三、数字化原理 ——声音的编码:声音离散采样与编码 声波的离散化采样是在时间和波形高度这两个维度上独立进行的。在时间维上进行时间的离散化(按一定的均匀时间间隔采样);同时,每一个采样点的波形高度值(声波的振幅)也是经过离散化,记录为若干个二进制位的整数编码。两者合在一起形成了声音波形的编码。这种记录声音的方式称为声音的波形编码。 波形高度值 采样点序号(时间) 波形编码
三、数字化原理 ——声音的编码:声音编码与发声 当然,仅仅记录声音的波形是不够的,要想听到声音,还需要有相应的发声设备,这就是音箱、扬声器等设备。计算机根据声音的波形编码数据,指挥发声设备产生相应的声音。 001011… 001011…
三、数字化原理 ——声音的编码:声音的质量与存储空间 采样点的时间间隔越小,就与原始波形函数越符合。声音编码中的“采样频率”,指得就是单位时间对声音波形的采样次数。采样频率用Hz(赫兹)为单位,每秒钟采样500次即为500Hz。显然,采样频率高的声音记录质量会更好一些,为此所用的存储空间也大一些。 一般音乐CD的采样频率为44KHz。为了获得较好的声音效果,往往采用双声道,每声道用2字节(16 bit)来记录波形高度值。 一首4分钟长的歌曲,如果不做压缩,所需的存储空间是多少?
三、数字化原理 ——声音的编码:声音的压缩存储 显然,如果采样波形编码来记录声音的话,存储声音所需的空间要求就太大了。如果要存储1个小时的音乐,就需要>600M的存储空间。这样的话,现有的存储技术就很难满足人们日常生活的需要了。 现在流行的MP3音乐,实际上是对声音的波形编码的一种压缩处理技术,它使得一首4分钟的歌曲(原本需要40M左右的存储空间)只需约4M左右的存储空间了。这样,一个存储容量为512M的MP3播放器,就能够存放100多首歌曲了!
三、数字化原理 ——声音的编码:另一种声音的编码方式 MIDI (Musical Instrument Digital Interface, 音乐设备数字接口) 这是一种电子乐器与电脑之间的编码协议。MIDI编码并不像波形编码那样记录乐曲每一时刻的声音采样,而是将乐曲的演奏信息,譬如:使用了何种乐器,什么音符开始,什么音调结束,加以什么伴奏等,记录下来。 在播放时,需要通过MIDI声卡根据MIDI编码序列进行声音的合成处理,形成波形编码。这是一项高级的音响技术,需要软硬件的密切配合。 一首4分钟的MIDI音乐,其存储容量只要几K~百余K字节。
三、数字化原理 ——声音的编码:音乐资源的获取 • 声音处理软件 • 华军软件园:http://www.onlinedown.net/index.htm • 软件分类 媒体工具 • 音乐搜索 • 百度搜索:http://mp3.baidu.com
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
一、数字化原理 ——颜色的编码 现实生活中的颜色也是一种连续现象,因此也不可能对颜色进行穷举,需要对颜色的连续光谱和其他和视觉有关的连续特性进行离散化,将近似的颜色划分为同一种颜色,用一个特定的二进制数表示它。 • 颜色系统: • 单色系统:2色(1位) • 灰度系统 • 彩色系统 • 16色(4位) • 256色(8位) • 真彩色(16位/24位) 计算机中实际颜色表示还受到硬件设备能力的限制(需要产生颜色的设备:显示器)
一、数字化原理 • 指令编码 • 数值表示 • 字符编码 • 声音编码 • 颜色编码 • 图像编码 • 影像编码
一、数字化原理 ——图像的编码:点阵表示 以颜色编码为基础,将二维平面(空间)离散化为网格点,记录每个网格点上的一个代表性颜色值。 2色 分辨率:网格点的数目,如1024x768
一、数字化原理 ——图像的编码:点阵表示 256 bit
一、数字化原理 ——图像编码:图像质量 16色 (4位) 黑白色 (1位) 256色 (8位) 真彩色 (24位) 相同分辨率不同颜色编码的图像的效果