2
我與運營商提供算術移位<<
,>>
迷糊中的Java哪位實際移動<<運算符?
例如,我有這樣的二進制數:
0000 0101 // It is actually 5 in dec system
,現在我想2個職位,以這個數字左移。我這樣做(這只是換擋位的概念):
0000 0101 << 2
現在我不知道:如果我需要高位2個職位在右側OR我轉移和填充零需要將整數(101
)移位2個位置?
確定嗎?因爲我正在做一個程序,當我將任何有限整數傳遞給我的變量時,它計算Int類型(32位)中剩餘的位數; – Ernusc
如果你左移高位,它會消失(因爲它是最高的,它不能更高)。當最高位變成最低位時,你可能意味着桶轉移,但這不是計算機科學中的經典轉換操作(更多用於數字電子)。 –
所以如果我有一個數字101,我需要將它移動2個位置,所以我最後的'1'(它實際上是10 [1])向左移動2個位置,結果是:1000? – Ernusc