阅读:2483回复:4
如何翻译(10)
9054 datasheet里的一句话:
PCI Bus is a Little Endian bus (that is, the address is invariant and data is Lword-aligned to the lowermost byte lane).如何翻译. |
|
沙发#
发布于:2002-03-24 06:10
PCI Bus is a Little Endian bus (that is, the address is
invariant and data is Lword-aligned to the lowermost byte lane). 我认为Endian可以不翻译,直接引用原文,因此可以翻译做: “PCI总线是一种小Endian总线(也就是说,地址不变且数据是每双字节按照低位字节对齐的)” |
|
|
板凳#
发布于:2002-03-25 09:23
这句话这样理解起来应该会好一点。
首先,PCI总线是一种Little Endian类型的总线。 其次,对于Little Endian,怎么理解? 基于你所使用的计算机硬件系统,你应当考虑“多字节存储时,字节的存储序列”的问题。在这种情况下,我们有提到了两个规则:Little Endian、Big Endian。 Little Endian的意思是低字节存储在地址的低字节。例如: 一个双字为:Byte3 Byte2 Byte1 Byte0(从高到低) 那么,他们按照Little Endian规则,应当这样被分配到存储空间: Base Address+0 Byte0 Base Address+1 Byte1 Base Address+2 Byte2 Base Address+3 Byte3 那么,Big Endian规则则相反。 [编辑 - 3/25/02 作者: lz_mao] |
|
|
地板#
发布于:2002-04-02 21:12
说的俺都糊涂了。
对于16进制数0x12345678 如果是32位对齐的那么 大头在后就是的存储方式就是 addr[0]:0x78 addr[1]:0x56 addr[2]:0x34 addr[3]:0x12 小头在后就是 addr[0]:0x12 addr[1]:0x34 addr[2]:0x56 addr[3]:0x78 16位对齐的就是 大头在后就是的存储方式就是 addr[0]:0x34 addr[1]:0x12 addr[2]:0x78 addr[3]:0x56 小头在后就是 addr[0]:0x12 addr[1]:0x34 addr[2]:0x56 addr[3]:0x78 |
|
地下室#
发布于:2002-05-09 18:02
说的俺都糊涂了。 哈哈!guardee你糊涂啦! 32位对齐的时候,little endian应该是反过来才对。 比如: UINT x = 0x12345678; BYTE *p = (BYTE *)&x; 那么: p[0] : 0x78; p[1] : 0x56; p[2] : 0x34; p[3] : 0x12。 |
|