<aside> ✏️

端序 - Endianness

Big-endian-and-Little-endian.png

  1. Endian 一詞源自《格列佛遊記》中,小人國因為水煮蛋要從大頭還是小頭那測剝開而爭論,並分成了 Big Endians 和 Little Endians 兩派人,後來位元的擺放順序當年也陷入兩派人的爭論
  2. Endianness 分為 Big 和 Little
    1. Big Endian 把最高位元 (MSB) 放在記憶體最低的位子,易讀但對計算機不友善
    2. Little Endian 把最低位元 (LSB) 放在記憶體最低的位子,不易讀但對計算機友善
  3. 一般網路傳輸如 IP協定等,常使用 Big Endian;處理器如 x86、RISC-V 等,常使用 Little Endian
  4. Little Endian 為什麼友善,可以從非同步的加法器觀察。非同步的加法器需要從 LSB 開始計算總和,Little Endian 可以讓 LSB 先進入加法器,Big Endian 則會因為等待 LSB 而被 block 住 </aside>

<aside> ✏️

LE 的位元順序 - Bit Ordering of LE

  1. LE 的傳輸順序都是先傳最低有效位元 (LSB),再傳最高有效位元 (MSB)
  2. 很好記,Low Energy (LE) 用 Little Endian (LE)
  3. 整個 LE spec 都使用 Little Endian 有一些好處:

<aside> ✏️

八位元的順序 - Octet Ordering

  1. 在通訊領域中,我們通常會將 8 bits 作為一個 octet (因為過去有一些處理器的 1 byte 不是 8 bits)
  2. 在大多數情況:
  3. 有兩個例外:

</aside>