计算机科学概论复习笔记(3)

数据和信息的区别

数据(data):基本值或事实

信息(information):用有效的方式组织或处理过的数据

数据与计算机

压缩率:压缩后的数据大小除以原始数据大小的值。

无损压缩:不会丢失信息

有损压缩:会丢失信息

模拟数据与离散数据

模拟数据:连续形式表示的信息

数字数据:离散形式表示的信息

数字化:把信息分割成离散的片段

数字信号只在两个极端之间跳跃,被称为脉冲编码机制(PCM)

重新计时: 在信号降级太多之前将它重置为原始状态的行为

定长量数

如果只用定量的数值,那么可以用一半来表示正数,一半来表示负数。符号由数量值决定。

举个例子:

那么不管是执行加法还是减法,都只要把两个数求和然后舍弃进位就可以了。

实现十进制补码

二进制补码

把上面的公式中的k改为2,就可以得到二进制的补码公式了。

也就是Negative(I) = 2^(k)-I

利用反码来计算补码

将每一位取反再加一。

溢出

溢出时给结果预留的位数存不下计算出的数值的情况。

溢出是把无限的世界映射到有限的机器上会发生的典型问题。

浮点表示法

符号x尾数x10^exp 的表示法被称为浮点表示法。因为数字的个数是固定的,但是小数点却是浮动的。正指数把小数点向右移动,负指数把小数点向左移动

要注意的是,在上表的最后一个例子中,丢失了信息,因为我们只能用5位来保存有效数字

相应的,二进制的浮点表示法可以这样定义

符号*尾数*2^exp

把十进制小数转成二进制

之前讲了把十进制整数转换成其他进制的,需要用除法,相反的,把十进制小数转换成其他进制就要用乘法

整个过程直到乘法结果中的小数部分为0为止。

但是对于有的数,比如0.435,转换成二进制,就是个无限小数了。

科学计数法

科学计数法是另一种浮点表示法。由于早期的机器不能输出指数,所以,用字母E来代替‘ ^ ’

比如, 12001.32708 将被写成 1.200132708E+4

文本表示的方法

字符集是字符和他们对应的代码的清单。

ASCII字符集

最初,ASCII字符集用7位表示每个字符,每字节第8位为校验位,用来协助确保数据传输正确。后来,ASCII字符集进化了,用8位表示每个字符。

ASCII的前32个字符没有简单的字符表示法,不能输出到屏幕上,这些字符是为特殊用途保留的,比如回车符和制表符。

Unicode字符集

一般情况下,Unicode字符集的每个字符编码都是16位,但是也可以使用更多的空间来表示每个字符,以便表示额外的字符。

Unicode把ASCII字符集作为了它的子集。Unicode的前256个字符与扩展ASCII字符集中的完全一样。

文本压缩

关键字编码

用特定的单个字符代替高频字符的编码方式

缺陷

1、用来对关键字编码的字符不能出现在原始文本之中

2、某些单词高频出现在特定类型的文本之中,压缩率不稳定

行程长度编码

把重复序列替换为标志字符的编码方式

哈夫曼编码

哈夫曼编码是变长编码,使用不同长度的位串来表示每个字符。

基本思想是用较少的位表示经常出现的字符,把较长的位串留给不经常出现的字符。

哈夫曼编码的解码

由于哈夫曼编码在创建编码的时候,就已经保证了一个字符的位串不会是另一个字符的位串的前缀,因此在从左到右扫描一个位串的时候,当发现一个位串对应一个字符,那么这个位串就一定表示这个字符,不会有歧义。

音频数据表示法

声波是连续的,模拟的,要在计算机上表示声音,那就要把它数字化,分割成离散的、便于管理的片段。

数字化声音的过程叫做采样。

采样率在每秒40000次左右就足够创建合理的声音复制品。采样率低于这个值的时候,人耳听到的声音就会失真。较高采样率生成的声音质量较好,但是达到某种程度后,额外的数据都是无关的,因为人耳分辨不出其中的差别。

激光唱片(CD)存储的是数字化的音频信息

图像与图形表示法

颜色表示法

颜色通常用RGB值来表示,用于表示颜色的数据量称为色深度

数字化图像与图形

数字化图像是把照片表示成独立的点集,这些点称为像素

分辨率:用于表示图像的像素个数

光栅图形格式:逐个像素存储图像信息的格式

位图文件是最直接的图像表示形式

gif格式的可用颜色数量被限制在256种

JPEG格式利用了人眼的特性,由于人眼对亮度和颜色的渐变比对他们的迅速改变敏感,因此,保存了短距离内色调的平均值。

PNG格式压缩效果比gif更好,同时提供的色深度范围更广,但是不支持动画。

图像的矢量表示法

矢量图是用线段和几何形表示图像的方法。

视频表示法

视频编译码器

编译码器表示压缩器/解压缩器

视频编译码器:用于缩减电影大小的方法

视频编译码器的压缩方式有两种:时间压缩空间压缩

时间压缩

查找连续帧之间的差别,使用浅矩阵来保存前后两帧的画面的改变部分。

空间压缩

删除一个帧中的冗余信息,空间压缩的基本问题与压缩静态图像是一样的。