C语言中的位移有什么用

来源:百度知道 编辑:UC知道 时间:2024/05/16 03:37:12
学C语言时常常看到按位运算什么的.看不懂也不想看.烦~~~~~~~~~
望大哥大姐们帮我解解烦.如果不学这个会`~~~~~~~~~~
我是学计算机的.也在学编程.

一般情况下很少用到的,使用位移可以干很多事,而且效率很高,比如一个数乘2的n次方,或者除2的n次方,只要位移n位就可以了

位运算符C语言提供了六种位运算符:

& 按位与
| 按位或
^ 按位异或
~ 取反
<< 左移
>> 右移
给你一个例子:
左移运算 左移运算符“<<”是双目运算符。其功能把“<< ”左边的运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数, 高位丢弃,低位补0。 其值相当于乘2。例如: a<<4 指把a的各二进位向左移动4位。如a=00000011(十进制3),左移4位后为00110000(十进制48)。

右移运算 右移运算符“>>”是双目运算符。其功能是把“>> ”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。其值相当于除2。

和数据结构和汇编有点联系,用得不是很多,我感觉很好理解啊。
和地址操作有点联系,还有数据的表示。