- 论坛徽章:
- 0
|
原帖由 dgfsdgs 于 2008-4-29 11:55 发表 ![]()
谢谢老大.
也就是说内存是将8个位当成一小块,从物理结构上分开的?
然后内存内部给每8个位的小块编号,这个编号叫做物理地址?
操作系统可以自己决定访问那一个小块.
操作系统为了保护硬件,向应用程序展现的是另外一种地址,这个地址是虚拟地址,虚拟地址和物理地址的转换由操作系统完成.
另外再问个字长的问题.字长指的是CPU一次可以处理的数据量,比如cpu一次可以处理8bit的数据,这是个什么概念呢,算一次1+1是处理多少bit的数据啊?
另外还想知道点算术逻辑单元和那个啥打孔算机的资料,提供点关键字,我去搜下,不过我看不懂e文.
看了好些帖子,斑竹好牛,偶像 ...
1个字节为最小寻址单元,其实这个观点不对。准确地说是:1个字节的最小读取数据单位。
地址单元已经确实的,32 CPU 就是32, 16 位就是16位地址。只是32位地址读取8位的数据
主要是CPU架构,总线系统配合决定的。
拿 x86 处理器举个例子, 物理上 x86 CPU 的引脚中,有 BE0 ~ BE3 这 4 个引脚去控制,32位地址中的相应的 byte,
控制 BUS 中的 data bus 读取相应的 byte。
完全与操作系统无关,操作系统只能无条件地去服从这个体系。虚拟地址、物理地址等等,这些都只是CPU体系提供的功能。
字长这个概念,可以理解为 CPU 的 ALU 一次可以处理的数据。通俗地说:GPR 可以装载的数据。64 位的CPU 它的 GPR是64位,如 RAX 可以装 64位。
[ 本帖最后由 mik 于 2008-4-29 13:40 编辑 ] |
|