为什么计算机具有字节可寻址的内存,而不是4字节可寻址的内存(或64位的8字节可寻址内存)?是的,我看到它有时是多么有用,它看起来不那么优雅和过分.优势是实质性的,还是仅仅因为遗产?
处理器其实做存取存储器中的64位的数量(因为奔腾86做左右); 64位处理器通常具有128位总线.此外,在访问主内存时,您会有一些填充整个缓存行的突发,这些内存甚至更大.
它只是基于字节的寻址; 这增加了很少的开销,并且根本没有过多.
今天,您绝对需要基于字节的寻址用于网络协议.使用基于字的寻址实现TCP将是困难的:如果你收到17字节的内容,你想要read()返回什么?同样,更高层是基于字节的:如果您以四个字节为单位显示"GET/HTTP/1.0"之类的请求行,则HTTP将很难实现.你本质上必须将这些单词拆分成带有移位操作的字节(现在由于基于字节的寻址,处理器在硬件中执行).
| 归档时间: |
|
| 查看次数: |
4974 次 |
| 最近记录: |