java 左移 右移運算

2021-08-14 06:36:47 字數 521 閱讀 6094

<<      :     左移運算子,num << 1   相當於num乘以2

>>      :     右移運算子,num >> 1  相當於num除以2

比如num是40 (10進製)  對應的二進位制為: 101000 = 2的5次方x1+2的4次方x4+2的3次方x1+2的2次方x0+2的1次方x0+2的0次方x0 (二進位制轉換為十進位制方法原始方法)

<<     左移一位(左移一位是相對於二進位制來說的,如果是十進位制數轉為二進位制後左一位後在轉為十進位制數)

過後對應的二進位制:1010000 = 2的6次方x1+

2的5次方x4+2的4次方x1+2的3次方x0+2的2次方x0+2的1次方x0+2的0次方x0

= (2的5次方x1+2的4次方x4+2的3次方x1+2的2次方x0+2的1次方x0+2的0次方x0)x2=40x2

同樣,如果左移兩位就是2的平方,3位2的3次方···,這樣推算結果就是左移幾位就是原來的十進位制數乘以2的多少次方,比如40左移3位

結果就是40x2的3次方  =  320  

左移運算和右移運算

左移就是把所有位向左移動幾位 如 12 2 意思就是12向左移動兩位 12的二進位制是 0000 1100 通過這個圖我們可以看出來,所有的位全都向左移動兩位,然後把右邊空的兩個位用0補上,最左邊多出的兩個位去掉,最後得到的結果就是00110000 結果就是48 我們用同樣的辦法算 12 3 結果是...

左移右移等位運算

左移操作 規則 右邊空出的位用0填補 高位左移溢位則捨棄該高位。計算機中常用補碼表示資料 資料 127,補碼和原碼一樣 0111 1111。左移一位 1111 1110 這個補碼對應的原碼為 1000 0010 對應十進位制 2 左移二位 1111 1100 這個補碼對應的原碼為 1000 0100...

Java的左移和右移運算子

左移運算子,num 1 相當於num乘以2 右移運算子,num 1 相當於num除以2 比如num是40 10進製 對應的二進位制為 101000 2的5次方x1 2的4次方x4 2的3次方x1 2的2次方x0 2的1次方x0 2的0次方x0 二進位制轉換為十進位制方法原始方法 左移一位 左移一位是...