深入理解计算机系统
文章平均质量分 71
和煦陽光
这个作者很懒,什么都没留下…
展开
-
编程确定系统是32位还是64位
首先要明白机器的字长定义了程序能够使用的虚拟地址的范围,32位字长就是4GB虚拟地址空间。随着处理器计算能力的发展,32为字长已经成为限制微处理器能力不断增长的主要因素。所以,更大字长的64位机器就出现了(X86-64),程序可以访问2^64字节存储器的能力。X86-64代码的主要特性如下: a) 指针和长整数都是64位。整数算术运算支持8、16、32、64位数据类型。 b) 通用目的寄存器由3原创 2016-04-06 19:45:11 · 1029 阅读 · 1 评论 -
寻址和字节序
首先看下图:(图片从《Unix Network Programming》copy)对于跨越多字节的程序对象,必须确定(1)对象的地址和(2)这些字节在存储器中如何排序。对于第一个问题,多字节对象一般被存储为连续的字节序列,对象的地址就是该对象所占字节序列中地址最小的那个字节的地址。对于第二个问题,将最低有效字节放在低地址,最高有效字节放在高地址,这种方式称为小端法;反之,则为大端法原创 2016-04-06 21:47:21 · 730 阅读 · 0 评论