c语言中常用符号,C语言中常用的符号.doc

1.按位与运算

①概念

“按位与”运算符“&”是双目运算符,其功能是将参与运算两数的各对应二进位相与。只能对应的两个二进位均为1时,结果位才为1,否则为0。

②“按位与”与运算的特殊用途

ⅰ.清零

如果想将一个存储单元清零,即使其全部二进位为0,可按这样的方法计算:

找一个数,它的补码形式中各位的值符合如下条件:原来的数中为1的位,新数中相应位为0(注意,并不要求原数为0的位上,新数相应位为1,新数相应位可以是0或1);对二者进行&运算。

ⅱ.取一个数中某些字节

对于一个整数a(占2个字节),如要想得到其中的低字节,只需将a与特定的一个数按位与即可。

③要想将一个数的某一位保留下来,可将该数与一个特定的数进行&处理。

2.按位或运算

“按位或”运算符“︳”是双目运算符,其功能是将参与运算两数的各对应的二进位相或。只要对应的两个二进位有一个为1时,结果位就为1。参与运算的整数均以补码出现。

3.按位异或运算

①概念

“按位异或”运算符“∧”是双目运算符,其功能是将参与运算两数的各对应位相异或,当两对应的二进位相异时,结果为1,否则为0。参与运算整数仍以补码出现。

②“异或”运算的特殊应用

ⅰ.使特定位翻转

ⅱ.与0相“异或”,保留原值。

ⅲ.交换两个值。

4.“取反”运算

“~”是一个一元运算符,即它的运算量只有一个,用来对一个二进制数按位取反,即将0变1,1变0。比如说,~025就是对八进制数25(即二进制数000000000010101)按位求反。

15.3 移位运算

1.移位运算符

移位运算是对操作数以二进制位为单位进行左移或右移,如表所示。

移位操作

运算符 名 称 例 子 运算功能

>> 右移位 b>>3 b右移3位

<< 左移位 c<<2 c左移2位

2.左移运算

左移运算符“<>”是双目运算符,其功能是把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数。例如:

a=15,a>>2

表示把000001111右移为00000011(十进制3)。应该说明的是,对于有符号数,在右移时,符号位将随同移动。当为正数时,最高位补0;而为负数时,符号位为1,最高位是补0或1取决于编译系统的规定。Turbo C 规定补1。

右移运算相当于将运算对象除2.

15.4 位赋值运算

位赋值运算符如表所示。

位赋值运算符

运算符 名 称 例 子 等价于

&= 位与赋值 a&=b a=2&b

︳= 位或赋值 a|=b a=a|b

∧= 位异或赋值 a∧=b a=a∧b

>>= 右移赋值 a>>b a=a>>b

<<= 左移赋值 a<<=b a=a<

位赋值运算的过程为:

(1)先对两个操作数进行位操作;

(2)然后把结果赋予第一个操作数,因此第一个操作数必须是变量。

位赋值运算与算术赋值运算相似,它们都统称复合赋值运算。

展开阅读全文

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值