C++里面的移位、或这样的运算有什么意义?

就是把1变成0 0变成1 之类的 这样有什么意思啊?
我是个新学者 请不要打击我 谢谢
我也知道有点白痴的问题。

意义重大!
移位可以用来替代乘除2,乘左移,除右移。
每一位可以表示一种状态,1变0,0变1表示状态的改变。举个例子你就明白了,比如你有一个系统,有4个功能,都要设置打开及关闭。你可以用一个整数就表示4种功能分别打开关闭的各种组合了
以下数字全部二进制
1111表示都开
1110表示第四个关闭
0011表示第一二个关闭,等等。
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-08-09
节省时间和空间

你定义一个BOOL变量 需要4字节,但实际只用了1BIT
所以可以用一个整型的32BIT,代替32个BOOL变量

另外象移位操作 a<1 = a*2 a>1 = a/2,所以在游戏中
都是用移位操作来取代乘法和除法,以得到更快的计算速度
第2个回答  2010-08-09
“或与”运算你应该掌握,大部分判断的语句对这些要求很严格,又不好会造成你程序的错误。
至于移位运算,你初学没什么特殊要求 你就不用掌握 了解就行 等你不白了 会遇到这些问题 到时候自己在解决吧
第3个回答  2010-08-09
主要是高性能计算和复杂的逻辑控制,优势主要体现在速度和性能上;
初学的话,不使用位运算也没什么问题,不会影响功能的实现。本回答被提问者采纳

C++里面的移位、或这样的运算有什么意义?
意义重大!移位可以用来替代乘除2,乘左移,除右移。每一位可以表示一种状态,1变0,0变1表示状态的改变。举个例子你就明白了,比如你有一个系统,有4个功能,都要设置打开及关闭。你可以用一个整数就表示4种功能分别打开关闭的各种组合了 以下数字全部二进制 1111表示都开 1110表示第四个关闭 0011...

C \/ C ++中的左移和右移运算符
在C \/ C++编程中,左移和右移运算符是两位数操作的核心元素,用于处理数字的位级操作。左移运算符(<<)接受两个参数,第一个是被操作数,它会根据第二个参数(移位数)相应地位移。实际上,这等同于将第一个数乘以2的幂次方,即 x << y 等同于 x * 2^y。然而,这个操作对负数和位移幅度...

在c++位运算里什么是左移位和右移位
1.在c++中,移位运算符有双目移位运算符:<<(左移)和(右移)。移位运算符组成的表达式也属于算术表达式,其值为算术值。2.左移运算是将一个二进制位的操作数按指定移动的位数向左移位,移出位被丢弃,右边的空位一律补0。3.右移运算是将一个二进制位的操作数按指定移动的位数向右移动,移出位...

C语言位运算符:与、或、异或、取反、左移和右移!
取反(~):<\/ 一元运算,它是整数二进制的反码操作,如~77的计算结果为01000000,这对于理解负数在计算机中的表示有着重要意义。左移(<<):<\/ 通过左移位操作,我们可以将数值的位向左移动指定的位数,如15左移两位变为00111100,这在数据压缩和倍增操作中非常常见。右移(>>):<\/ 无符号数右移...

‖在c++中是什麽意思
或者 比如 if (a==1 || a==2) 当 a等于1 或者当a等于 2时 输出下面信息 {printf("a<3");}

c\/c++的bit的左移右移移位操作详解(最新标准)
左移操作符为 <<,它将第一个操作数的位向左移动指定的位数,即 num1 << num2。右移操作符为 >>,它将第一个操作数的位向右移动指定的位数,相当于将 x 除以 2^y,即 (x>>y)。若右移操作数为负数或大于左操作数的位范围,结果则未定义。移位操作分为逻辑移位和算术移位。逻辑移位仅在...

c++中的:: -> >>分别是什么意思?
作用域运算符:"::"如果希望在局部变量的作用域内使用同名的全局变量,可以在该变量前加上"::","::"称为作用域运算符.2.->运算符:左边的指针变量通过指向的地址访问所在地址里面的内容 3.>>运算符:是右移位运算符,把左操作数的二进制内容右移有操作数的位数,并在最左边按最高位补齐 ...

算术移位和逻辑移位详解
移位运算,即是将数值向左或向右移动,对于十进制而言,实现放大或缩小十倍的效果;对于二进制而言,则是放大两倍或缩小两倍。整数乘除法在C\/C++中有时会犯错,因此理解移位操作至关重要。直接移位的数据类型包括:char、short、int、long、unsigned char、unsigned short、unsigned int、unsigned long,而...

i<<4在C++中是什么意思
<<在C++中,有两个运算含义:1.重载输出流运算符,一般运用格式为:cout<<x;其中cout为流文件,如显示设备,输出设备,或者数据文件等。2.数据移位运算符,左移几位,如:x=i<<4;就是将i的值左移4位(放大2的4此方)后,赋给x,若i=2,则X=32。

c++程序中,右移位符>>表示什么含义??比如说运算18>>3是什么含义??_百度...
以大写数字表示数制,则 (18)十 =(10010)二 10010->右移三位=00010 (00010)二=(2)十 可见,执行移位操作后,18变成了2,相当于 18除以2的三次方的结果下取整。

相似回答
大家正在搜