信息的表示与处理
信息存储
大多数计算机使用8位块(字节byte)作为最小的可寻址内存单位,而非直接访问内存中单独的位。虚拟内存是内存被机器级程序抽象化为一个很大的字节数组的名称,内存的每个字节都由一个唯一的数字标识,被称作地址。这些地址的集合叫做虚拟地址空间。
编译器和运行时系统将存储器空间划分为更可管理的单元,来存放不同的程序对象(每个程序对下可以简单的被看做一个程序块,而程序本身就是是一个字节序列),这种管理就是建立在虚拟地址空间中之上的。比如C语言中的指针的值就是某个存储块的首个字节地址。
十六进制表示
计算机内信息是以二进制的方式被存储起来的,如果我们用二进制来表示这些信息所在的内存地址或是信息字节序列本身,因为一个字节等于8位,那么表示会相当繁琐,又由于十进制与二进制的转换不方便,因此使用十六进制来描述位模式将更方便。
编写机器级程序的一个常见人物就是在位模式的十进制、二进制和十六进制表示之间人工转换。
字数据大小
每台计算机都有一个字长(word size),用来指明指针数据的标称大小,因为虚拟地址是以这样的一个字来编码的。我们通常所说的电脑是64位或32位指的就是这个字长,从计算机的硬件组成来说,字长是总线携带的定长字节块的长度,总线以每个字长的信息在各个硬件之间传递,理论上来说,在其他条件一