大端和小端

2021-07-02 12:23:03 字數 710 閱讀 9574

1、小端與大端

對於乙個由2個位元組組成的16位整數,在記憶體中儲存這兩個位元組有兩種方法:一種是將低序位元組儲存在起始位址,這稱為小端(little-endian)位元組序;另一種方法是將高序位元組儲存在起始位址,這稱為大端(big-endian)位元組序。

2、下面是兩個具體例子:

記憶體位址 小端模式存放內容 大端模式存放內容

0x4000 0x34 0x12

0x4001 0x12 0x34

32bit寬的數0x12345678在little-endian模式以及big-endian模式)cpu記憶體中的存放方式(假設從位址0x4000開始存放)為:

記憶體位址 小端模式存放內容 大端模式存放內容

0x4000 0x78 0x12

0x4001 0x56 0x34

0x4002 0x34 0x56

0x4003 0x12 0x78

3、為什麼有大端小端

兩種格式都有系統在使用。測試主機使用的是哪種模式的簡單**如下:

#include

using namespace std;

int main()

un;

un.s=0x0102;

if (sizeof(short)==2)

{ if (un.c[0]==1 && un.c[1]==2)

{ cout<<」big endian」<

大端和小端

小端 little endian 儲存 在儲存器中按照最低有效位元組到最高有效位元組的順序儲存物件。大多數intel相容機採用這種規則。大端 big endian 規則 在儲存器中按照最高有效位元組到最低有效位元組的順序儲存物件。大多數ibm和sun microsystems的機器採用這種規則,只是...

小端和大端

或許你曾經仔細了解過什麼是大端小端,也動手編寫了測試手頭上的機器上是大端還是小端的程式,甚至還編寫了大端小端轉換程式 但過了一段時間之後,當你再看到大端和小端這兩個字眼,你的腦中很快浮起了自己曾經做過的工作,卻總是想不起究竟哪種是大端 哪種是小端,然後又去查以前寫的記錄?更讓人不快的是,這種經歷反反...

大端和小端

什麼是大端模式,什麼是小端模式?所謂的大端模式 big endian 是指資料的高位元組,儲存在記憶體的低位址中,而資料的低位元組,儲存在記憶體的高位址中,這樣的儲存模式有點兒類似於把資料當作字串順序處理 位址由小向大增加,而資料從高位往低位放 所謂小端模式 little endian 是指資料的高...