青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

aurain
技術(shù)文摘
posts - 137,  comments - 268,  trackbacks - 0
不同的CPU有不同的字節(jié)序類型 這些字節(jié)序是指整數(shù)在內(nèi)存中保存的順序 這個叫做主機(jī)序 
最常見的有兩種
1. Little endian:將低序字節(jié)存儲在起始地址
2. Big endian:將高序字節(jié)存儲在起始地址

LE little-endian 
最符合人的思維的字節(jié)序 
地址低位存儲值的低位 
地址高位存儲值的高位 
怎么講是最符合人的思維的字節(jié)序,是因?yàn)閺娜说牡谝挥^感來說 
低位值小,就應(yīng)該放在內(nèi)存地址小的地方,也即內(nèi)存地址低位 
反之,高位值就應(yīng)該放在內(nèi)存地址大的地方,也即內(nèi)存地址高位 

BE big-endian 
最直觀的字節(jié)序 
地址低位存儲值的高位 
地址高位存儲值的低位 
為什么說直觀,不要考慮對應(yīng)關(guān)系 
只需要把內(nèi)存地址從左到右按照由低到高的順序?qū)懗?nbsp;
把值按照通常的高位到低位的順序?qū)懗?nbsp;
兩者對照,一個字節(jié)一個字節(jié)的填充進(jìn)去 

例子:在內(nèi)存中雙字0x01020304(DWORD)的存儲方式 

內(nèi)存地址 
4000 4001 4002 4003 
LE 04 03 02 01 
BE 01 02 03 04 

例子:如果我們將0x1234abcd寫入到以0x0000開始的內(nèi)存中,則結(jié)果為
      big-endian  little-endian
0x0000  0x12      0xcd
0x0001  0x23      0xab
0x0002  0xab      0x34
0x0003  0xcd      0x12
x86系列CPU都是little-endian的字節(jié)序. 

網(wǎng)絡(luò)字節(jié)順序是TCP/IP中規(guī)定好的一種數(shù)據(jù)表示格式,它與具體的CPU類型、操作系統(tǒng)等無關(guān),從而可以保證數(shù)據(jù)在不同主機(jī)之間傳輸時能夠被正確解釋。網(wǎng)絡(luò)字節(jié)順序采用big endian排序方式。

為了進(jìn)行轉(zhuǎn)換 bsd socket提供了轉(zhuǎn)換的函數(shù) 有下面四個
htons 把unsigned short類型從主機(jī)序轉(zhuǎn)換到網(wǎng)絡(luò)序
htonl 把unsigned long類型從主機(jī)序轉(zhuǎn)換到網(wǎng)絡(luò)序
ntohs 把unsigned short類型從網(wǎng)絡(luò)序轉(zhuǎn)換到主機(jī)序
ntohl 把unsigned long類型從網(wǎng)絡(luò)序轉(zhuǎn)換到主機(jī)序

在使用little endian的系統(tǒng)中 這些函數(shù)會把字節(jié)序進(jìn)行轉(zhuǎn)換 
在使用big endian類型的系統(tǒng)中 這些函數(shù)會定義成空宏

同樣 在網(wǎng)絡(luò)程序開發(fā)時 或是跨平臺開發(fā)時 也應(yīng)該注意保證只用一種字節(jié)序 不然兩方的解釋不一樣就會產(chǎn)生bug.

注:
1、網(wǎng)絡(luò)與主機(jī)字節(jié)轉(zhuǎn)換函數(shù):htons ntohs htonl ntohl (s 就是short l是long h是host n是network)
2、不同的CPU上運(yùn)行不同的操作系統(tǒng),字節(jié)序也是不同的,參見下表。
處理器    操作系統(tǒng)    字節(jié)排序
Alpha    全部    Little endian
HP-PA    NT    Little endian
HP-PA    UNIX    Big endian
Intelx86    全部    Little endian <-----x86系統(tǒng)是小端字節(jié)序系統(tǒng)
Motorola680x()    全部    Big endian
MIPS    NT    Little endian
MIPS    UNIX    Big endian
PowerPC    NT    Little endian
PowerPC    非NT    Big endian  <-----PPC系統(tǒng)是大端字節(jié)序系統(tǒng)
RS/6000    UNIX    Big endian
SPARC    UNIX    Big endian
IXP1200 ARM核心    全部    Little endian 

下面是一個檢驗(yàn)本機(jī)字節(jié)序的簡便方法:

//判斷本機(jī)的字節(jié)序
//返回true表為小段序。返回false表示為大段序
bool am_little_endian ()
{
 unsigned short i=1;
 return (int)*((char *)(&i)) ? true : false;
}
int main()
{
  if(am_little_endian())
 {
           printf("本機(jī)字節(jié)序?yàn)樾《涡?\n");
 }
 else
 {
          printf("本機(jī)字節(jié)序?yàn)榇蠖涡?\n");
 }
        return 0;
}

posted on 2008-02-18 11:17 閱讀(3415) 評論(1)  編輯 收藏 引用 所屬分類: socket編程

FeedBack:
# re: 網(wǎng)絡(luò)字節(jié)序與主機(jī)字節(jié)序[未登錄]
2009-04-20 09:44 | 1
很好!!!表述很清晰!  回復(fù)  更多評論
  

<2008年8月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
31123456

常用鏈接

留言簿(17)

隨筆分類(138)

隨筆檔案(137)

網(wǎng)絡(luò)開發(fā)

最新隨筆

搜索

  •  

積分與排名

  • 積分 - 502189
  • 排名 - 37

最新隨筆

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久九九国产精品| 欧美福利网址| 嫩模写真一区二区三区三州| 亚洲影视在线| 国产精品永久免费| 欧美一区高清| 久久视频在线看| 最新成人在线| 日韩视频一区二区在线观看| 国产精品激情| 久久精品成人一区二区三区蜜臀 | 两个人的视频www国产精品| 亚洲天堂成人在线观看| 国产精品一二一区| 久久高清福利视频| 久久综合久久综合这里只有精品| 午夜精品网站| 好吊一区二区三区| 欧美高清视频免费观看| 欧美精品一区二区三| 国产伦精品一区二区三区高清版| 国产一区二区三区黄视频| 欧美呦呦网站| 久久综合伊人77777蜜臀| 日韩一级成人av| 亚洲自拍三区| 91久久精品一区| 亚洲一区二区黄色| 亚洲国产精品一区制服丝袜| 最近看过的日韩成人| 国产麻豆9l精品三级站| 欧美 日韩 国产精品免费观看| 亚洲一区二区三区777| 精品999成人| 99视频超级精品| 在线播放视频一区| 这里只有精品丝袜| 亚洲国产黄色片| 亚洲欧美伊人| 中文欧美在线视频| 麻豆国产精品va在线观看不卡| 国产精品视频精品| 免费精品视频| 国产精品日本欧美一区二区三区| 亚洲视频欧美视频| 久久手机免费观看| 午夜精品久久久久久久99水蜜桃 | 亚洲精品一区二区三区四区高清 | 欧美在线观看视频| 久久婷婷丁香| 久久国产黑丝| 国产精品理论片| 亚洲欧洲日韩综合二区| 在线免费高清一区二区三区| 亚洲嫩草精品久久| 亚洲天堂成人| 欧美大胆a视频| 欧美1级日本1级| 国内精品久久久久影院薰衣草| 久久久夜精品| 国产精品久久久久久一区二区三区| 亚洲午夜精品17c| 欧美成人精品在线| 麻豆国产精品一区二区三区| 国产视频一区二区在线观看| 中文日韩电影网站| 亚洲系列中文字幕| 欧美日韩国产小视频| 亚洲国产精品久久久久久女王| 欧美成人首页| 国产午夜亚洲精品理论片色戒| 免费高清在线一区| 韩国av一区二区| 欧美一区久久| 老司机一区二区三区| **欧美日韩vr在线| 久久久久久精| 欧美激情亚洲视频| 亚洲精选91| 欧美中在线观看| 久久一区中文字幕| 一色屋精品视频在线看| 欧美 日韩 国产精品免费观看| 亚洲午夜性刺激影院| 国产精品久久久999| 99亚洲精品| 欧美在线啊v一区| 红桃视频一区| 欧美国产精品中文字幕| 99视频一区二区三区| 久久精品免费| 最新国产精品拍自在线播放| 欧美日韩影院| 欧美一区二区三区在线观看视频| 亚洲人成亚洲人成在线观看| 欧美高清在线视频| av成人黄色| 久久久亚洲一区| 夜夜嗨av一区二区三区网站四季av| 欧美专区日韩专区| 欧美91福利在线观看| 一区二区三区**美女毛片| 久久久久久电影| 亚洲免费观看高清完整版在线观看熊 | 久久久青草婷婷精品综合日韩| 欧美精品一区二区三区一线天视频 | 国产综合婷婷| 欧美黄色视屏| 性欧美18~19sex高清播放| 欧美成人一区二区三区| 亚洲欧美国产一区二区三区| 国产综合色在线| 欧美激情综合在线| 久久国产精品毛片| 一区二区三区视频在线播放| 欧美大片免费久久精品三p | 浪潮色综合久久天堂| 99伊人成综合| 免费看的黄色欧美网站| 香蕉久久久久久久av网站| 亚洲精品一级| 在线成人性视频| 国产伦精品一区二区三区四区免费 | 亚洲精品日韩在线| 久久免费精品视频| 亚洲一区区二区| 日韩午夜激情电影| 狠狠色综合网站久久久久久久| 篠田优中文在线播放第一区| 日韩一区二区久久| 欧美激情在线狂野欧美精品| 亚洲欧美日韩国产中文| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 亚洲午夜电影网| 亚洲国产精品福利| 狠狠色狠狠色综合系列| 国产女主播一区| 国产精品二区二区三区| 欧美日韩在线精品| 欧美精品一区二区视频| 欧美国产免费| 欧美91视频| 美女主播视频一区| 久久在线91| 欧美14一18处毛片| 美女国内精品自产拍在线播放| 亚洲国产精品激情在线观看| 男同欧美伦乱| 免费影视亚洲| 欧美激情一区二区三区高清视频| 99re66热这里只有精品4| 日韩视频免费在线观看| 亚洲日本理论电影| 99精品欧美一区二区三区| 亚洲麻豆国产自偷在线| 夜久久久久久| 亚洲亚洲精品三区日韩精品在线视频| 国产精品分类| 欧美吻胸吃奶大尺度电影| 国产精品久久波多野结衣| 国产精品色在线| 国产视频丨精品|在线观看| 韩国亚洲精品| 亚洲激情午夜| aa亚洲婷婷| 先锋影音久久| 免费日韩精品中文字幕视频在线| 在线一区亚洲| 亚洲欧美日韩电影| 久久久久九九视频| 免费久久精品视频| 91久久视频| 亚洲欧美一区二区三区久久 | 欧美综合二区| 久久久噜噜噜久久中文字免| 美国成人直播| 欧美电影免费| 国产精品99久久久久久白浆小说| 亚洲大胆女人| 亚洲欧美日韩久久精品| 欧美一级视频| 免费久久精品视频| 日韩亚洲视频在线| 欧美中文在线观看| 欧美区二区三区| 国产婷婷色一区二区三区四区| 欧美日在线观看| 国产一区二区成人| 亚洲精品一区二区三区婷婷月 | 国产精品久久久久久久久久尿 | 久久女同互慰一区二区三区| 欧美成人一区二区三区| 国产精品婷婷| 亚洲精品国产精品久久清纯直播| 国产小视频国产精品| 在线成人激情视频| 亚洲欧美日韩在线一区| 亚洲第一精品福利| 性做久久久久久久久| 欧美日韩成人一区二区|