R进制
对于一个R进制的数X来说,其值可以通过下面的公式算出来:
V
(
X
)
=
∑
i
=
0
n
−
1
X
i
R
i
+
∑
i
=
−
1
−
m
X
i
R
i
V(X) = \sum_{i=0}^{n-1}X_iR^i+\sum_{i=-1}^{-m}X_iR^i
V(X)=i=0∑n−1XiRi+i=−1∑−mXiRi
前面是整数部分,后面是小数部分,m,n为正整数,表示第i位上的数字乘以进制数的i次方。比如二进制数(11.01)2=1×21+1×20+0×2-1+1×2-2=3.25。当R进制转换到十进制时,就这样转换。
十进制转R进制
那十进制怎么转换为R进制呢,可以将十进制数连续除以R,其每个余数就是R进制数各个数位上的数字,最后的余数是最高位。比如将68转换成二进制数,用除2取余法:
结果就是6810 =10001002,将68转换为八进制数就用除8取余法。
十进制小数转换成R进制小数
十进制小数转换成R进制小数,整数部分仍按上述方法转换,小数部分则乘以R,然后将结果的整数位取出作为转换最终结果的一位,再用去掉整数位的小数再乘以R,之后循环这样执行,直到小数部分为0或者达到所要求的精度为止,取出的这些整数位第一位为最高位。例如,将十进制小数0.3125转换成二进制小数:
结果就是0.312510 =0.01012。所以将十进制数68.3125转换成二进制数就是1000100.0101。
二进制和八进制十六进制之间转换
二进制和八进制十六进制之间怎样转换呢?每位八进制数相当于三位二进制数,每位十六进制数相当于四位二进制数,举个例子说明下就清楚了:
(1000100)2=(1 000 100)2=(104)8
(1000100)2=(100 0100)2=(44)16
上面这个等式反过来当然也成立,就是八进制十六进制转换为二进制反过来计算就可以了。
位
这是数据的最小单位,表示一位二进制数据。
字节
由八位二进制数据组成。字节是数据存储中最常用的基本单位。我们常说内存有2G,这里的单位就是字节。1K=1024字节,1M=1024K,1G=1024M。
字
位的组合,作为一个独立的信息单位处理。取决于机器的类型、字长及使用者的要求。常用的固定字长有8位、16位、32位等。
机器字长
机器字长:讨论信息单位时,有个与机器硬件指标有关的单位就是机器字长,一般指参加运算的寄存器所含有的二进制数的位数,它代表了机器的精度,如32位、64位等。就是我们常说的32位机器还是64位机器。