C语言中位移运算的规则

来源:互联网 发布:网络主播思瑞直播全集 编辑:程序博客网 时间:2024/05/15 06:39

位移运算包括左移和右移,可以实现二进制数值的左右移(乘/除)运算,左移运算符“<<”和右移运算符“>>”是双目运算符,优先级高于关系运算符,低于算术运算符,结合性自左到右。

左移运算规则:

左移过程中,左面溢出的数字舍弃,右面全部补0。

右移运算规则:

右移过程中,右侧数据舍弃,如果是无符号数据,左侧补0。如果是带符号数据,原本是正数(左侧为零的时候)补0,如果是负数(左侧原本为1)要取决于所使用的系统,补0称为逻辑右移,补1称为算数右移。

符合位运算以及补位规则:

对于<<=和>>=这两种位移运算,左移同上,右移的时候如果为无符号左端补0,如果为带符号的话,原本是正数,则左端补0,否则补1。


0 0
原创粉丝点击