1、计算机内部只有二进制,包括字符数据等。
int i=15; //00000000 00000000 00000000 00001111
char c=‘A’; //00000000 01000001
2、十进制是人类的习惯
计算机在输出时候,按照人类习惯输出十进制。
计算机默认接受十进制数据,自动转换为二进制。
3、十六进制是二进制的简写,四位四位对应转换(8421规则)。(计算机专业人士为了表达二进制方便而提供的)
Unicode码,字符编码一般用十六进制来表示,为了与十进制区分,十六进制以0x开头。
int i=15; //00000000 00000000 00000000 00001111
char c=‘A’; //00000000 01000001
2、十进制是人类的习惯
计算机在输出时候,按照人类习惯输出十进制。
计算机默认接受十进制数据,自动转换为二进制。
3、十六进制是二进制的简写,四位四位对应转换(8421规则)。(计算机专业人士为了表达二进制方便而提供的)
Unicode码,字符编码一般用十六进制来表示,为了与十进制区分,十六进制以0x开头。
八进制与二进制的转换,三位三位对应转换。八进制以0开头(零)
八进制也是二进制的简写,三位对应转换(不常用)
4、byte 8bit -128~127
8位
128 64 32 16 8 4 2 1
1 1 1 1 1 1 1 1
8位二进制的权数,1~128之和=255
由于最高位是符号位,所以255-128=127
5、单位换算表:
1Byte=8bit
1KB=1024Byte(字节)=8*1024bit
1MB=1024KB
1GB=1024MB
1TB=1024GB
1PB=1024TB
2^10=1024
6、
//单行注释
/*
* 多行注释
*/
package day02;
public class BinDemo {
public static void main(String[] args) {
// TODO 自动生成的方法存根
int i=15;
//f(g(x)); 计算顺序:数学中先计算g(x),然后计算f(g(x))
System.out.println(Integer.toBinaryString(i)); //1111,转换为二进制
i='A'; //单引号‘’(字符);双引号""(字符串)
System.out.println(Integer.toBinaryString(i)); //1000001
i=192;
System.out.println(Integer.toBinaryString(i)); //11000000
i=0xc0; //十六进制,Java中表示十六进制前缀用0x (零x)
System.out.println(Integer.toBinaryString(i)); //11000000
i=0xffff;
System.out.println(Integer.toBinaryString(i)); //1111111111111111
i='中'; //0x4e26=='中'
System.out.println(Integer.toBinaryString(i)); //100111000101101
}
}
/*
* 多行注释 //单行注释
*/
/*
各个进制之间的转换:
65(10)=6*10+5*1=6*10^1+5*10^0 //十进制,以10为基数,最高次幂为(十进制位数-1),一直计算到10^0;
1111(2)=1*2^3+1*2^2+1*2^1+1*2^0 //二进制,以2为基数,最高次幂为(二进制位数-1),一直计算到2^0;
=1*8 +1*4 +1*2 +1*1
=8+4+2+1
=15(10) //二进制转换为十进制
二进制的权(2^n)=...... 128 64 32 16 8 4 2 1
1 0 0 0 0 0 1
同理:1000001(2)=64+1=65(10) //根据二进制的位数来对应权数,可以直接得出结果。
11000001(2)=128+64+1=193(10)
65(10)转换为二进制:65减去比它小的二进制的最大权数,65-64=1,1只能再减去1,中间的都为0。即1000001
或者:65/2,不断求余,最后把余数的顺序倒过来即可。
15(10)=1*10+5*1=1*10^1+5*10^0=1111(2)
8 4 2 1
1 1 1 1
192(10)=11000000(2)
十六进制:0~9,a~f:0~15 (二进制的简写,a=10,b=11,c=12,...,f=15)
基数:16 权:16^2 16^1 16^0:256 16 1
41(16)=4*16^1+1*16^0=65(10)=1000001(2)
十六进制转换为二进制:4个为一个单位,8421规则;
4 1 (16) //4减去8421中比它小(或者相等)的数,一直减到0;
8421 8421
0100 0001(2)
c0(16)=12*16+0*16=192(10)
c 0 (16) //c=12,12-8=4,4-4=0;
8421 8421
1100 0000(2)
二进制转换为十六进制:8421规则;
1010 1010 1010 1010
8421 8421 8421 8421
8+2=10,即a,所以1010101010101010(2)=aaaa(16)
1111 1111 1111 1111
8421 8421 8421 8421
8+4+2+1=15,即f,所以1111111111111111(2)=ffff(16)
*/

1305

被折叠的 条评论
为什么被折叠?



