2010-12-10 37 views
1

通過用於ARM Cortex-M3的CPU紙讀我發現這個線混亂:數據對齊和零位關係?

最低2個堆疊 指針總是0,比特,這意味着 它們總是字對齊

我在其他地方見過類似的陳述。什麼是一些零位背後的邏輯=>一些對齊?

回答

2

如果2 LS位總是零,那麼地址只能是4的倍數,即,地址只能是:

Hex  Binary 
xxxxxxx0 bbbbbbbbbbbbbbbbbbbbbbbbbbbb0000 
xxxxxxx4 bbbbbbbbbbbbbbbbbbbbbbbbbbbb0100 
xxxxxxx8 bbbbbbbbbbbbbbbbbbbbbbbbbbbb1000 
xxxxxxxc bbbbbbbbbbbbbbbbbbbbbbbbbbbb1100 

(如果有幫助,認爲在十進制等價的 - 的任何數量的端部在00中是10^2 = 100的倍數)。

+0

哦,當然。不知何故,我認爲指針本身在存儲時是對齊的,而不是指向對齊的數據。 – Oystein 2010-12-10 22:14:04