关于MSB/LSB Big-Endian/Small-Endian的区别
2010-04-17 10:00
477 查看
很多人写了很多代码,定义了很多文档,但可能却还不知道MSB/LSB Big-Endian/Small-Endian的区别
。说来惭愧,本人也在此问题上犯了错误,故贴以明示
MSB:Most Significant Bit
LSB:Lest Significant Bit
通常,一个芯片的管脚中,对于一个多比特的信号,比如32根的地址线,从低开始按0到31编个号。MSB就是31,LSB就
是0。
如果标记为 ADDR[31:0]就是 MSB first的方式
如果标记为 ADDR[0:31]就是 LSB first的方式
即32根的地址线,从低开始按0到31编个号。MSB就是31,LSB就是0
如果非要对逻辑的字节意思做一个MSB,LSB的定义:
那么对于Byte来讲:依次为高比特位-->低比特位,对应于MSB-->LSB
例如:
01011001 MSB-->LSB
在定义传输时,需要指明是MSB先传输还是LSB先传输,如果是MSB先传输,则先传输0,依次为1,0,.......
Big-Endian
Small-Endian
指的都是对于多字节的数据类型(比如4字节的32位整数),其多个字节的顺序问题是最高
字节在前(Big-Endian)还是最低字节在前(Small-Endian)。
比如:
对于123456789这个整数,其16进制为0x075BCD15
Big-Endian的方式,4个字节依次是:07 4B CD 15,
Small-Endian的顺序正相反,是:15 CD 4B 07
网络传输多字节时以Big-Endian的方式传输
系统
一般
均会提供htons()或ntohs()函数还进行主机顺序和网络顺序的转换。
。说来惭愧,本人也在此问题上犯了错误,故贴以明示
MSB:Most Significant Bit
LSB:Lest Significant Bit
通常,一个芯片的管脚中,对于一个多比特的信号,比如32根的地址线,从低开始按0到31编个号。MSB就是31,LSB就
是0。
如果标记为 ADDR[31:0]就是 MSB first的方式
如果标记为 ADDR[0:31]就是 LSB first的方式
即32根的地址线,从低开始按0到31编个号。MSB就是31,LSB就是0
如果非要对逻辑的字节意思做一个MSB,LSB的定义:
那么对于Byte来讲:依次为高比特位-->低比特位,对应于MSB-->LSB
例如:
01011001 MSB-->LSB
在定义传输时,需要指明是MSB先传输还是LSB先传输,如果是MSB先传输,则先传输0,依次为1,0,.......
Big-Endian
Small-Endian
指的都是对于多字节的数据类型(比如4字节的32位整数),其多个字节的顺序问题是最高
字节在前(Big-Endian)还是最低字节在前(Small-Endian)。
比如:
对于123456789这个整数,其16进制为0x075BCD15
Big-Endian的方式,4个字节依次是:07 4B CD 15,
Small-Endian的顺序正相反,是:15 CD 4B 07
网络传输多字节时以Big-Endian的方式传输
系统
一般
均会提供htons()或ntohs()函数还进行主机顺序和网络顺序的转换。
相关文章推荐
- 关于计算机中Endian(big-edian和little-endian)存储机制的由来、特点和区别
- 关于计算机中Endian(big-edian和little-endian)存储机制的由来、特点和区别
- MSB与LSB Big Endian Little Endian
- MSB与LSB Big Endian Little Endian
- 关于计算机中Endian(big-edian和little-endian)存储机制的由来、特点和区别
- 关于big-enidan和small-endian
- 关于计算机中Endian(Big-Endian和Little_Endian)存储机制的由来、特点和区别
- unicode,ansi,utf-8,unicode big endian这些编码有什么区别
- unicode,ansi,utf-8,unicode big endian编码的区别
- Big-Endian 和 Little-Endian 两者概念的区别
- unicode ansi utf-8 unicode_big_endian编码的区别
- 关于字节在内在存放的顺序(Big Endian and Little Endian)
- little-endian和big-endian的区别
- unicode,ansi,utf-8,unicode big endian编码的区别
- unicode,ansi,utf-8,unicode big endian这些编码有什么区别
- ansi,gb2312,gbk,gb18030,unicode,utf-8,unicode big endian编码的区别
- 【续】关于对MSB/LSB写0时的步骤
- unicode,ansi,utf-8,unicode big endian编码的区别
- 关于Big-Endian 和Little-Endian