C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏

按位与、或、异或运算符在计算机内存中,数据是以二进制的形式存储,每一个位存放一个0或1的二进制数值。这里介绍的按位与、或、异或运算,就是针对二进制进行操作。例如

老铁们,大家好,相信还有很多朋友对于C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏和的相关问题不太懂,没关系,今天就由我来为大家分享分享C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏以及的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

AND运算规则表

操作数a的值

操作数b的值

与表达式

表达值

0

0

0

0

1

0

1

0

0

1

1

1

可以看出,对于ab 这样的表达式,只要a 和b 之一为0,则该表达式的值为0。只有当a 和b 都为1 时,该表达式的计算结果才为1。

对于“OR”运算的算术规则,使用符号“|”符号来表示“OR”运算。例如,对于诸如| 之类的表达式那么,我们可以总结如下表。

或操作规则表

操作数a的值

操作数b的值

与表达式

表达值

0

0

一个|乙

0

0

1

1

1

0

1

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏

1

1

1

可以看出,对于像| 这样的表达式b,只要a或b的值为1,则表达式的值为1。只有当a和b都为0时,表达式的结果才为0。

对于“异或”运算的算术规则,使用符号“^”符号来表示“异或”运算。例如,对于a^b这样的表达式,如果a和b的对象都相同,即全为0或全为1,则表达式的值为0;只要对象a和b不同,表达式的值为1。那么,我们可以总结如下表。

异或运算规则表

操作数a的值

操作数b的值

与表达式

表达值

0

0

^b

0

0

1

1

1

0

1

1

1

0

可见,对于a^b这样的表达式,只有当a和b的值都为0或1时,表达式的值才为0。如果a和b的值不同样,表达式的计算结果为1。以下是测试示例:

测试程序运行结果如下:

通过测试例子我们可以知道,“按位与、或、异或”运算就是对二进制数据逐位进行数学“与、或、异或”运算。最终,表达式的值就是按位运算的结果。

逻辑与、或运算符

在C语言中,定义了“逻辑AND”和“逻辑OR”运算。逻辑与运算符为“”,并且可以有表达式“a b”。那么,当a和b的值都是非0值时,表达式的值为1;如果a和b的值中有一个值为0,则表达式的值为0。那么,我们可以将逻辑AND的操作总结如下表。

逻辑及运算规则表

操作数a的值

操作数b的值

与表达式

表达值

0

0

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏

0

0

非0

0

非0

0

0

非0

非0

1

正如您所看到的,“逻辑与”运算与“按位与”运算非常相似。然而,“按位与”运算是对二进制数据的一位进行运算,而这里的“逻辑与”运算是对数值进行运算。操作数的值只有0和非0(非0可以是正数和负数)。地位。

同样,“逻辑或”的运算与“按位或”的运算非常相似。 “按位或”对二进制数据进行运算,“逻辑或”对数值进行运算。操作数只有0 和非0 状态。我们可以将逻辑或的运算总结如下表。

逻辑或运算规则表

操作数a的值

操作数b的值

与表达式

表达值

0

0

一个||乙

0

0

非0

1

非0

0

1

非0

非0

1

可见,当a和b都为0时,表达式的值为0;如果a 和b 之一具有非零值,则表达式的值为1。测试示例如下:

测试运行结果如下:

用户评论

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
走过海棠暮

其实不是觉得简单就可以,我一直觉得这些概念有点枯燥,但确实掌握了以后,代码写起来就方便很多,例如判断某个位是不是1,可以直接用按位与运算来实现。

    有9位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
心悸╰つ

赞同!C语言的按位操作真的一点也不复杂,我一开始看懵了,现在用的顺手多了,尤其是逻辑运算时,比其他方式高效多了。

    有5位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
予之欢颜

世界里确实充满着黑和白,可是这三个运算符好像更像是灰度,可以将各种状态进行混合,比如组合按钮的状态呀!

    有12位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
冷嘲热讽i

你把C语言的按位操作描述得生动有趣,虽然我学这个主要是为了考试,但其实心里还是很佩服这种简洁精美的编程方式。

    有10位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
拉扯

这三个运算符真的简单易懂,但应用场景却很广泛,像数据压缩、加密算法等等,都是他们的发扬光大啊!

    有18位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
雨后彩虹

说的对,就像人生一样,有黑也有白,但最后还是要看你怎么处理自己的人生代码,这些操作就如同编程技巧一样,帮助你处理各种复杂关系!

    有9位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
信仰

说实话,我一直觉得按位操作有点晦涩难懂,感觉不是那么直观。也许以后再多实践练习几次吧!

    有20位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
发型不乱一切好办

别担心,C语言的按位操作也是需要时间去理解的,多打几个基础代码,就会慢慢掌握这个逻辑了,你会发现它非常酷炫的!

    有14位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
咆哮

世界是如此复杂的多元化,C语言 的这三个基本运算只能用简单粗暴的黑白来描述?这种说法略微片面啊!

    有12位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
非想

你说的很有道理,也许我们应该更灵活地看待世界,不要总是被黑白切割左右,就像按位操作可以根据具体情况选择组合运用一样! 这篇文章让我反思了。

    有16位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
顶个蘑菇闯天下i

C语言的确是编程的入门必修课。尤其是这些运算符,看似简单却实用的很,像是在学习生活中,掌握基本的知识就是一切的基础啊!

    有5位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
暮染轻纱

我觉得这种比喻很有意思,把复杂的逻辑用最简单的黑和白来描述,一下子就抓住重点了,对初学者解释概念也是很好的方法!

    有17位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
夏以乔木

世界里本来就没有绝对的黑和白,更多是相互依存,灰色的存在。C语言里的按位操作也类似,它不仅可以用来区分真假,还可以用于各种复杂的逻辑运算!

    有7位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
麝香味

这篇文章让我对C语言的按位操作有了新的理解。原来它们不仅可以用在简单的运算中,还可以用于更复杂的程序设计,真是太棒了!

    有10位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
笑傲苍穹

对于我这种编程新手来说,学习按位操作确实有些困难。但我相信只要多做练习,再加上一些理论知识的补充,一定能掌握好这些操作技巧!

    有7位网友表示赞同!

C语言就是按位与、或、异或,很简单,就是黑白分明的世界!好与坏
一别经年

虽然世界不像文章所描述的那样简单二元,但C语言的按位操作的确提供了一种简洁高效的解决问题的途径。这篇文章读来很有启发性!

    有7位网友表示赞同!

原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/195070.html

(0)
小su's avatar小su
上一篇 2024年9月25日 下午4:27
下一篇 2024年9月25日 下午4:32

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注