2018-1-20:左移和右移运算以及和(无符号右移)的区别以及位运算的小题目...
生活随笔
收集整理的這篇文章主要介紹了
2018-1-20:左移和右移运算以及和(无符号右移)的区别以及位运算的小题目...
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
首先:左移和右移以及無符號右移都是應用于2的次冪運算
?
左移幾位就相當于該數據乘以2的幾次方:即完成2的次冪運算
右移幾位就相當于該數據除以2的幾次方:即完成2的次冪運算,右移有個小特點:右移之后空出的最高位要用原來的最高位來補,以此來保證數的正負不變號
無符號右移:即無論原始數為正負,右移之后的空位均使用0來補
題目一:最有效率的計算2*8
即 2<<3
題目二:不借助第三方變量實現兩個數的交換
方法一:
a = a + b
b = a - b;
a = a - b;
這確實是一種方法,但是不推薦使用,因為如果兩個數的值過大,相加后可能超出int范圍
方法二:
a = a ^ b
b = a ^ b
a = a ^ b
轉載于:https://www.cnblogs.com/tfboy/p/8321401.html
總結
以上是生活随笔為你收集整理的2018-1-20:左移和右移运算以及和(无符号右移)的区别以及位运算的小题目...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: node.js实现formdata上传文
- 下一篇: 裸函数及调用约定