概念

  • 字定义:总线是一般设计用来传输固定大小的数据,这块数据被称为字(word)。一个字包含的字节数(即字的大小)是各种计算机系统里面的基本参数,而且这个参数在不同的操作系统里通常是不同的。

  • CPU按照其处理信息的字长可以分为:8位微处理器、16位微处理器、32位微处理器以及64位微处理器

  • CPU最大能查找多大范围的地址叫做寻址能力,CPU的寻址能力以字节为单位,如32位寻址的CPU可以寻址2的32次方大小的地址也就是4G,这也是为什么32位的CPU最大能搭配4G内存的原因,再多的话CPU就找不到了。

  • 字长(word size)

    • 字长也叫 字(word),CPU和内存之间的数据传送单位通常是一个字长。
    • 字长 的大小取决于计算的 数据总线 是多少位的,现代计算机的字长通常为16、32、64位(bit)。
      • 数据总线(data bus):用于传输数据的,是双向三态的总线。可以把CPU的数据传送到存储器或I/O接口等其它部件,也可以将其它部件的数据传送到CPU。
      • 地址总线(address bus):用于传输地址的,是单向三态的总线。地址只能从CPU传向外部存储器或I/O端口。地址总线的位数决定了CPU可直接寻址的内存空间大小。
      • 控制总线(control bus):用来传送控制信号和时序信号。

        控制信号中,有的是微处理器送往存储器和I/O接口电路的,如读/写信号,片选信号、中断响应信号等;也有是其它部件反馈给CPU的,比如:中断申请信号、复位信号、总线请求信号、限备就绪信号等。因此,控制总线的传送方向由具体控制信号而定,一般是双向的,控制总线的位数要根据系统的实际控制需要而定。实际上控制总线的具体情况主要取决于CPU。

注意

  • 字的大小取决去具体系统的总线宽度,如果是32位的系统,则一个字(word)是4个字节(byte),如果是64位,则是8个字节(byte)。

  • 无论操作系统的 位宽 是多少,1byte=8bite,半字为字的一半,双字(double word)为字(word)的2倍永远不变。

  • 一个ASCII字母占用 1 byte,一个汉字占用 2 byte

  • Intel公司中用术语 字(word) 表示16位数据类型,双字(double word) 表示32位数据类型,四字(quad word) 表示64位数据类型。Intel公司中无论是32位架构的机器还是64位架构的机器,它们都是从16位架构的基础上扩展的。

ARM架构中的字节、半字、字理解

  • 字节(byte):在ARM体系结构和8位/16位处理器体系结构中,字节的长度均为8位
  • 半字(Half-Word)
    • 在ARM体系结构中,半字的长度为16位,2个字节。与8位/16位处理器体系结构中字的长度一致
  • 字(word)
    • 在ARM体系结构中,字的长度为32位(bite),4个字节(byte)
    • 在8位/16位处理器体系结构中,字的长度一般为16位(bite),2个字节

参考

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐