日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

big endian and little endian

發(fā)布時(shí)間:2025/6/15 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 big endian and little endian 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

? ? ? ? ?big endian(大端)和little endian(小端)表示機(jī)器對(duì)變量字節(jié)的存儲(chǔ)順序。big endian表示低地址存放最高有效字節(jié),little endian表示低地址存放最低有效字節(jié)。這里我們還要明白低字節(jié)和低地址的含義。

? ? ? ? ? ?一個(gè)16進(jìn)制數(shù)0x1234,12表示高字節(jié),34表示低字節(jié)。內(nèi)存中存儲(chǔ)是由低地址到高地址。如果是big endian,則存儲(chǔ)順序?yàn)?234;如果是little endian,則存儲(chǔ)順序?yàn)?412。網(wǎng)絡(luò)協(xié)議都是采用big endian的方式來(lái)傳輸?shù)?#xff0c;所以數(shù)據(jù)在發(fā)送之前都要進(jìn)行轉(zhuǎn)換。

下面給出一個(gè)算法判斷系統(tǒng)是big endian還是lilltle endian

代碼來(lái)源:后臺(tái)開(kāi)發(fā)核心技術(shù)與應(yīng)用實(shí)踐

?

#include<stdio.h>//共用體 union TEST {short a;char b[sizeof(short)]; };int main() {TEST test;test.a=0x0102;if(test.b[0]==0x01 && test.b[1]==0x02){printf("big endian\n");}else if(test.b[0]==0x02 && test.b[1]==0x01){printf("little endian\n");}else{printf("unkown\n");}return 0; }

打印:little endian

?

這里也學(xué)習(xí)了union的用法,union同一時(shí)間只能存儲(chǔ)一個(gè)成員的值,但是每個(gè)成員都可以訪問(wèn)這個(gè)值,但是相同的對(duì)于不同的數(shù)據(jù)類型顯示的結(jié)果不同。

?

?

?

?


?

總結(jié)

以上是生活随笔為你收集整理的big endian and little endian的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。