数制及其的互相转换

什么是数制

数制:由低位向高位进位计数的方法,“逢几进1”即为几进制数

例:十进制,即为逢10 进1,以此类推:二进制即为逢2进1,八进制即为逢8进1,十六进制即为逢16进1。详情如下:

  • 二进制:包含0、1,共2个符号
  • 八进制:包含0、1、2、3、4、5、6、7,共8个符号
  • 十进制:包含0、1、2、3、4、5、6、7、8、9,共10个符号
  • 十六进制:包含0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F,其中A–F代表10–15,共16个符号

数制型数据的表示

  • 二进制数:11011B或(11011)2
  • 八进制数:1360或136Q或(136)8
  • 十进制数:368D或368或(368)10
  • 十六进制数:4A31H或(4A31)16

什么是基数、位权

基数:数制允许使用的基本数字符号的个数。

例:二进制的基数为2,八进制的基数为8,十进制的基数为10,十六进制的基数为16。

位权:数制中每一固定位置对应的单位值称为位权。

例:十进制数35961.02也可表达为:
30000+5000+900+60+1+0+0.02,即
3104+5103+9102+6101+1100+010-1+2*10-2
小数点向左第一位1位权为0,其余依次是1,2,3,4。
小数点向右第一位0位权为-1,2位权为-2。
位权是多少,基数的幂就是多少,例:

数字3596102
位权10410310210110010-110-2

二进制、八进制、十六进制如何转换为十进制

按权展开即可

例:将(3A.C)16转换为十进制。
解:(3A.C)16=(3161+10160+12*16-1)10=(48+10+0.75)10=(58.75)10


十进制如何转换为二进制、八进制、十六进制

  • 整数部分与小数部分需要分别转换
  • 整数部分转换:除基取余,从下到上,直到商为0
  • 小数部分转换:乘基取整,上左下右,直到小数部分为0或保持所需精度

例1:将135D转换为八进制和二进制数
解:
10转8

10转2

得:(135)10=(207)8=(10000111)2

例2:将十进制小数0.6875转换为二进制。
解:

乘基取整
0.6875*2=1.375整数=1
0.375*2=0.75整数=0
0.75*2=1.5整数=1
0.5*2=1.0整数=1

小数已经为0不可以再乘
得:(0.6875)10=(0.1011)2


二进制、八进制、十六进制之间互相转换

  1. 二进制转八进制
    将二进制数由小数点开始,整数部分向左,小数部分向右,每3位一组,不够3位补0,每组二进制按权展开转为1个八进制
    例:1101010.01转为八进制
    解:小数点开始左右补零,001 101 010 . 010 ,001=1,101=5,010=2,
    得:(1101010.01)2=(152.2)8

  2. 八进制转二进制

    将每位八进制数转为二进制
    例:(67)8转为二进制
    解:6=110,7=111
    得:(67)8=(110111)2

  3. 二进制转十六进制

    将二进制数由小数点开始,整数部分向左,小数部分向右,每4位一组,不够4位补0,每组二进制按权展开相加转为1个十六进制

  4. 十六进制转二进制

    将每位十六进制数转为二进制

  5. 八进制转十六进制

    将八进制转为二进制,再做转换十六进制

  6. 十六进制转八进制

    将十六进制转为二进制,再做转换八进制


参考书籍:计算机组成原理

  • 10
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值