算術右移與邏輯右移


在學習javascript的語法時,看到算術右移與邏輯右移兩個名詞,對這兩個之間的區分突然有點模糊,以下是關於其的一點筆記。

按照匯編課本里講的來說,算數左移和邏輯左移沒有區別,均為向左移動,末尾補0。而邏輯右移是向右移動,首位補0,算數右移向右移動,首位補的是該二進制數的原來的第一位;比如一個有符號位的8位二進制數11001101,邏輯右移就不管符號位,如果移一位就變成01100110。算術右移要管符號位,右移一位變成10100110。 邏輯左移=算數左移,右邊統一添0 邏輯右移,左邊統一添0 算數右移,左邊添加的數和符號有關 e.g:1010101010,其中[]位是添加的數字 邏輯左移一位:010101010[0] 算數左移一位:010101010[0] 邏輯右移一位:[0]101010101 算數右移一位:[1]101010101

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM