算法和数据结构复习一:位运算之AND(&)

工作几年,发现大学学习的算法和数据结构不少知识点都已经还给老师。偶尔碰到竟然还一时想不起来,近日起,会逐渐的整理算法和数据结构相关内容,逐一复习,逐一整理。

AND(运算符)

AND在编程术语中表示一种运算方法,不可逆。

常用符号:&(按位与),&&(逻辑与)。

其运算规则如下:

1&1=1; 真&&真=真;

1&0=0; 真&&假=假;

0&1=0; 假&&真=假;

0&0=0; 假&&假=假;

即与0则0,常用此特性来将某些位置0或保存某些位。

如汇编语句:AND EAX,80000007,其位31、2、1、0不变,其余位置0。

中文名       且

外文名       AND

类    型      运算符

定    义      用于对两个表达式进行逻辑与运算

语    法      expression1 And expression2

描述:

与运算,二进制运算。可逆运算。1 and 1=1,1 and 0=0,0 and 0=0,0 and 1=0。

a and b 的运算方法:将a和b转换成2进制后,一位一位地去比较,当两个位都是1时,那么结果为1,否则为0。最后再把它转换成十进制就可以了。

语法:

And运算符的语法有以下部分:

部分                                                描述

result                                             任意数值变量。

expression1                                  任意表达式。

expression2                                  任意表达式。

说明:

当且仅当两个表达式均为 True,则 result 为 True。如果任一表达式为 False,则 result 为 False。

下表说明如何确定 result:

如果expression1为                     expression2为                         result

True                                             True                                               True

True                                              False                                            False

True                                              Null                                              Null

False                                            True                                              False

False                                             False                                           False

False                                             Null                                             False

Null                                               True                                             Null

Null                                                False                                          False

Null                                                Null                                            Null

And运算符还对两个数值表达式中位置相同的位执行逐位比较,并根据下表设置result中相应的位:

expression1中的位是           expression2中的位是          result

0                                                0                                                0

0                                                1                                                0

1                                                0                                                0

1                                                1                                                1

你可能感兴趣的:(算法和数据结构复习一:位运算之AND(&))