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