2015-11-03 86 views

回答

1

一個真實的例子:操縱

1

如果您使用整數值作爲標誌結構或包含位域,那就是一個原因。單獨調整MSB或LSB的原因可能是設置一個特殊標誌,您知道該位在其他情況下不會被使用,例如在某些ISA中,所有內存地址(用於加載/寫入)必須在字邊界(通常爲字長爲32位),這意味着指針的最後幾位是完全不重要的,可以被應用程序或系統使用,這同樣適用於高位 - 但僅限於某些情況。

其他原因包括對IEEE-754號碼進行快速算術運算:例如,切換比通過FPU更快的符號位。

1

維基百科:
MSB
符號的振幅表示

這表示也被稱爲「符號 - 量值」或「符號和數值」表示。在這種方法中,表示數字符號的問題可以是分配一個符號位來表示符號:將該位(通常是最高位)設置爲0爲正數或正零,並將其設置爲1是爲負數或負零。數字中的其餘位表示幅度(或絕對值)。因此,在一個只有7位的字節中(除了符號位),幅度可以從0000000(0)到1111111(127)。因此,一旦符號位(第八位)被添加,從-12710到+12710的數字可以表示。這種表示的結果是有兩種方法可以表示零,即00000000(0)和10000000(-0)。這樣一來,在-4310一個八位字節編碼爲10101011

LSB
最低顯著位具有快速變化,如果數字甚至略有改變的有用的屬性。例如,如果將1(二進制00000001)添加到3(二進制00000011),則結果將是4(二進制00000100),並且三個最低有效位將會更改(011到100)。相比之下,三個最高有效位(MSB)保持不變(000至000)。

在僞隨機數發生器,散列函數和校驗和中經常使用最低有效位。的