java 的 移位運算, 實現 乘法與除法

在實際 開發中,其實不多 使用 移位運算。html

特別是 還用 移位運算 實現 高性能的 乘法與除法。性能

雖然知道,可是仍是有點蒙,或者說 不知道應該怎麼用ui

除法 >>.net

int a = 10;
		int c = a >> 1;
		System.out.println("c:" + c);
		// 向低位移動一位,至關於 除以 2的 1次方
		System.out.println(a >>= 1); //寫法 和  a>>1 是同樣的
        
       結果都是 5

看移位的值了 ,好比   a >>2 也就是 將 a 除2 再 除2 , 也就是 a 除以4 的商。 也就是 2的 2次方。code

 

同理 乘法也是差很少htm

乘法 <<blog

 a<<=1;// 向高位移動一位,至關於乘以 2 的1次方 開發

 

使用get

好比說  求 a/2 的 商高性能

或者說是  乘數或者除數 是固定值

 

參考

https://www.cnblogs.com/chuijingjing/p/9405598.html

https://blog.csdn.net/fu_zhongyuan/article/details/88666262

https://blog.csdn.net/wanqian11k/article/details/79090478

相關文章
相關標籤/搜索