1. 基本数据类型(8个)
1.整型: byte(1字节,8位),short(2字节,16位),int(4字节,32位) ,long(8字节,64位)
2.浮点型: float(4字节,32位) ,double(8字节,64位)
3.字符型: char(2字节,16位)
4.布尔型: boolean(1字节,8 位)
2.数据存储大小
1.正数在计算机用二进制原码存储,负数用二进制补码存储,计算都用原码,符号位不参与运算,最高位表示符号位,0为正,1为负。正数的补码 = 原码 = 反码。负数的反码=符号位不变,其余取反。补码 = 反码 + 1。
2.十进制转二进制:除二取余,再逆序排列。二进制转十进制:按权相加,小数点前要从右到左用二进制的每个数去乘以2的相应位次方-1,小数点后则是从左往右乘以二的相应位负次方。
Eg:
1101.01 ( 2 ) = 1 ∗ 2 0 + 0 ∗ 2 1 + 1 ∗ 2 2 + 1 ∗ 2 3 + 0 ∗ 2 − 1 + 1 ∗ 2 − 2 = 1 + 0 + 4 + 8 + 0 + 0.25 = 13.25 ( 10 ) 1101.01(2)=1*2^0 + 0*2 ^1+1*2 ^2+1*2 ^3 +0*2 ^-1+1*2 ^-2=1+0+4+8+0+0.25=13.25(10) 1101.01(2)=1∗20+0∗21+1∗22+1∗23+0∗2−1+1∗2−2=1+0+4+8+0+0.25=13.25(10)
3.byte存储范围:最大 01111111 = 127 01111111 = 127 01111111=127,最小 10000000 10000000 10000000。
(1)最高位为0表示。正数:补码 = 反码 = 原码,最高位为0,原码,反码,补码都可以计算出值。 01111111 = 2 0 + 2 1 + 2 2 + 2 3 + 2 4 + 2 5 + 2 6 01111111=2 ^ 0 + 2 ^1 + 2 ^2 + 2 ^3 + 2 ^4 +2 ^5 + 2 ^6 01111111=20+21+22+23+24+25+26 = 127。
(2)最小 10000000 = − 128 10000000 = -128 10000000=−128,非 11111111 = − ( 2 0 + 2 1 + 2 2 + 2 3 + 2 4 + 2 5 + 2 6 ) = − 127 11111111=-(2 ^ 0 + 2 ^1 + 2 ^2 + 2 ^3 + 2 ^4 +2 ^5 + 2 ^6)=-127 11111111=−(20+21+22+23+24+25+26)=−127,0原码为00000000,-0原码为100000000,-0无意义,假定10000000表示-128。
原码 11111111 11111111 11111111,反码 10000000 10000000 10000000,补码 10000001 10000001 10000001,
补码 10000000 10000000 10000000,反码 01111111 01111111 01111111,原码 00000000 00000000 00000000,
3.IO读取写入的范围
IO读取写入范围为不带符号位的字节0-255,ASCII码无负数,最小
00000000
=
0
00000000=0
00000000=0。最大
11111111
=
2
0
+
2
1
+
2
2
+
2
3
+
2
4
+
2
5
+
2
6
+
2
7
=
255
11111111=2^0+2^1+2^2+2^3+2^4+2^5+2^6+2^7=255
11111111=20+21+22+23+24+25+26+27=255共256个数。
2
2
2