计算机原理-数据

数据

二进制 十进制(人类use) 十六进制 (2,4,16 是权)

1011.011=2^3+0*2^2+2^1+2^0+0*2^-1+1*2^-2+1*2^-3=8+0+2+1+0+0.25+0.125 =27.375

七进制转十进制(权不一样)

604.01 = 6*7^2+0*7^1+4*7^0+0*7^-1+1*7^-2

十进制转二进制

十进制0.125换算为二进制

乘2取整法,即将小数部分乘以2,然后取整数部分,剩下的小数部分继续乘以2,然后取整数部分,剩下的小数部分又乘以2,一直取到小数部分

二进制转8进制

1101011 -> 001,101,011 (三位为一个8进制) = 2^0 2^2+2^0 2^1+2^0 = (1 5 3)_8

二进制转十六进制 同上(4位为一位16)10-16 = ABCD...

码 -- 8位表示 第一位 符号位(0正 1负)

正数 原码 反码 补码一样 负数 反码就是符号位不变原码各位反转 补码在反码基础上加1

移码 是在补码的基础上符号位取反

补码用来加减法运算 (1+1 = 0 进位) 丢一位

十制数123表示为:123D或者123;二进制数1011表示为:1011B;十六进制数3A4表示为:3A4H

Binary表示二进制,简写为B。Octal表示八进制,简写为O。Decimal表示十进制,简写为D。Hexadecimal表示十六进制,简写为H。

练习题

如果“2X”的补码是“90H”,那么X的真值是多少?

分析:(1)“90H”中H表示16进制,所以将90H转换成二进制

(2)真值即原码,所以需要将补码转换成原码

转换成二进制:90H = 1001,0000

补码:1001,0000 反码:1000,1111 原码:1111,0000

1111,0000转换成16进制 = -70H = -7x+0x=-112

所以2x = -112,x = -56

所以x的真值为-56

数值的表示范围

举个例子,比如机器位数为4,可以表示的范围为1111到0111,第一位为符号位,111二进制转化十进制为7,

表示范围为-7到7也就是-(24-1)-1到+(24-1)-1,所以不需要死记,去套下就可得除范围

那么补码和移码为什么要少一位呢?因为补码和移码没有负零。

浮点的运算

浮点数表示

N=尾数*基数指数。 --科学计数法

-110.11=-0.11011*2^11阶符、阶码、数符、尾数分别表示0、11、1、11011

运算过程

对阶>尾数计算>结果格式化

特点

1 .一般尾数用补码,阶码用移码

2.阶码的位数决定数的表示范围,位数越大范围越大

3.尾数的位数决定数的有效精度,位数越多精度越高

4.对阶时,小数向大数看齐

5.对阶时通过较小数的尾数右移实现

检验码 检测仅此一位错误 无法判断位置

海明码

设数据位是n位,校验位是k位,则n和k满足以下关系:

2^k-1>=n+k

循环冗余校验码 CRC

循环冗余校验码广泛应用于数据通信领域和磁介质的存储系统中,它利用生成多项式为k个数据位产生r个校验位来进行编码,其编码长度为k+r。CRC的代码格式如下:

循环冗余校验码有两部分组成:数据为、校验位。若数据位占k位,则校验位占n-k位。n为CRC码的字长。检验码越长校验能力就会越强。在CRC编码是,采用的是模2运算,模2运算加减运算的规则是按位运算,不发生借位和进位。

模2除法 (异或运算) 也不比较除数和被除数的相同位数值的大小,只要以相同位数进行相除即可。模2加法运算为:1+1=0,0+1=1,0+0=0,

  • 3
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

钱王拳王

感谢 first big ge

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值