bit——信息的基本单位
在计算机内部,有数以万计的器件在控制电子的运动。这些器件随时监测这电路中各处电压的变化,并做出不同响应操作。这些器件不仅能检测电压的有无,还能测量出电压的大小。但是这样无疑会导致控制和检测电路的过度复杂性。如果只是检测电路中两点之间是否有电压,那么电路的复杂性也会大大降低。
而在计算机内部,正是采取后者来降低对电路和器件的复杂性。在符号意义上,我们采用“1”表示两点存在电压,用“0”表示两点不存在电压。我们就称这种要么是“1”,要么是“0”的符号单位为一个“bit”,即所谓的二进制表示法。
也就是说,计算机对有电平(即“1”)和无电平(即“0”)并不做严格的电压值定义。换句话说,就是无电平(“0”)并不代表电路中绝对不存在电压,它仅仅表示当前的“0”所代表的电压比起“1”所代表的电压更接近电压值0,同样“1”代表的电压值与电压值0的差值很大。比如,计算机定义2.9V的电压为“1”,0V的电压为“0”,那么当电路中的电压值为2.6V时,计算机就会当作“1”处理,而当电压为0.2V时,计算机就会当“0”处理。
当然,计算机要能代表足够大的数值范围才能正常工作。而电路中只有两种状态,即有电压(用“1”表示)和无电压(用“0”表示),所以,为了能够表示更大的数值,我们可以采用多条线路合并使用,比如8个bit宽度,就可以表示256个不同的状态。
数据类型
在计算机中,数值是用二进制表示法。只能够表达“数值”还是不够的,计算机还必须具备操作这些数值的能力。如果我们不仅定义了数值的表达方式(或编码方式),同时还定义了相关的操作方法,则在定义上称该表达方式为一种数据类型。每个计算机指令集(ISA)都定义了一组数据类型及其相应的操作指令。算术运算中采用补码编码表示正、负整数,在键盘输入和显示器输出的应用中,采用ASCII码表示字符。还有很多其他的表示法,如“科学表示法”,即将数值621表示为6.21×10²。现在很多计算机都支持这种表示方法,并提供相应的操作指令,我们称之为“浮点”数据类型。