第十五章

本文详细介绍了C语言中的位操作,包括位运算符(如按位取反、按位与、按位或、异或等)、移位运算符及位字段的概念与应用。并通过实例展示了如何使用掩码(mask)进行位的读取、设置与清除。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第十五章 位操作

1.运算符~ &   |  ^  >>  <<  &=  !=  ^=  >>=   <<=
2.二级制十进制和十六进制计数法
3.用于处理一个值中个别位的两个c工具:位运算符和位字段

许多的加解密都是对位进行的操作。
4.二进制数
Pasted Graphic.tiff ¬
5.八进制:

Pasted Graphic 1.tiff ¬
6.十六进制

Pasted Graphic 2.tiff ¬


7.C的位运算符
C提供位的逻辑运算符和移位运算符。
1)位的逻辑运算符
4个位运算符用于整形数据,包括char。对每一位进行操作,而不影响其他的位。
i : 二进制反码或者 按位取反,~
~(10011010) = 01100101
但是该运算符并不创建一个可以在别处使用或者赋值的新值。

val = ~val;
ii:位与 AND: &   通过两个数 逐个位比较才会产生一个新的值。11=1;else  =0.
iii:   位或 OR。|
iiii:异或 ^   只有一个为1 则为1,如果如果都为0,或者1,结果为 0.


8.用法:掩码 MASK

flags = flags & MASK;

9.用法:打开位。有时候,我们可能需要打开一个值中特定的位,同时保持其他位不变。

flags = flags | MASK(使需要打开的那个位为1,其余位位0.);

10 用法:关闭位:
flags = flags & ~ MASK;

11.查看一个位的值。

if((flag & MASK) == MASK)
puts("Wow");

12.移位运算符。左移运算符 <<   
(10001010) << 2结果  00101000
13.右移运算符>>。
Pasted Graphic 3.tiff ¬

14.位字段。

Pasted Graphic 4.tiff ¬

Pasted Graphic 5.tiff ¬

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值