数据的表示与存储
数据在计算机中的表示
数制
数制
也称记数制,是用一组固定的符号和统一的规则来表示数值的方法
有两个基本要素:基数
和位权
基数
在某种进位记数制中,每个数位上能够使用数字的个数
位权
一个数字在某个固定位置上所代表的值
整数自右向左,最低位为基数的0次幂
小数自左向右,最高位为基数的-1次幂
二进制
在计算机中处理、存放的数据都是以0和1的二进制编码形式存放的
优点:
- 物理上容易实现,可靠性强
- 运算简单,通用性强
- 0、1数字与逻辑值"假"和"真"正好吻合
缺点:
- 书写冗长(一般用16进制或8进制作为简化表示)
二进制运算
算术运算
加法运算规则:
- $ 0+0=0 $
- $ 0+1=1 $
- $ 1+0=1 $
- $ 1+1=10 $(向高位进位)
减法运算规则:
- $ 0-0=0 $
- $ 0-1=1 $(向高位借位)
- $ 1-0=1 $
- $ 1-1=0 $
乘法运算规则:
- $ 00=01=1*0=0 $
- $ 1*1=1 $
除法运算规则:
- $ 0/1=0 $
- $ 1/1=1 $
逻辑运算
计算机的逻辑运算是按位进行的,没有进位和借位关系
逻辑或运算规则:
只要两个逻辑变量中有一个为1,逻辑或的结果就为1
只有两个逻辑变量同时为0时,结果才为0
- $ 0+0=0 $
- $ 0+1=1 $
- $ 1+0=1 $
- $ 1+1=1 $
逻辑与运算规则:
只要两个逻辑变量中有一个为1,逻辑与的结果就为0
只有两个逻辑变量同时为1时,结果才为1
- $ 0 \cdot 0=0 $
- $ 0 \cdot 1=0 $
- $ 1 \cdot 0=0 $
- $ 1 \cdot 1=1 $
逻辑非运算规则:
对各位求反,即0变为1,1变为0
- $ \bar{0} = 1 $
- $ \bar{1} = 0 $
进制的转换
二进制数、八进制数、十六进制数转换成十进制数
按权展开相加
十进制数转换成二进制数、八进制数、十六进制数
整数部分:
除以基数取余法(最后倒写结果)
小数部分:
乘以基数取整法(最后正写结果)
很多情况下小数部分是无法精确转换的
二进制数、八进制数、十六进制数之间的转换方法
1位8进制数所表示的范围和3位二进制数相同,1位16进制数所表示的范围和4位二进制数相同
二进制转八进制:三合一
二进制转十六进制:四合一
八进制转二进制:一拆三
十六进制转二进制:一拆四
八进制与十六进制转换:先转二进制
数值在计算机中的表示与存储
机器数
数字的符号存放在该字节的最高位,称为符号位,也称数符
规定用0表示正,1表示负
这种符号数值化的数称为机器数
原码
机器数的最高位表示符号位,正数的符号位为0,负数的符号位为1,其余各位是数值的绝对值
问题:
- 数值0有两种形式
- 算术运算时符号位需要单独处理
反码
正数的反码就是其原码,负数的反码是符号位为1,其余各位按位取反
问题:
- 数值0有两种形式
- 算术运算时符号位需要单独处理
补码
正数的补码就是其原码,负数的补码是其反码在最低位加1
补码表示方法中,0的表示方式是唯一的
对补码再取一次补码可得原码(对8位二进制存放的负数,$ 原码+反码=1,0000,0000 $,这也便是补码的本质 )
对于8位二进制,编码$ 1000,0000 $是没有使用的(可以由反证法推出),可以用来扩充补码所能表示的数值范围
利用补码方法可以很方便地实现正负数的加法运算,简化电路的设计
数学原理:
若两个数a,b之和等于R,则称a,b互为补数
,R称为模
求a的补码,就是求$ R-a $的值
对于运算$ x-y \(,可以将y取补码\) R-y \(,记为z,得\) x-y=x-(R-z)=x+z-R $
故利用补码可以化减为加
实数在计算机的表示
定点整数
小数点的位置在最低位的右边,也即纯整数
定点小数
小数点的位置在符号位的右边,也即纯小数
浮点数
利用类似科学记数法的形式表示,由阶码
和尾数
组成
$ 浮点数=尾符 \times 尾数 \times 2^{阶符 \times 阶码} $
阶码用定点整数表示,所占的位数确定了数值的范围
尾数用定点小数表示,所占的位数确定了数值的精度
字符的编码
ASCII码
采用7位二进制编码,最高位一般为0
在需要进行奇偶校验时,最高位可用于存放奇偶校验码
汉字的表示
GB2312-1980
称为国标码,是我国中文信息处理技术的发展基础
采用2字节的二进制编码,每字节的最高位为0,但为了在计算机内部能区分ASCII码和汉字,将最高位置1
缺点:
- 编码效率不高
- 没有繁体字
多媒体数据的表示
图形与图像
图形以矢量图形文件形式存储
图像以位图形式存储
数字化过程:
- 采样
- 量化
- 编码
文件大小:
$ 图像字节数=列数\times行数\times颜色深度\div8 $
音频
文件大小:
$ 存储容量=采样频率(Hz)\times量化位数(bit)\times声道数\times时间(s)\div8 $
视频
一幅幅独立图像组成的序列按一定的速率连续播放
标签:表示,存储,第三章,运算,符号,二进制,计算机科学,补码,times From: https://www.cnblogs.com/geministar/p/CS101_3.html