机器数
研究机器内的数据表示:组织数据,方便计算机硬件直接使用
常见的机器数:原码,反码,补码,补码。正数和负数的表示方式
正数都和原数一样
负数
原码:表示简单,运算复杂(要设置加法、减法器),0的表示不唯一,原码=2的n次方-x
反码:表示相对原码比较复杂,运算相对原码简单(加法器),0的表示不唯一,反码=2的n+1次方+x-1
补码:表示相对原码复杂,运算简单(加法器),0的表示唯一,补码=2的n次方+x
移码:表示浮点数的阶码。数值位与X的补码相同,符号位与补码相反。
数据表示
定点数据:可表示定点小数和整数,数据表示范围受限
阶码位数:决定数据范围
尾数位数:决定数的精度
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i5JtsrcN-1585318120775)(C:\Users\Darlene\AppData\Roaming\Typora\typora-user-images\image-20200226131921129.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v5vMmusN-1585318120777)(C:\Users\Darlene\AppData\Roaming\Typora\typora-user-images\image-20200226132111488.png)]
数据校验的基本原理
增加冗余码
码距:同一编码中,任意两个合法编码之间不同二进数位数的最小值;
校验码中增加冗余项的目的就是为了增大码距。
码距越大,抗干扰能力越强,纠错能力越强,数据冗余越大, 编码效率低,编码电路也相对复杂;
奇偶校验
奇校验:二进制码中需要有奇数个1
每一位数的异或,结果=0,数据正常
偶校验:二进制码中需要有偶数个1
每一位数的异或的反,结果=0,数据正常
CRC校验
增加冗余项
生成多项式
收发双方约定的一个(r + 1)位二进制数,发送方利用G(X)对信息多项式做模2除运算,生成校验码。接收方利用G(X)对收到的编码多项式做模2除运算检测差错及错误定位