这有是有计算机算法在里面的!
整数是除2取余倒计法,小数是乘2取整正计法。负数和正数一样,只是最后加个负号就行了。举几个例子
首先八进制Octal:
八进制Octal是以8为基的。因为8 == 2^3, 所以每个八进制数字代表3个二进制数字(或位)
如:123(octal) = 001 010 011
十进制如下:41(decimal) = 0010 1001 = 00 101 001 = 051 (octal)
注意:分组是从最右边开始的(41 不能如下分组"001 010 01")
十六进制:
十六进制Hex是以16为基的。因为16 == 2^4, 所以每个八进制数字代表4个二进制数字(或位)
单个十六进制数字的范围是0000 - 1111 (即 0-15 (十进制decimal)), 但是这样的话数字不够了,因此十进制10-15 (1010-1111)用字母A-F (大小写无所谓)代表.
例如:
123(hex) = 0001 0010 0011
1ac(hex) = 0001 1010 1100
用十进制一样:41(十进制) = 0010 1001 = 29 (十六进制hex)
8(进制)转换成2(进制)-----把每一位数转化为三位数,
16((进制)转换成2(进制)---把每一位数转化为四位数,
8(进制)转换成16(进制)----先转化为2进制,再转化,...
16(进制)转换成8(进制)----先转化为2进制,再转化,...
因为一个字符为一个2进制位 而一个16进制数由4个字符组成 即由4个2进制位组成 所以4个2进制位为一个16进制书