C语言(按位与)、|(按位或)、^(按位异或)运算操作符讲解
C语言&、|、^运算操作符讲解
大家先判断下下面程序都运行结果
答案:
如果你全都做对了,那么恭喜你,是为巨佬,这篇文章对你帮助不大,这篇文章主要是帮助新手来理解&(按位与)、|(按位或)、^(按位异或)这3个相对来说比较难的操作符,相信困扰了很多编程小白。
大致介绍:
1、&(按位与)运算操作符,在计算机底层计算的原理中,相同位置的二进制序列进行对比,只要有0就是0,两个都是1才是1。
2、|(按位或)运算操作符,在计算机底层计算的原理中,相同位置的二进制序列进行对比,只要有1就是1,两个都是0才是0。
3、^(按位异或)运算操作符,在计算机底层计算的原理中,相同位置的二进制序列进行对比,相同为0,相异为1。
代码讲解演示:
我以&这个计算为例子来演示内存布局(16进制表示),其中内存1、2、3分别代表的是stupid、silly、wise这3个变量的内存布局演示
附:
若不太理解上面的计算过程,这边建议你可以看下我关于计算机底层原理计算的博客来帮助你理解
计算机底层的计算原理
备注:
楼主不才,不喜勿喷,若有错误或需要改进的地方,非常感谢你的指出,我会积极学习采纳。谢谢家人们一直以来的支持和鼓励,我会继续努力再接再励创作出更多优质的文章来回报家人们的。编程爱好的xdm,若有编程学习方面的问题可以私信我一同探讨(我尽力帮),毕竟“众人拾柴火焰高”,大家一起交流学习,共同进步!
2021.12.06
C语言(按位与)、|(按位或)、^(按位异或)运算操作符讲解相关推荐
- C语言按位与 按位或 按位异或 按位取反
与运算:& 两者都为1为1,否则为0 1&1=1, 1&0=0, 0&1=0, 0&0=0 或运算:| 两者都为0为0,否则为1 1|1 = 1, 1| ...
- C语言按位与 按位或 按位异或 按位取反(二)
位运算是指按二进制进行的运算.在系统软件中,常常需要处理二进制位的问题.C语言提供了6个位操作运算符.这些运算符只能用于整型操作数,即只能用于带符号或无符号的char,short,int与long类型 ...
- C语言按位与 按位或 按位异或 按位取反 (一)
与运算:& 两者都为1为1,否则为0 1&1=1, 1&0=0, 0&1=0, 0&0=0 或运算:| 两者都为0为0,否则为1 1|1 = 1, 1| ...
- C语言/(除号)和%(取余)运算操作符讲解
C语言/(除号)和%(取余)运算操作符讲解 一./(除号)运算操作符讲解 在开始讲解之前,大家先判断下下面程序的运行结果 答案: 如果你的答案是3,那么恭喜你答对了,但是对于大部分都初学者而言,他们会 ...
- 位运算符:按位与(),按位或(|),按位异或(^),取反(~)左移()和右移()
数据在内存中是以二进制的形式存放的,计算机存储数据的最小单位是位(bit),一个二进制位可以表示两种状态(0和1),一个字节通常由8位二进制位组成.C语言支持按位运算,按位运算也就是对字节或者字中的实 ...
- c/c++位操作简介--移位、位与、位或、异或
概述 C/C++里面位操作符表示为如下:左移位 << ,右移位 >>,位与 &,位或 | ,位异或 ^,按位求反~. 位操作符针对的是补码形式(可参见下面的例子,其实我 ...
- C语言编程的按位或返回值,c语言的按位运算符怎么操作!?
c语言的按位运算符怎么操作!? 答案:2 信息版本:手机版 解决时间 2019-10-06 03:32 已解决 2019-10-05 10:30 就是& | ^ - >> < ...
- 谭浩强c语言不讲位运算呢,谭浩强C语言教程第十二章-位运算.doc
谭浩强C语言教程第十二章-位运算 12位运算1 12.1位运算符C语言提供了六种位运算符:1 12.1.1按位与运算1 12.1.2按位或运算2 12.1.3按位异或运算2 12.1.4求反运算3 1 ...
- c语言中按位或与按位异或的区别,C:按位与、按位或、按位异或运算
一.按位与 & 1.概念:参加运算的两个对象,按二进制位进行"与"运算,负数按补码形式参加按位与运算. 2.规则 0&0=0; 0&1=0; 1&0 ...
最新文章
- cisco路由交换防火墙命令配置详解
- springboot日志配置
- RTX3090深度学习环境配置(PyTorch1.8)
- [修正] Berlin 10.1 支持 iPhone 4 (iOS v7.x)
- GNU make manual 翻译( 一百五十五)
- 【免费下载】2021年9月热门报告盘点(附热门报告列表及下载链接)
- 光头强的圆球机器人视频_《熊出没狂野大陆》快上映了,看了多年光头强,还能有新鲜动画吗...
- liunx 环境-配置docker阿里云镜像加速
- matlab的v带优化设计,基于遗传算法及MATLAB的V带传动优化设计
- 2018年高教社杯全国大学生数学建模竞赛题目A题 高温作业专用服装设计
- 第一章 Verilog语言和Vivado初步使用
- python-声音录制和处理
- SequoiaDB 巨杉数据库产品下载
- 【雕爷学编程】Arduino动手做(76)---2路光耦继电器模块
- 动态注册 Module
- ¶àÀAÃεĴó½á¾Ö
- Makefile 书写
- oracle量子,量子计算
- GRUB2命令和环境变量列表
- Qt disconnect函数
热门文章
- 不动点迭代法求方程根
- 【DATAGUARD】物理dg的failover切换(六)
- 因为它是在别处已打开 Word 无法保存此文件
- 智简 DC、绿建未来,华为发布下一代数据中心
- Pytorch网络模型权重初始化、保存与加载模型、加载预训练模型、按需设置学习率
- 悬赏计划 | 参与Gitee X OpenMLDB开源项目,做开源才不是「用爱发电」!
- 基础html交代选择器,html/css基础(html常用标签与css选择器)-2019年1月14号22时45分
- 智能电视盒子芯片哪个更强?七大芯片方案性能详解
- 商城app应用开发的功能
- 青岛科技大学计算机密码学,青岛科技大学密码学A卷试题及答案.doc