位操作详解
我们先来看看位运算操作符:& (按位与)、| (按位或)、^ (按位异或)、~ (按位取反)、>> (按位右移)、<< (按位左移)。
1、&(按位与) 从概念上来讲,就是将参与运算的两个分量对应的每一位来做逻辑与运算,若两者都为真(等于1),则结果才为真(等于1)。否则都为假(等于0)。
即:1 & 1 = 1 、1&0 = 0 、0&1 = 0、0&0 = 0
这里我们先来看看那一个8位二进制的例子:
7&8 = 0000 0111 & 0000 1000 = 0000 0000 = 0
7&6 = 0000 0111 & 0000 0110 = 0000 0110 = 6
2、| (按位或) 即把参与运算的每个分量对应的每一位来做逻辑或运算,即两者都为假(为0)时,才为假(为0),否则皆为真。
即:0|0 = 0、1|0 = 1、0|1 = 1、1|1 = 1
来看看8位二进制的例子:
7|8 = 0000 0111 | 0000 1000 = 0000 1111 = 15
7|6 = 0000 0111 | 0000 0110 = 0000 0111 = 7
3、^(按位异或) 即把参与运算的每个分量对应的每一位来做异或运算,即两者相同为假,不同为真。
即:0|0 = 0、 1|0 = 1、0|1 = 1、 1|1 = 0
看下面的例子:
7^8 = 0000 0111 ^ 0000 1000 = 0000 0111 = 7
7^6 = 0000 0111 ^ 0000 0100 = 0000 0011 = 3
4、~(按位取反) 即把二进制位的每一位进行取反运算,简而言之就是1变成0,0变成1。
直接看例子:
~7 = ~0000 0111 = 1111 1000 = 248
5 >>(按位右移)把二进制位整体向右移动。
7>>1 = 0000 0111 >> 1 = 0000 0011 = 3
7>>2 = 0000 0111 >> 2 = 0000 0001 = 1
这里右移等于除了2的N次方,N为右移的位数。
6 <<(按位左移)这里就不详细说了,和右移相反。
分享到:
相关推荐
STM控制器位带操作详解PPT课件.pptx
计算机操作系统 7套 期末考试题+ 答案详解 吐血上传计算机操作系统 7套 期末考试题+ 答案详解 吐血上传计算机操作系统 7套 期末考试题+ 答案详解 吐血上传计算机操作系统 7套 期末考试题+ 答案详解 吐血上传计算机...
资源介绍:。易语言注册表操作详解(微尘),源码演示的是易语言注册表操作,建立注册表项,建立字符串型,整数型,字节集型键,注册表项检查,删除等。资源作者:。newmonk。资源界面:。资源下载:。
正在学习位运算的人群
利用同位检查(Parity Check)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。 相同的数据存储在多个硬盘的不同的地方的方法。通过把数据放在多个硬盘上(冗余...
Java的位操作符用来操作整数基本数据类型中的单个“比特”(bit),即代进制位。下面通过本文给大家分享Java的按位操作符,感兴趣的朋友一起看看吧
64位操作系统:CHS\x64\SQLManagementStudio_x64_CHS.exe 32位操作系统:CHS\x86\SQLManagementStudio_x86_CHS.exe 2. 下载安装SQL Server 2012 www.2cto.com 64位操作系统:CHS\x64\SQLEXPR_x64_CHS.exe ...
BMP图片文件详解.pdf 如今 Windows(3.x 以及95,NT)系列已经成为决大多数用户使用的操作系统。它比DOS 成功的一个重要因素是它可视化的漂亮界面, 例如你可以在桌面上铺上你喜欢的墙纸。那么 Windows 是如何显示...
位操作就是对这些数据进行基本的操作。如果基本类型是char、byte或者short类型的数值进行移位处理,那么会转化成int类型,再进行移位的处理
对记数溢出的处理,在中断方式时,该位作为 位使用;在查询方式时,该位作为 位使用。 21.在定时器工作方式0下,计数器的宽度为 位,其记数范围为 ,如果系统晶振频率为6MHZ,则最大定时时间为 。 22.利用定时器...
6、软件操作命令汇总 7、开机自启动 8、环境变量 9、系统变更列表 10、更多支持和帮助 11、关于卸载 12、附录教程一:部署网站 13、附录教程二:将网站迁移至数据盘 14、附录教程三:将MYSQL迁移至数据盘中 ...
Microsoft Windows64位(x64)操作系统,相对于32位(x86)操作系统的最大优势和劣势是什么
在本篇内容里我们给大家整理了关于易语言位取反实例讲解内容,有兴趣的朋友们跟着学习下。
IPv6 87 10.1 IPv6数据报 87 10.1.1 优先级分类 88 10.1.2 流标识 89 10.1.3 128位IP地址 89 10.1.4 IP扩展头 90 10.2 多IP地址主机 91 10.3 单播、组播和任一播头 91 10.4 从IPv4到IPv6的...
加、减、乘指令的译码和操作 吴清平(245) 第58例?2-4译码器结构描述 刘沁楠(248) 第59例?2-4译码器行为描述 吴清平(255) 第60例?转换函数在元件例示中的应用 王作建(258) 第61例?基于同一基类型的两分辨类型...
本文实例讲述了Python基于Tensor FLow的图像处理操作。分享给大家供大家参考,具体如下: 在对图像进行深度学习时,有时可能图片的数量不足,或者希望网络进行更多的学习,这时可以对现有的图片数据进行处理使其变成...
位操作分为两组:常量时间单个位的操作,像设置一个位为 1 或者 0,或者获取该位的值。对一组位的操作,例如计算指定范围位的置位数量。 位图的最大优势是有时是一种非常显著的节省空间来存储信息的方式。例如,在一...
如果在执行command命令时返回了一个非"0"的出错信号,例如makefile文件中出现了错误的目标文件名或者出现了以连字符打头的命令字符串,make操作一般会就此终止,但如果make后带有"-i"参数,则make将忽略此类出错...
4.4.4 撤消操作 111 4.4.5 图形绘制 113 4.4.6 绘图区 118 4.4.7 主界面 119 4.5 练习作业 122 第五章 阴影、渐变和位图运算 123 5.1 概述 123 5.2 阴影 123 5.3 渐变 125 5.3.1 线性渐变(LinearGradient) 126 ...
W.Richard Stevens(1951-1999)是一位非常受人尊敬的专家,除了《TCP/IP详解》三卷本外,他还有其他两部最为畅销的作品;《UNIX环境高级编程》和《UNIX网络编程》(两卷本)。 目录 译者序 前言 第1章 概述 ...