溫馨提示×

Java三種移位運算符原理解析

小云
97
2023-08-17 14:39:19
欄目: 編程語言

Java中有三種移位運算符:左移運算符(<<),右移運算符(>>)和無符號右移運算符(>>>)。

  1. 左移運算符(<<):將一個數(shù)的所有位向左移動指定的位數(shù),低位補0。移動后,高位的位數(shù)被丟棄,低位補0。

例如,對于二進制數(shù)1101,左移2位后結(jié)果為110100。

  1. 右移運算符(>>):將一個數(shù)的所有位向右移動指定的位數(shù),高位補符號位。移動后,低位的位數(shù)被丟棄,高位補符號位(即正數(shù)補0,負(fù)數(shù)補1)。

例如,對于二進制數(shù)1110,右移2位后結(jié)果為1111。

  1. 無符號右移運算符(>>>):將一個數(shù)的所有位向右移動指定的位數(shù),高位補0。移動后,低位的位數(shù)被丟棄,高位補0。

例如,對于二進制數(shù)1011,無符號右移2位后結(jié)果為0010。

移位運算符的原理是通過對二進制數(shù)的位進行移動來實現(xiàn)。左移運算符通過將所有位向左移動指定的位數(shù),并且在低位補0來實現(xiàn)。右移運算符通過將所有位向右移動指定的位數(shù),并且在高位補符號位來實現(xiàn)(正數(shù)補0,負(fù)數(shù)補1)。無符號右移運算符通過將所有位向右移動指定的位數(shù),并且在高位補0來實現(xiàn)。

0