1位可以表示0,1两种不同的状态;2位可以表示00,01,10,11四种不同的状态;...n位可以表示2^n种不同的状态(每一位有两种选择,一共有n位)。因此要表示128种不同的状态,需要2^n>=128,解得n>=7。理论上7位就足够了(0000000表示ASCII码1,0000001表示ASCII码2,...,1111111表示ASCII码128)。不过由于通常实现为:二进制的值即为对应的ascii码值,因此实际上需要表示0~128共129个不同的数,因此需要8位。