二进制运算怎么算呀
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了二进制运算怎么算呀相关的知识,希望对你有一定的参考价值。
二进制运算主要有 and (与), or (或), not (非) 及 xor (异或) 等运算.and: 只有两个操作数都为1时结果为1, 所以:
0 and 0 = 0
0 and 1 = 0
1 and 0 = 0
1 and 1 = 1
or: 只要两个操作数有一个为1结果便为1, 所以:
0 or 0 = 0
0 or 1 = 1
1 or 0 = 1
1 or 1 = 1
not: 取反, 它只有一个操作数(单目操作符), 0变为1或1变为0:
not 0 = 1
not 1 = 0
xor: 两个操作数不同 (异) 时结果为1, 相同时为0, 它应该称为 "异", 但从下面看, 有些像 "或", 所以称为 "异或":
0 xor 0 = 0
0 xor 1 = 1
1 xor 0 = 1
1 xor 1 = 0
上面说的都是只有一个位时的情况, 如果是多个位, 则把两个数(二进制)按位对齐, 相应的位进行运算, 如:
3 and 6 = 2
3二进制为11, 6为110, 011与110 对应位进行 and 操作, 结果为10, 即十进制的2.
编程时通常将二进制运算用于:
(1) 将某一位置为1, 用or, 如 "N := N or 4" 将N的第2位置为1; (示例用的是PASCAL)
(2) 将某一位清为0, 用and not, 如 "N := N and not 1" 将第0位清为0;
(3) 使某一位"翻转", 用xor, 如 "N := N xor 2" 将N的第1位由0变1或由1变0;
(4) 想看某一位的值, 用and, 如 "if N and 8 <> 0 then ..." 意即如果N的第3位不为0则进行某项操作.
当然, 你最好对十进制与二进制之间的转换能够较为自如. 参考技术A 很简单.
打开系统的附件,计算器,里可以很方便的转换二进制了. 参考技术B 去买一本计算机二级
第一章就是二进制运算 参考技术C 涉及xor,or,and,not 等运算吗 参考技术D http://zhidao.baidu.com/question/206292.html
这里有很详细的解说!本回答被提问者采纳
以上是关于二进制运算怎么算呀的主要内容,如果未能解决你的问题,请参考以下文章