C语言进制之间转换

在计算机编程语言中,通常用数字后面跟一个英文字母来表示该数的数制。十进制一般用D(Decimal)、二进制数用B(Binary)、十六进制用H(Hexadecimal)来表示。例如:23AH、570D、110101B、0075H,…。当然也可以用这些字母的小写形式。
在这里插入图片描述

二进制数转换成十进制数

把二进制数转换成十进制数就是用“按权相加法”,把二进制数首先写成加权系数展开式,然后按十进制加法规则求和。

例:把二进制数110.11转换成十进制数。
在这里插入图片描述

十进制数转换为二进制数

前面“按权相加法”中,权的值在小数点左边和小数点右边是不一样的。所以,十进制数转换为二进制数时,整数和小数的转换方法也不同,一般先把十进制数的整数部分和小数部分分别转换后,再加以合并。

十进制整数转换为二进制整数采用"除2取余,逆排序"法。具体做法是:用2去除十进制整数,可以得到一个商和余数;再用2去除商,又会得到一个商和余数,如此进行,直到商为零时为止,然后把所有余数按逆序排列,也就是把先得到的余数作为二进制数的低位有效位,后得到的余数作为二进制数的高位有效位,依次排列起来。这就是所谓“除2取余,逆序排列”。

例:将一个十进制数25转换为二进制数。
在这里插入图片描述

十六进制和二进制之间的转换

由于十六进制的基数是2的幂,所以这两种数制之间的转换是十分容易的。一个二进制数,只要把它从低位到高位每4位组成一组,直接用十六进制数来表示就可了。

例:0011  0101  1011  1111 = 35BF
反之,把十六进制数中的每一位用4位二进制数表示,就形成相应的二进制数了。
在这里插入图片描述

十六进制数转换为十进制数

同二进制数转换十进制数相同,各位十六进制数与其对应权值的乘积之和即为与此十六进制相对应的十进制数。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值