二进制
只有0,1。依照逢2进1的形式示意数据。
这里能够从0-5几个十进制数转换为二进制数开始学习。
0 --> 01 --> 12 --> 103 --> 114 --> 1005 --> 1016 --> 110
除了下面逢二进一这种算法以外,还能够采纳除二取余法。
所谓的除二取余,就是用2一直的去除十进制的数,失去每一步的余数,而后将所有的余数依照逆序排列即是二进制数。
计算机中的数据最小单位
一般来说,在计算机中会用8个二进制位为一组形成计算机中最小的组成单元,也就是字节(byte,简称B)。
其中每个二进制位称之为一位(bit, 简称b), 1byte = 8bit ,简写1B=8b。
这里以数字6为例,在计算机中用二进制示意,如下:
字符在计算机中是如何存储的
Ascii编码表:即美国信息替换规范编码,规定了古代英语、数字字符和其余西欧字符对应的数字编号。
计算机通过编码表,将字符转换为数字,数字再转换为二进制进行存储。
二进制转十进制
二进制转换成十进制,能够通过如下的形式进行计算:
下面的图片中,次要是用每一个二进制数 乘以2的n次幂,最终后果相加即为十进制数。
再比方上面的示例:
八进制和十六进制
为了不便察看和示意,推出了八进制和十六进制。
这里以十进制数字97为例:
在上图中,97的二进制示意为01100001
,为了便于示意,能够把转换成的二进制数字,从右向左每三位分一组,也就变成了01、100、001,而后把这三组数字假设为独立的二进制数,那么三组二进制数别离对应的数字为1、4、1,将这三个数字组合到一起,即为八进制数。
在八进制中,每3位二进制作为一个单元,最小数是0,最大数是7,共8个数字,这就是八进制。
再来说十六进制,每4位二进制作为一个单元,最小数是0,最大数是15,共16个数字,顺次用:0-9 A B C D E F代表就是十六进制。
例如:
Java程序中反对二进制、八进制以及十六进制,别离须要以0B或者0b、0、0x或者0X结尾示意。
例如:
// 二进制int num1 = 0b111;System.out.println(num1); // 7// 八进制int num2 = 0141;System.out.println(num2); // 97// 十六进制int num3 = 0xFA;System.out.println(num3); // 250
数据单位
计算机存储最小的组成单位是字节,1byte等于8bit,也就是1B=8b。
在B的根底上,计算机倒退出了KB、MB、GB、TB... 这些数据单位。