本文共 422 字,大约阅读时间需要 1 分钟。
从开发者角度来说,数据总线长度应该和地址总线宽度一致,也就是一个指针和一个整数宽度相等,但是从硬件角度来讲,有些不切实际,比如说8位的CPU,如果地址总线和数据总线宽度一致,那么只能寻址256个地址单元(多少位cpu对应的是数据总线),这对于实际应用来说,太少了,从商业角度来讲太浪费了,所以一般8位cpu的地址总线都是16位的(专门增加了一些16位的地址指令),这也导致了一个结果,造成了一些8位cpu在结果上的一些不均匀性,所以一些8位的系统指令实际上是16位的操作,鉴于历史原因,cpu的位数总是低于实际所需的地址总线的宽度,所以Intel芯片采取的都是这种地址总线和数据总线不一致的架构,最初的16位CPU对应都是20位的地址总线,对应1M内存,所以呢Intel 设计人员要考虑着怎么匹配16位的数据总线和20位的地址总线,不能再像8位cpu那样设计,没有灵魂,其实也可以采用映射的方式(后续会细说),但是Intel采取的方式叫做分段。
转载地址:http://amkvb.baihongyu.com/