(c语言)位操作符

#include<stdio.h> //位操作符(只针对整数进行操作)
//& - 按(二进制)位与 (有0则0)
//| - 按(二进制)位或 (有1则1)
//^ - 按(二进制)位异或 (不同为1,相同为0)

int main()

{

int a = 3;

int b = -5;

//00000000000000000000000000000011------3的补码
//10000000000000000000000000000101------(-5)的原码
//11111111111111111111111111111010------(-5)的反码
//11111111111111111111111111111011------(-5)的补码

int c = a & b;

//00000000000000000000000000000011------3的补码
//11111111111111111111111111111011------(-5)的补码
//00000000000000000000000000000011------c的补码=原码=3

printf("c=%d\n",c); //3

int d = a | b;

//00000000000000000000000000000011------3的补码
//11111111111111111111111111111011------(-5)的补码
//11111111111111111111111111111011------d的补码
//11111111111111111111111111111010------d的反码
//10000000000000000000000000000101------d的原码=(-5)

printf("d=%d\n",d); //(-5)

int e = a ^ b;

//00000000000000000000000000000011------3的补码
//11111111111111111111111111111011------(-5)的补码
//11111111111111111111111111111000------e的补码
//11111111111111111111111111110111------e的反码
//10000000000000000000000000001000------e的原码=(-8)

printf("e=%d",e); //(-8)

return 0;

}

相关推荐
黎雁·泠崖5 小时前
Java数组进阶:内存图解+二维数组全解析(底层原理+Java&C差异对比)
java·c语言·开发语言
StandbyTime5 小时前
C语言学习-菜鸟教程C经典100例-练习30
c语言
满栀5855 小时前
插件轮播图制作
开发语言·前端·javascript·jquery
切糕师学AI5 小时前
Vue 中的计算属性(computed)
前端·javascript·vue.js
程琬清君5 小时前
Vue3DraggableResizable可移动范围有问题
前端·javascript·vue.js
lkbhua莱克瓦245 小时前
CSS盒子模型:网页布局的基石与艺术
前端·css·笔记·javaweb
Curvatureflight5 小时前
前端性能优化指南:从加载到交互的每一毫秒
前端·性能优化·交互
♩♬♪.5 小时前
HTML学校官网静态页面
前端·css·html
天天开心a5 小时前
Vue.js 基础教程笔记(一):Vue入门与环境搭建
前端·javascript·vue.js·笔记·前端框架
weixin_446260855 小时前
解锁 React 开发新体验!Puck - 智能可视化编辑器
前端·react.js·编辑器