判斷計算機是大端還是小端

2021-07-09 08:23:28 字數 770 閱讀 6772

計算機有little endian(小端)和big endian(大端)之分,兩張從 維基百科盜來的圖就可以說明它們的區別:

對於32位的整數,大端機器會在記憶體的低位址儲存高位,在高位址儲存低位。

小端機器恰好相反,記憶體的低位址儲存低位,在高位址儲存高位。

大端表示法和人的直觀比較相符,從低位址向高位址看過去,就是原先的數;小端表示法更便於計算機的操作,位址增加和個十百千萬的增加是一致的。

如何判斷自己的計算機是little endian還是big endian呢?intel的機器基本全是little endian,也可以執行簡單的**判斷。

python -c "import sys; print(sys.byteorder)"
終端執行上述**,我的本本上輸出little就表示是小端機器。

寫乙個簡單的c程式,下面這個是從nginx原始碼抄來的:

#include 

int main()

else

return

0;}

然後執行一發就可以了:

gcc test.c && ./a.out

如何判斷機器是大端還是小端

這是一篇沒多少新意的文章,對big endian和little endian熟悉的人沒必要看,免得浪費時間。1 概念 所謂大端小端,指的是對於多位元組的資料型別 比如,int 在記憶體中存放的位元組順序。小端是指低位址的位元組存放的是資料的低位,高位址位元組存放的是資料的高位。大端是指低位址位元組存...

判斷系統CPU是大端還是小端

所謂的大端小端就是cpu在儲存資料的時候是從高位址開始儲存還是低位址開始儲存。例如在sizeof int 2的系統中,1 2 8 1 512 513,我們把這個值賦值給int ntemp 1 2 8 我們假定系統分配給變數ntemp的位址空間為 0x0000ff08到0x0000ff09,那麼0x0...

如何判斷CPU是大端還是小端模式

如何判斷cpu是大端還是小端模式 2010 12 03 23 35 25 分類 c c 在arm體系中,每個字單元包含4個位元組單元或者兩個半字單元。在字單元中,4個位元組哪乙個是高位位元組,哪乙個是低位位元組則有兩種不同的格式 big endian和little endian格式。在小端模式中,低...