Thursday, March 27, 2008

邊界不對齊資料和位元組排列方式

ARM 的 Load 和 Store 指令假設位址是正在下載或者儲存的資料類型長度的數倍, 如果下載和儲存的位址與資料類型邊界不對齊,可能會產生異常的結果,例如資料異常或者下載了一個旋轉位元的值。對於良好撰寫、可移植的程式碼,應該儘量避免使用邊界不對齊的存取。

C 編譯器通常情況下假設指標是邊界對齊的。

No comments: