现代计算机存储和处理的信息以二值信号表示(位 bit)。
1. 信息存储
大多数计算机使用8位的块,或者字节(byte),作为最小的可寻址的内存单位,而不是访问内存中单独的位。
虚拟内存(virtual memoey):内存可以视为一个非常大的字节数组。
地址(adress):内存的每个字节都由一个唯一的数字来标识。
虚拟地址空间:所有可能地址的集合。
每个程序对象可以简单地视为一个字节块,而程序本身就是一个字节序列。
1.1 十六进制表示法
一个字节由8位组成。
十六进制(hex):以16为基数,表示位模式。使用数字‘0’~‘9’ 以及字符‘A’ ~‘F’来表示16个可能的值。
简单窍门:十六进制数字A、C和F相应的十进制的值。而对于把十六进制B、D和E转换成十进制值。
1.2 字数据大小
每台计算机都有一个字长(word size),指明指针数据的标 成大小(nominal size)。因为虚拟地址是以这样的一个字来编码,所以字长决定的最重要的系统参数就是 虚拟地址空间的最大大小。也就是说,对于一个字长为 w 位的机器而言,虚拟地址的范围为 0 ~ 2^w-1 , 程序最多访问2^w个字节。
1.3 寻址和字节顺序
对于多字节的程序对象,几乎在所有的机器上,必须建立两个规则:
这个对象的地址是什么:对象的址为所使用字节中最小的地址。
以及在内存中如何排列这些字节:多字节对象都被存储为连续的字节序列。
排列表示一个对象的字节有两个通用的规则:
网友评论