2002.8.26,记录学习java的第三天。今天主要认识了常用的进制、进制之间的转换和计算机存储单位。
1.常用进制
1.1 十进制
十进制是生活中使用最为普遍的一种进制,由0 1 2 3 4 5 6 7 8 9十个数码组成,基数为10,逢十进一。
1.2 二进制(BIN)
二进制由0 1两个数码组成,基数为2,逢二进一。
二进制数的加法和乘法基本运算法则各有四条,如下:
0+0=0,0+1=1,1+0=1,1+1=10
0×0=0,0×1=0,1×0=0,1×1=1
1.3 八进制(OCT)
八进制由0 1 2 3 4 5 6 7八个数码组成,基数为8,逢八进一。八进制的每个数码正好对应三位二进制数。
1.4 十六进制(HEX)
十六进制由0 1 2 3 4 5 6 7 8 9 A B C D E F十六个数码组成,基数为16,逢十六进一。
十六进制颜色代码:#FF0000 红色 #00FF00 绿色 #0000FF 蓝色
2.进制转换
2.1十进制整数转换为二进制(BIN)
一个十进制整数转换为二进制数常用的方法是:除2取余法,即用2连续除十进制数,直到商为0,逆序取余数。
例:将25转换为二进制数
25÷2=12......1(余数)
12÷2=6......0
6÷2=3......0
3÷2=1......1
1÷2=0......1
所以25=(11001)2
同理,把十进制整数转换为八进制数和十六进制数时,把基数2分别换成8、16就可以了。
2.2 十进制小数转换为二进制
一个十进制小数转换为二进制常用的方法是:乘2取整法,即:
1.用2乘十进制数的小数部分,取乘积的整数部分作为转换后的二进制数的第一位小数部分;
2.用2乘上一步乘积的小数部分,取乘积的整数部分作为转换后的二进制数的低一位小数部分;
3.重复2步骤,直到乘积为0,或达到精度数位要求。
例:将0.39(D)转换为二进制数,要求精确到四位小数
0.39×2=0.78----------->取0
0.78×2=1.56----------->取1
0.56×2=1.12----------->取1
0.12×2=0.24----------->取0
所以0.39(D)=0.0110(B)
同理,把十进制小数转换为八进制数和十六进制数时,把基数2分别换成8、16就可以了。
2.3 二进制(BIN)转换为十进制
一个二进制数转换为十进制数常用的方法是:按位权展开求和。
例:将1011011.01011(B)转换为十进制数
解:
1 | 0 | 1 | 1 | 0 | 1 | 1 | . | 0 | 1 | 0 | 1 | 1 | |
位权 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | -1 | -2 | -3 | -4 | -5 | |
求和 |
同理,把八进制数、十六进制数转换为十进制时,把基数2换成8、16,按位权展开求和就可以了。
2.4 二进制(BIN)转换为八进制
一个二进制数转换为八进制数常用的方法是:“三合一”法,即:二进制数的整数部分从小数点开始向左三位为一组(不够补0)转换成十进制数,小数部分从小数点开始向右三位为一组(不够补0)转换为十进制数,所得结果即是。
例:把001011011.011010(B)转换为八进制数
解:001 011 011 . 011 010
1 3 3 . 3 2
所以001011011.011010(B)=133.32(O)
八进制转换为二进制:“一拆三”法
2.5 二进制(BIN)转换为十六进制(HEX)
一个二进制数转换为十六进制数常用的方法是:“四合一”法,即:二进制数的整数部分从小数点开始向左四位为一组(不够补0)转换成十进制数,小数部分从小数点开始向右四位为一组(不够补0)转换为十进制数,所得结果即是。
例:把001011011.011010(B)转换为十六进制数
解:0000 0101 1011 . 0110 1000
0 5 B 6 8
所以001011011.011010(B)=5B.68(H)
十六进制转换为二进制:“一拆四”法
3. 计算机存储单位
3.1 基本存储单位
位(bit):二进制数中的一个数位,可以是0或者1,是计算机中数据的最小单位。
字节(Byte,B):计算机中数据的基本单位,每8位组成一个字节。各种信息在计算机中存储、处理至少需要一个字节。
字(Word):两个字节称为一个字。汉字的存储单位都是一个字。
3.2 单位换算
1B=8b,1kb=1024B,1mb=1024kb,1gb=1024mb