其實很簡單。。。
C#位移運算符:
左移:<<
右移:>>
位移理解可能簡單一些:其實就是數據轉換成二進制的左右移動;右移左補0,左移右補0,后面多出來的部分去掉。
用乘除法去理解位移也可以:
左位移:相當于乘
左移1位相當于乘2,左移2位相當于乘4,左移3位相當于乘8,左移4位相當于乘16...類推
右位移:相當于除
右移1位相當于除2,右移2位相當于除4,右移3位相當于除8,右移4位相當于除16...類推
下面用一個曾經回答一個網友的提問來理解一下位移的運算
題目:把89右位移一位:
//flag結果:1011001
//你要右位移,左邊補個0,后面多出來一位去掉
int j = Convert.ToInt32("0101100", 2); //再把2進制轉化了10進制數。。
//結果:44
//位移就是這么簡單
這樣理解位移運算就很容易...
新聞熱點
疑難解答