2020国产成人精品视频,性做久久久久久久久,亚洲国产成人久久综合一区,亚洲影院天堂中文av色

分享

字節(jié)序

 杰的個(gè)人圖書館 2012-04-05
1       字節(jié)序
由 于不同的計(jì)算機(jī)系統(tǒng)采用不同的字節(jié)序存儲數(shù)據(jù),同樣一個(gè)4字節(jié)的32位整數(shù),在內(nèi)存中存儲的方式就不同. 字節(jié)序分為小尾字節(jié)序(Little Endian)和大尾字節(jié)序(Big Endian), Intel處理器大多數(shù)使用小尾字節(jié)序, Motorola處理器大多數(shù)使用大尾(Big Endian)字節(jié)序;
小尾就是低位字節(jié)排放在內(nèi)存的低端,高位字節(jié)排放在內(nèi)存的高端。例如一個(gè)4字節(jié)的值為0x1234567的整數(shù)與高低字節(jié)對應(yīng)關(guān)系:
01
23
45
67
Byte3
Byte2
Byte1
Byte0
高位字節(jié)--à---------à--------------à低位字節(jié)
 
將在內(nèi)存中按照如下順序排放:
內(nèi)存地址序號
字節(jié)在內(nèi)存中的地址
16進(jìn)制值
0x03
Byte3
01
0x02
Byte2
23
0x01
Byte1
45
0x00
Byte0
67
 
 
大尾就是高位字節(jié)排放在內(nèi)存的低端,低位字節(jié)排放在內(nèi)存的高端。例如一個(gè)4字節(jié)的值為0x1234567的整數(shù)與高低字節(jié)對應(yīng)關(guān)系:
01
23
45
67
Byte3
Byte2
Byte1
Byte0
高位字節(jié)--à---------à--------------à低位字節(jié)
將在內(nèi)存中按照如下順序排放:
內(nèi)存地址序號
字節(jié)在內(nèi)存中的地址
16進(jìn)制值
0x03
Byte0
67
0x02
Byte1
45
0x01
Byte2
23
0x00
Byte3
01
 
2       網(wǎng)絡(luò)字節(jié)序
TCP/IP各層協(xié)議將字節(jié)序定義為大尾,因此TCP/IP協(xié)議中使用的字節(jié)序通常稱之為網(wǎng)絡(luò)字節(jié)序。
3       字串在內(nèi)存中的存儲(intel系列)
    字串和整數(shù)是相反的,是安字串的索引從低到高存儲到內(nèi)存中的;
     char s[4] = “abc”;  
a
b
c
/0
s[0]
s[1]
s[2]
s[3]
 
 
將在內(nèi)存中按照如下順序排放:
內(nèi)存地址序號
16進(jìn)制值
指針P的位置
0xbffeadf7
/0
p+3
0xbffeadf6
c
p+2
0xbffeadf5
b
p+1
0xbffeadf4
a
p
 
int main(void)
{
     char s[4] = "abc";
     char *p = s; 
     printf("%02x, %02x,    %02x,    %02x/n", &s[0], &s[1], &s[2], &s[3]);
     printf("%02x, %02x,    %02x,    %02x/n", p, p+1, p+2, p+3);
     printf("%c,   %c, %c, %c/n", s[0], s[1], s[2], s[3]);
        
     return 0;
}
輸出結(jié)果:
[netcool@HFINMSP2 demo]$ ./demo001
bffeadf4,       bffeadf5,       bffeadf6,       bffeadf7
bffeadf4,       bffeadf5,       bffeadf6,       bffeadf7
a,      b,      c,
4       整數(shù)數(shù)組在內(nèi)存中的存儲(intel系列)
同字串一樣,但是數(shù)組里的每一個(gè)整數(shù)的存儲是按照小尾字節(jié)序;
 
5       linux系統(tǒng)中的處理方法
網(wǎng)絡(luò)字節(jié)序作為一個(gè)標(biāo)準(zhǔn)字節(jié)序,如果系統(tǒng)并沒有提供相關(guān)的轉(zhuǎn)換函數(shù),我們可以通過以下4個(gè)宏實(shí)現(xiàn)本地字節(jié)序和網(wǎng)絡(luò)字節(jié)序的相互轉(zhuǎn)換:
htons():將16位無符號整數(shù)從本地字節(jié)序轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序
htonl():將32位無符號整數(shù)從本地字節(jié)序轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序
ntohs():將16位無符號整數(shù)從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)換成本地字節(jié)序
ntohl():將32位無符號整數(shù)從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)換成本地字節(jié)序

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多