二进制: 0 1 组成的,最小0 最大1 (000001) byte = 1字节 = 8bit = 00000000 = 8位 二进制表示十进制多少数: 两个位: 最小00 最大11 共2的2次方, 能表达四个数 三个位: 最小000 最大111 共2的3次方,能表达8个数 问题: 那八个位能表示多少? 最小:00000000 最大:11111111 这就是8位 也叫一个字节 如果用数没有正负之分那可以表示 0~255 共256个数字. 也可以叫做 2的8次方,你用计算器算算, 2的8次方是不是等于256? Java中: 1 byte = 1字节 = 8bit 可表达 2的八次方个数字 1 short= 2字节 = 16bit 可表达2的十六次方个数字 1 int = 4字节 = 32bit 可表达2的32次方 那么1btye能存储多少十进制的数字呢? 1byte = 8 bit 2的8次方 = 256, 所以能存储到256,包括0就可以存储257个数字 那为什么书上说1byte能存储 -128~127? 因为计算机只能存储01,不能直接存储 -10, -符号也占一位数字,256 - 1 = 255 十进制转换二进制 111 = 1*2^0 + 1*2^1 + 1*2^2 = 1+2+4 = 7 二进制转换十进制 101101 = 1*2^0 + 0*2^1 + 1*2^2 + 1*2^3 + 0*2^4 + 1*2^5 = 1+4+8+32 = 45