Chinaunix

标题: big endian and little endian [打印本页]

作者: greek_zjb    时间: 2007-04-02 10:33
标题: big endian and little endian
big endian(big end fist):最高字节(一个字中)存放在最低的地址中(the most significant byte has the lowest address)。大部分RISC体系结构的机器都属于这种表示方式。也叫做网络字节序。
little endian(little end first):和big endian真好相反,它是最低字节(字中)存放在最低的地址中(bytes at lower addresses have lower significance )。Intel processor属于这种表示方式。
个人理解:不管是big endian或者是little endian,内存的存取数据都是从内存中一个字的最低地址的字节开始操作,直到这个字的最高地址的字节为止(这是对于地址对齐的情况,地址不对齐时,则有变化,详见LDR、LDL、SDR、SDL等)。big endian和little endian指的是数据的传送方式,big endian(big end first):是先传送最高字节(一个字中,该字可能在内存中,对应load操作,可能在寄存器中,对应store操作)的数据直到最低地址的字节;little endian(little end first):是先传送最低字节的数据直到最高低地址字节。
说明:红色字所说的最高和最低字节是相对于字节序列说的,一般在以在寄存器中的字节序列为基准,在寄存器最左面的字节是最高字节。
凡是对这两个概念记不清楚的,可以试试我这种记法阿,简单明了。呵呵。


ps:如有错误,请更正。:)


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/34937/showart_269444.html




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2