【C语言】关于位运算符的简单运用

这篇具有很好参考价值的文章主要介绍了【C语言】关于位运算符的简单运用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 位运算符

位运算符有3种,并且是对存储在计算机上的二进制补码进行运算。

按位与 &,有0则0,全1为1

按位或 | ,有1则1,全0为0

按位异或 ^ ,相同为0,相异为1

相关原码,反码,补码介绍看:关于移位操作符中的原码、反码和补码

2 按位与 &

	int a = 3;
	int b = -5;
	int c = a & b;
	printf("%d", c);//打印结果为3

 因为3为整数,所以原码,反码和补码是一样的。

3的原码,反码和补码分别如下:

原码为:0000 0000 0000 0000 0000 0000 0000 0011

反码为:0000 0000 0000 0000 0000 0000 0000 0011

补码为:0000 0000 0000 0000 0000 0000 0000 0011

-5的原码,反码和补码分别如下:

原码为:1000 0000 0000 0000 0000 0000 0000 0101

反码为:1111 1111 1111 1111 1111 1111 1111 1010

补码为:1111 1111 1111 1111 1111 1111 1111 1011

拿3和-5的补码进行按位与运算

3补码为:0000 0000 0000 0000 0000 0000 0000 0011

-5补码为:1111 1111 1111 1111 1111 1111 1111 1011

按位与后的原码,反码和补码分别如下:

补码为:0000 0000 0000 0000 0000 0000 0000 0011

反码为:0000 0000 0000 0000 0000 0000 0000 0011

原码为:0000 0000 0000 0000 0000 0000 0000 0011

输出结果为3

3 按位或 |

	int a = 3;
	int b = -5;
	int c = a | b;
	printf("%d", c);//打印结果为-5

拿3和-5的补码进行按位或运算

3补码为:0000 0000 0000 0000 0000 0000 0000 0011

-5补码为:1111 1111 1111 1111 1111 1111 1111 1011

按位或后的原码,反码和补码分别如下:

补码为:1111 1111 1111 1111 1111 1111 1111 1011

反码为:1111 1111 1111 1111 1111 1111 1111 1010

原码为:1000 0000 0000 0000 0000 0000 0000 0101

输出结果为-5

4 按位异或 ^

	int a = 3;
	int b = -5;
	int c = a ^ b;
	printf("%d", c);//打印结果为-8

拿3和-5的补码进行按位异或运算

3补码为:0000 0000 0000 0000 0000 0000 0000 0011

-5补码为:1111 1111 1111 1111 1111 1111 1111 1011

按位异或后的原码,反码和补码分别如下:

补码为:1111 1111 1111 1111 1111 1111 1111 1000

反码为:1111 1111 1111 1111 1111 1111 1111 0111

原码为:1000 0000 0000 0000 0000 0000 0000 1000

输出结果为-8文章来源地址https://www.toymoban.com/news/detail-824648.html

到了这里,关于【C语言】关于位运算符的简单运用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C语言【运算符】

    1、运算符分类 按照操作个数分类: 一元运算符(一目运算符) :只有一个操作数。如 负号 -1。 二元运算符(二目运算符) :有两个操作数。如 加号 1+2。 三元运算符(三目运算符) :有三个操作数。如 ?: ab?1:2。 按功能分类: 算数运算符 :正(+)、负(-)、加(+)、

    2024年02月05日
    浏览(52)
  • Go 语言运算符

    文章目录 概要 整体架构流程 技术名词解释 技术细节 小结 🌟  欢迎来到 猫头虎的博客   — 探索技术的无限可能! 深入探索各技术领域,发现知识的交汇点。了解更多,请访问: - [ 猫头虎技术矩阵 ](https://bbs.csdn.net/topics/617720781) - [ 新矩阵备用链接 ](https://bbs.csdn.net/topi

    2024年02月05日
    浏览(35)
  • C语言中的除法运算符“/”与取模运算符“%”:深入解析与示例

    🔥温馨提示🔥:使用电脑端阅读,获取更好体验🚀 在C语言中, / 和 % 运算符是与除法相关的两个运算符,它们有以下特点: / (除法运算符): 用途:计算两个数之间的除法。 结果类型:如果两个操作数都是整型,结果也将是整型,且向下取整(即忽略小数部分,也称

    2024年03月15日
    浏览(71)
  • 运算符详解(c语言)

    引言: hello,大家好!我是心跳sy,今天给大家分享c语言运算符详解,我们知道,c语言的一个显著特点就是表达式的应用,表达式是表示如何计算值的公式,而运算符又是构建表达式的基本工具,c语言拥有非常丰富的运算符,包括算术运算符、关系运算符、逻辑运算符、赋

    2024年02月12日
    浏览(33)
  • C语言运算符详解

    【导言】 C语言是一门非常底层的编程语言,它支持多种运算符进行数值运算、逻辑运算等操作。C语言中的运算符主要有算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符、条件运算符等。本篇文章将会详细介绍C语言中的各种运算符及其使用方法。 一、算术运

    2024年02月07日
    浏览(40)
  • C 语言运算符详解

    运算符用于对变量和值进行操作。 在下面的示例中,我们使用 + 运算符将两个值相加: 虽然 + 运算符通常用于将两个值相加,就像上面的示例一样,它还可以用于将变量和值相加,或者将变量和另一个变量相加: C 将运算符分为以下几组: 算术运算符 赋值运算符 比较运算

    2024年02月04日
    浏览(40)
  • C语言—位运算符

    目录 (位与,AND): |(位或,OR): 位取反(~): 左移(): 右移(): 语法: a b 作用:将两个整数的对应二进制位进行逐位与运算,如果对应位都为1,则结果对应位为1;否则为0。 语法: a | b 作用:将两个整数的对应二进制位进行逐位或运算,如果对应位中至少有一个为1,

    2024年02月07日
    浏览(31)
  • python函数、运算符等简单介绍1(无顺序)

    print是输出打印 输出打印hello world! input是输入 输入名字并打印出来 sep函数是设置分隔符,默认为sep=’ ’(空格) 参数 含义 两个\\\\表示转义,输出变量时字符串中间会留下一个为字符串 n 在print输出两个变量时可以进行换行 r 在print输出多个变量时,会只输出最后一个

    2024年02月14日
    浏览(79)
  • C语言控制语句——运算符

    运算符 术语 示例 结果 + 正号 +3 3 - 负号 -3 -3 + 加 10 + 5 15 - 减 10 - 5 5 * 乘 10 * 5 50 / 除 10 / 5 2 % 取模(取余) 10 % 3 1 ++ 前自增 a=2; b=++a; a=3; b=3; ++ 后自增 a=2; b=a++; a=3; b=2; – 前自减 a=2; b=–a; a=1; b=1; – 后自减 a=2; b=a–; a=1; b=2; 示例代码: 运行结果: 运算符 术语 示例 结果 = 赋值

    2024年02月10日
    浏览(34)
  • C语言中的 |、||、&、&&、^、~、<<、>> 运算符

    大家好,这篇文章主要介绍一下C的 |、||、、、异或、~、!运算符,希望这些知识可以帮助到大家。 首先我们来了解一下什么是位运算,从现代计算机中所有的数据二进制的形式存储在设备中。即 0、1 两种状态,计算机对二进制数据进行的运算(+、-、*、/)都是叫位运算,即将

    2023年04月08日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包