4二、个人C#学习笔记8

位运算符除按位与、按位或运算符外,其它只能用于处理整数的操做。位运算是彻底针对位方面的操做。算法

一、“按位与”运算ide

“按位与”运算的运算符为“&”,“按位与”运算的运算法则是:若是两个整型数据ab对应为都是1,则结果位才是1,不然为0。若是两个操做数的精度不一样,则结果的精度与精度高的操做数相同。ui

二、“按位或”运算spa

“按位或”运算的运算符是“|”,“按位或”运算的运算法则是:若是两个操做数对应为都是0则结果是0,不然为1。若是两个操做数的精度不一样,则结果的精度与精度高的操做数相同。内存

三、“按位取反”运算it

“按位取反”运算也称按位“非”运算,运算符为“~”,为单目运算符。“按位取反”运算就是将操做数二进制中的1修改成00修改成1编译

四、“按位异或”运算符class

“按位异或”运算符是“^”,“按位异或”运算的运算法则是:当两个操做数的二进制表示相同(同为0或同为1),结果为0,不然为1。若两个操做数精度不一样,则结果数的精度与精度高的操做数相同。语法

五、能够对数据按二进制位进行移位操做。C#中的移位运算符有如下两种。<<:左移。>>右移。二进制

对于x<<nx>>n形式的运算,含义是将x向左或向右移动n位,获得的结果类型与x相同。在此处,x的类型只能是intuintlongulongn的类型只能是int,或者显示转换为这些类型之一,不然,编译程序的时候,会出现语法错误。具体执行时,左移就是将左边的操做数在内存中的二进制数据左移右边操做数指定的位数,右边移空的部分补零。右移则复杂一些,当使用“>>”符号时,若是高位时0,左移空的位就输入0;若是最高位是1,左移空的位就输入1

移位能够实现整数除以或乘以2n次方的效果。

相关文章
相关标签/搜索