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

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

LE little-endian 
最符合人的思維的字節(jié)序 
地址低位存儲值的低位 
地址高位存儲值的高位 
怎么講是最符合人的思維的字節(jié)序,是因為從人的第一觀感來說 
低位值小,就應(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é)的填充進去 

例子:在內(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ù)在不同主機之間傳輸時能夠被正確解釋。網(wǎng)絡(luò)字節(jié)順序采用big endian排序方式。

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

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

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

注:
1、網(wǎng)絡(luò)與主機字節(jié)轉(zhuǎn)換函數(shù):htons ntohs htonl ntohl (s 就是short l是long h是host n是network)
2、不同的CPU上運行不同的操作系統(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 

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

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

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

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

<2008年9月>
31123456
78910111213
14151617181920
21222324252627
2829301234
567891011

常用鏈接

留言簿(17)

隨筆分類(138)

隨筆檔案(137)

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

最新隨筆

搜索

  •  

積分與排名

  • 積分 - 502446
  • 排名 - 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>
            欧美大片免费| 亚洲精品综合在线| 久久成年人视频| 国模精品一区二区三区| 久久国产精品久久国产精品| 亚洲欧美在线高清| 国产一区二区在线观看免费| 久久国产欧美日韩精品| 午夜免费日韩视频| 136国产福利精品导航网址| 老司机午夜精品视频在线观看| 久久久福利视频| 99精品欧美一区二区三区| 亚洲一区亚洲| 怡红院av一区二区三区| 亚洲三级影院| 国产日韩av在线播放| 麻豆成人在线观看| 欧美日韩成人精品| 午夜视频久久久久久| 欧美在线免费视屏| 日韩视频永久免费| 午夜一级久久| 亚洲人成在线免费观看| 亚洲一区视频在线| 亚洲国产专区校园欧美| 一区二区三区 在线观看视| 国产视频一区在线观看| 91久久黄色| 国产亚洲精品美女| 99热在这里有精品免费| 狠狠88综合久久久久综合网| 最新国产成人在线观看| 国产一区二区中文字幕免费看| 欧美电影免费观看网站| 国产精品婷婷| 亚洲高清视频中文字幕| 国产在线精品自拍| 99国产麻豆精品| 亚洲国产高清视频| 午夜伦欧美伦电影理论片| 夜夜嗨av色一区二区不卡| 久久精品国产综合| 亚洲女同同性videoxma| 欧美多人爱爱视频网站| 久久精品视频在线| 国产精品久久久免费| 91久久精品国产| …久久精品99久久香蕉国产| 日韩视频免费观看高清在线视频| 国产一区深夜福利| 午夜精品国产更新| 午夜精品理论片| 欧美日韩精品免费观看视频完整| 美女成人午夜| 国产一区二区三区黄视频| 亚洲性图久久| 亚洲系列中文字幕| 欧美日韩二区三区| 亚洲日本无吗高清不卡| 亚洲电影网站| 久久综合九色综合欧美狠狠| 久久精品综合一区| 国产亚洲欧美另类一区二区三区| 亚洲一区二区三区精品在线观看 | 亚洲网站在线| 一本色道久久综合亚洲精品高清| 蜜臀av在线播放一区二区三区| 久久久欧美一区二区| 国产啪精品视频| 亚洲欧美日韩中文视频| 久久aⅴ国产欧美74aaa| 国产精品视频网站| 午夜精品亚洲| 久久9热精品视频| 国语自产在线不卡| 乱中年女人伦av一区二区| 免播放器亚洲| 亚洲精品欧美专区| 欧美日本在线一区| 亚洲国产精品久久久久秋霞影院| 亚洲欧洲中文日韩久久av乱码| 欧美1区视频| 亚洲精品中文字| 亚洲欧美在线一区二区| 国产精品尤物福利片在线观看| 午夜精品久久99蜜桃的功能介绍| 久久国产日韩| 亚洲日韩成人| 国产精品福利久久久| 午夜精品福利一区二区三区av| 久久久人人人| 亚洲另类黄色| 国产精品一二一区| 久久综合色综合88| 99视频超级精品| 久久精品视频免费播放| 亚洲国产视频a| 国产精品高清在线| 久久久久女教师免费一区| 亚洲国产美女久久久久| 亚洲欧美日韩精品久久| 好看的av在线不卡观看| 欧美精品一区二区三区很污很色的| 99在线热播精品免费99热| 久久久久久69| 一区二区成人精品| 国内自拍视频一区二区三区| 欧美电影在线观看| 性欧美xxxx视频在线观看| 亚洲国产高潮在线观看| 欧美一级视频一区二区| 亚洲国产午夜| 国产欧美精品一区| 欧美日韩另类丝袜其他| 久久久久国产一区二区三区四区| 日韩手机在线导航| 免费欧美在线视频| 欧美一区成人| 一区二区三区www| 亚洲福利一区| 国产亚洲制服色| 欧美三级日韩三级国产三级| 久久综合婷婷| 久久精品系列| 性色一区二区| 亚洲欧美卡通另类91av| 日韩小视频在线观看专区| 欧美大片免费观看在线观看网站推荐 | 99精品热视频| 欧美国产日韩一区二区在线观看| 欧美一区二区三区视频免费播放| 日韩一级大片| 亚洲国产高潮在线观看| 黄网站免费久久| 国产日韩欧美精品| 国产精品天美传媒入口| 欧美无乱码久久久免费午夜一区 | 91久久亚洲| 欧美大成色www永久网站婷| 久久精品国产99国产精品澳门| 亚洲一区免费看| 亚洲午夜性刺激影院| 一本色道久久综合亚洲精品小说 | 国产私拍一区| 国产欧美高清| 国产日本欧美视频| 国产日韩欧美视频| 国产午夜精品久久久| 国产一区二区久久| 国产综合第一页| 极品尤物久久久av免费看| 激情综合激情| 亚洲国产一区二区在线| 亚洲精品国产系列| 日韩一区二区精品葵司在线| 日韩午夜在线观看视频| 亚洲视频在线二区| 亚洲欧美清纯在线制服| 欧美在线日韩| 麻豆久久婷婷| 最新国产成人av网站网址麻豆| 亚洲精品国精品久久99热| 99精品免费视频| 先锋影音久久| 另类av一区二区| 欧美三级日本三级少妇99| 国产精品久久久久久影院8一贰佰| 国产精品一区二区久久| 黄色成人av网站| 99精品国产高清一区二区 | 国产精品私拍pans大尺度在线| 国产精品视频你懂的| 韩国三级电影久久久久久| 亚洲国产一区二区三区a毛片| 日韩亚洲欧美综合| 欧美在线亚洲在线| 欧美国产日韩xxxxx| 一本色道久久88综合日韩精品| 校园春色综合网| 欧美大片在线看| 国产免费观看久久| 亚洲人成免费| 欧美在线观看一区二区| 亚洲国产欧美不卡在线观看| 一区二区三区欧美激情| 久久久之久亚州精品露出| 欧美日韩亚洲综合一区| 精品不卡一区二区三区| 亚洲一区二区在线播放| 欧美成人一区二区三区在线观看| 一区二区免费看| 免费观看成人| 国产欧美一区二区精品秋霞影院| 亚洲日本欧美日韩高观看| 欧美在线免费播放| aa成人免费视频| 欧美ab在线视频| 一区免费观看视频| 欧美一级电影久久|