在計算機記憶體中,通常是以位元組(byte),也就是 8 個位(bit)為基本儲存單元(也有以 16 位為基本儲存單元的)。對於跨越多個位元組的資料型別(比如 int 長 4 個位元組),如何在記憶體中對這些位元組進行排序有兩種常見的方法:大端法(big-endian)和小端法(little-endian)。
【注】不管是大端法還是小端法儲存,計算機在記憶體中存放資料的順序都是從低位址到高位址,所不同的是首先取低位元組的資料存放在低位址還是取高位元組資料存放在低位址。
位元組序還是位序
大端法和小端法指的是位元組在記憶體中儲存時的排列規則,而不是資料中的位的排列規則。也有以位序排列的機器,但很少見。另外,再次明確一下,大端法或小端法是資料在儲存時的表現,而不是在暫存器中參與運算時的表現。
浮點數的位元組序
在所有機器上,浮點數在儲存時的位元組順序是和整數的位元組順序一樣的,所以在進行網路傳輸時,可以把浮點數當作整數進行位元組序轉換。但在歷史上,曾經有段時間因為 ieee 並沒有規定浮點數在網路上傳送的標準,所以浮點數都是以大端法進行儲存的。
例如0x0a0b0c0cd的在大端和小端中的存放方式分別為:
大端儲存和小端儲存 計算機儲存的大端法和小端法
01引言 在計算機記憶體中,通常是以位元組 byte 也就是 8 個位 bit 為基本儲存單元 也有以 16 位為基本儲存單元的 對於跨越多個位元組的資料型別 比如 int 長 4 個位元組 如何在記憶體中對這些位元組進行排序有兩種常見的方法 大端法 big endian 和小端法 little e...
大端法和小端法
在計算機記憶體中,通常是以位元組 byte 也就是 8 個位 bit 為基本儲存單元 也有以 16 位為基本儲存單元的 對於跨越多個位元組的資料型別 比如 int 長 4 個位元組 如何在記憶體中對這些位元組進行排序有兩種常見的方法 大端法 big endian 和小端法 little endian...
小端法 大端法
小端法little endian 諸如intel的機器就是採用這種規則 高位址存高位資料 大端法big endian 諸如ibm,motoral,sun採用此規則 低位址存高位資料 如需儲存oxeeaabbcc此數 如採用大端法儲存如下 address low high ee aa bb cc 如採...