基于X86平台的PC机通过网络发送一个int(32位)整数的字节顺序
1.字節(jié)順序
字節(jié)順序是指占內(nèi)存多于一個(gè)字節(jié)類型的數(shù)據(jù)在內(nèi)存中的存放順序,通常有小端、大端兩種字節(jié)順序。小端字節(jié)序指低字節(jié)數(shù)據(jù)存放在內(nèi)存低地址處,高字節(jié)數(shù)據(jù)存放在內(nèi)存高地址處;大端字節(jié)序是高字節(jié)數(shù)據(jù)存放在低地址處,低字節(jié)數(shù)據(jù)存放在高地址處。計(jì)算機(jī)中讀取數(shù)據(jù)的時(shí)候是從低地址到高地址,存儲(chǔ)數(shù)據(jù)時(shí)候相反!
2.主機(jī)字節(jié)序到網(wǎng)絡(luò)字節(jié)序
基于X86平臺(tái)的PC機(jī)是小端字節(jié)序的,而有的嵌入式平臺(tái)則是大端字節(jié)序的。因而對(duì)int、uint16、uint32等多于1字節(jié)類型的數(shù)據(jù),在這些嵌入式平臺(tái)上應(yīng)該變換其存儲(chǔ)順序。通常我們認(rèn)為,在空中傳輸?shù)淖止?jié)的順序即網(wǎng)絡(luò)字節(jié)序?yàn)闃?biāo)準(zhǔn)順序,考慮到與協(xié)議的一致以及與同類其它平臺(tái)產(chǎn)品的互通,在程序中發(fā)數(shù)據(jù)包時(shí),將主機(jī)字節(jié)序轉(zhuǎn)換為網(wǎng)絡(luò)字節(jié)序,收數(shù)據(jù)包處將網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)換為主機(jī)字節(jié)序。
3.網(wǎng)絡(luò)字節(jié)序
網(wǎng)絡(luò)字節(jié)順序是TCP/IP中規(guī)定好的一種數(shù)據(jù)表示格式,它與具體的CPU類型、操作系統(tǒng)等無(wú)關(guān),從而可以保證數(shù)據(jù)在不同主機(jī)之間傳輸時(shí)能夠被正確解釋。網(wǎng)絡(luò)字節(jié)順序采用big endian(大端方式)排序方式。
4.例圖:
轉(zhuǎn)載于:https://www.cnblogs.com/hujunzheng/p/4823059.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的基于X86平台的PC机通过网络发送一个int(32位)整数的字节顺序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 燕窝哪里最好 燕窝选购攻略?
- 下一篇: 熊猫生活在哪里?饮食习惯是什么?