<>进位计数制

一般情况,在R进制数字系统中,采用R个基本符号(0,1,2…R-1)表示各位上的数字,采用**"逢R进一”**的运算规则,对于每一个数位i,该位上的权为R^i。R被称为该数字的基。

B二进制
O八进制
D十进制
H十六进制
<>1. R进制转十进制

任何一个R进制数转换成十进制数时,只要**“按权展开“**即可。

将二进制数(10101.01)转换为十进制数:

10101.01 = 1x2^4 + 0x2^3 +1x2^2 + 0 x 2 + 1 + 0x2^-1+ 1x2^-2

将八进制数(307.6)转换为十进制数:

307.6 = 3x8^2 + 7x8^0 + 6x8^-1

将十六进制数(3A.C)转换成十进制数:

3A.C = 3x16^1 + 10x16^0 +12x16^-1

<>2.将十进制转换为R进制

任何一个十进制数转换为R进制数时,要将整数和小数部分分别进行转换。
<>1.整数部分的转换:除基取余,上右下左
除基取余,上右下左
:要转换的十进制整数去除以基数R,将得到的余数作为结果数据中各位的数字,直到上商为0为止。先得到的余数作为右边低位上的数位,下面的余数作为作为左边高位上的数位。

example:

<>2.小数部分的转换:乘基取整,上左下右
乘基取整,上左下右
:要转换的十进制小数去乘以基数R,将得到的乘积的整数部分作为结果数据中的各位数字,小数部分继续与基数R相乘。以此类推,直到某一步乘积的小数部分为0或已得到希望的位数为止。最后,将上面的整数部分作为左边高位上的数位,下面的整数部分作为右边低位上的数位。

Note:转换过程中,可能乘积的小数部分总得不到0,即转换得到希望的位数后还有余数,这种情况下得到的是近似值。

example:

<>3。含整数、小数部分的转换
将整数部分和小数部分分别进行转换即可。

<>3.二、八、十六进制数的互相转换
<>1.八进制数转二进制数
只要把每一个八进制数字改写成等值的3位二进制数即可,且保持高低位的次序不变。

八进制数与二进制数的对应关系如下:

0 = 000 1 = 001 2 = 010 3 = 011

4 = 100 5 = 101 6 = 110 7 = 111

example:

<>2.十六进制数转换为二进制数
只要把每一个十六进制数字改写成等值的4位二进制数即可,且保持高低位的次序不变。

部分16进制数与二进制数的对应关系如下:

A = 1010 B = 1011 C = 1100 D = 1101 E = 1110 F = 1111

example:

<>3.二进制数转换为八进制数
整数部分从低位向高位每3位用一个等值的八进制数来替换,最后不足3位时在高位补0凑满3位;小数部分从高位到低位方向每3位用一个等值的八进制数来替换,最后
不足3位时在低位补0凑满3位;

0.10101 = 000.101 010 = 0.52

10011.01 = 010 001.010 = 23.2
<>4.二进制数转换为十六进制数
整数部分从低位向高位每4位用一个等值的十六进制数来替换,最后不足4位时在高位补0凑满4位;小数部分从高位到低位方向每4位用一个等值的十六进制数来替换,最后
不足4位时在低位补0凑满4位;

11001.11 = 0001 1001.1100 = 19.C

技术
下载桌面版
GitHub
Gitee
SourceForge
百度网盘(提取码:draw)
云服务器优惠
华为云优惠券
腾讯云优惠券
阿里云优惠券
Vultr优惠券
站点信息
问题反馈
邮箱:[email protected]
吐槽一下
QQ群:766591547
关注微信