小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

網(wǎng)絡(luò)傳輸大端序_大端、小端與網(wǎng)絡(luò)字節(jié)序

 cslwp 2022-04-21

大端(Big-Endian),小端(Little-Endian)以及網(wǎng)絡(luò)字節(jié)序的概念在編程中經(jīng)常會(huì)遇到,網(wǎng)絡(luò)字節(jié)序(Network Byte Order)一般是指大端(Big-Endian,對(duì)大部分網(wǎng)絡(luò)傳輸協(xié)議而言)傳輸,大端小端的概念是面向多字節(jié)數(shù)據(jù)類型的存儲(chǔ)方式定義的,小端就是低位在前(低位字節(jié)存在內(nèi)存低地址,字節(jié)高低順序和內(nèi)存高低地址順序相同),大端就是高位在前,(其中“前”是指靠近內(nèi)存低地址,存儲(chǔ)在硬盤上就是先寫那個(gè)字節(jié))。概念上字節(jié)序也叫主機(jī)序。

一、大小端概念

1、首先大小端是面向多字節(jié)類型定義的,比如2字節(jié)、4字節(jié)、8字節(jié)整型、長(zhǎng)整型、浮點(diǎn)型等,單字節(jié)的字符串一般不用考慮。

2、大端小端存儲(chǔ)、傳輸、以及接收處理需要對(duì)應(yīng)。

3、大端(Big-Endian)就是高字節(jié)(MSB)在前,內(nèi)存存儲(chǔ)體現(xiàn)上,數(shù)據(jù)的高位更加靠近低地址。(低地址存高字節(jié))

4、小端(Little-Endian)就是低字節(jié)(LSB)在前,內(nèi)存存儲(chǔ)體現(xiàn)上,數(shù)據(jù)的低位更加靠近低地址。(低地址存低字節(jié))

5、網(wǎng)絡(luò)字節(jié)序一般是指大端傳輸。

二、大小端存儲(chǔ)示例

假設(shè)一個(gè)32位 unsigned int型數(shù)據(jù)0x12 34 56 78,大小端8位存儲(chǔ)方式如下:

大端存儲(chǔ)方式為0x12 34 56 78

小端存儲(chǔ)方式為0x78 56 34 12,如下圖。

201205100033472415.jpg

三、常見(jiàn)CPU的大小端存儲(chǔ)方式

不同CPU有不同的字節(jié)序類型,典型的使用小端存儲(chǔ)的CPU有:Intel x86和ARM

典型的使用大端存儲(chǔ)CPU有:Power PC、MIPS UNIX和HP-PA UNIX

注:

以上CPU需根據(jù)具體型號(hào)查詢手冊(cè),有的CPU甚至可能同時(shí)能支持兩種存儲(chǔ)方式。

上文說(shuō)的網(wǎng)絡(luò)字節(jié)順序則是表示網(wǎng)絡(luò)傳輸時(shí)的字節(jié)序,按照TCP/IP協(xié)議是按照大端傳輸方式,也就是高字節(jié)先走(先傳12,接著34,56,78),這跟本機(jī)存儲(chǔ)和服務(wù)器存儲(chǔ)沒(méi)有關(guān)系,只要確保雙方解析對(duì)應(yīng)即可。

四、四個(gè)轉(zhuǎn)換函數(shù)

C/C++中有如下四個(gè)常用的轉(zhuǎn)換函數(shù),這四個(gè)函數(shù)在小端系統(tǒng)中生效,大端系統(tǒng)由于和網(wǎng)絡(luò)字節(jié)序相同,所以無(wú)需轉(zhuǎn)換。

htons —— 把unsigned short類型從主機(jī)序轉(zhuǎn)成網(wǎng)絡(luò)字節(jié)序

ntohs —— 把unsigned short類型從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)成主機(jī)序

htonl —— 把unsigned long類型從主機(jī)序轉(zhuǎn)成網(wǎng)絡(luò)字節(jié)序

ntohl —— 把unsigned long類型從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)成主機(jī)序

以上函數(shù)包含頭文件:

#if defined(_LINUX) || defined(_DARWIN)

#include

#endif

#ifdef WIN32

#include

#endif

相關(guān)資源:...大端法小端法,網(wǎng)絡(luò)字節(jié)序是大端還是小端-其它代碼類資源-CSDN...

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

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多