数据分类:数字,文本,图片,音频,视频, 统称为多媒体。
计算机内部的数据:(二进制)
所有的计算机外部的数据类型的数据都采用统一的数据表示发转换后存入计算机中,当数据从计算机输出时再还原回来。这种通用的格式称为位模式。
位(bit): 计算机存储的最小单位 0 或者 1
位模式:位的序列,也称位流,比如一个字节(byte)是由八个位组成的位模式。
有图见,不同类型的数据,存储的位模式可能是一样的,遵循不同转换方式。
存储数字
整数
整数通常使用定点表示法存储
无符号表示法:有效范围(0 ~ ),将无符号整数转成二进制数,如果位数小于n位,则在左边补0,如果大于n位,则取右边的n位。
符号加绝对值表示法:第一位表示符号(0为正,1为负),其余位表示数值,将整数取绝对值。则后面的位按照无符号表示法转换。0将会表示为+0 和 -0。这种表示法不用于存储整数,而用于存储部分实数。
二进制补码表示法:几乎所有的计算机都使用二进制补码表示法来存储位于n位存储单元中的有符号整数。第一位表示符号(0为正,1为负),其余位表示数值,补码只有1个0(上面的绝对值表示法有两个0)。
补码运算两种方法:1、取反+1; 2、从二进制表示的右边复制,直到有1被复制,然后左边的全部取反。
二进制补码存储整数:
1、将整数变成n位的二进制数;
2、如果整数是正数或0,以其原样存储,如果为负数,则取补码。
二进制补码还原整数:
1、如果第一位为1,计算机取其补码,如果是0,不操作;
2、将改整数转成十进制。
8位表示的 bitFlow = 1000 0000 的补码是自己, 如果bitFlow是无符号表示,则为128,如果是有符号表示则为 -128。
实数
用于维持正确度或精度的解决办法是使用浮点表示法,该方法允许小数浮动。
浮点表示法由三部分组成: 符号,位移量,定点数。小数存储就是要规范化构造出这三部分。
符号: + / -, 第一位表示
位移量:指数,可正可负,使用余码表示法存储。
余码表示法:将真实的整数加一个正整数偏移量以保证存储的都是整数,偏移量的值为,m 为内存单元存储指数的大小。
单精度浮点数32位,m为8位, 则偏移量为127
双精度浮点数64位,m为11位,则偏移量为1023
定点数:小数,位数不足则右边补0
存储文本
表示某一符号的位模式的长度取决于改语言中所使用的符号的数量。是一种对数关系,
m为位模式的长度,n为需要表示的符号数量。
不同的位模式集合被设计用于表示文本符号,表示符号的过程被称为编码。常见的有ASCII, Unicode等。
存储音频
音频是随时间变化的实体,只能在某一时刻度量声音的密度。例如,每隔一段时间采集来自麦克风的信号。
存储图片
光栅图和矢量图
存储视频
视频就是图片在时间上的表示,称为帧。一部电影就是一系列的帧一张一张的的播放而形成运动的图像。
凡是过往,即为序章