AND

Sonuc = Ifade AND Ifade

Ifadeye bağlı olarak , AND operasyonu mantıksal AND veya sayısal AND olabilir. İki boolean değer durumunda, mantıksal AND olarak çalışır. İki integer sayı olması durumunda, sayısal AND operasyonu gerçekleştirilir.

Mantıksal AND operatörü iki boolean değeri alıp true veya false cinsinden boolean değer döndürür. Bu operatörden dönen sonuç aşağıdaki tablodaki gibidir:

A B A AND B
FALSE FALSE
FALSE TRUE FALSE
FALSE FALSE
TRUE TRUE TRUE

Sayısal AND operatörü iki integer değerini alıp karşılığında integer döndürür. Belirtilmiş sayılardaki her bir bite göre şu tablodaki gibi bir araya getirilir :

A B A AND B
0 0 0
0 1 0
1 0 0
1 1 1

Sayısal AND operatörü sayının bit dizilimini test etmek için kullanılabilir. Ayrıca sayının seçilen bitlerinin maskelemek için de kullanılır. Aşağıdaki tabloda iki integer değeri için AND operatörünün kullanımı ile ilgili örnekler verilmiştir

İfade Açıklama
10 AND 20 = 0 10 = binary 01010
20 = binary 10100
Bu yüzden 10 AND 20 = 0

10 AND -20 = 8 10 = binary 00000000000000000000000000001010
-20 = binary 11111111111111111111111111101100
Yani 10 AND -20 = 8 (binary 1000)

20 AND -20 = 4 20 = binary 00000000000000000000000000010100
-20 = binary 11111111111111111111111111101100
Buna göre 20 AND -20 = 4 (binary 100)

Examples

PRINT TRUE AND FALSE
False
PRINT TRUE AND TRUE
True

PRINT 7, Bin(7, 16)
PRINT 11, Bin(11, 16)
PRINT 7 AND 11, Bin(7 AND 11, 16)
7       0000000000000111
11      0000000000001011
3       0000000000000011

DIM A,AS BOOLEAN
= 10 < 20
= 20 > 30

IF A AND B THEN
PRINT "Hem A hem B TRUE"
ELSE
PRINT "Ya A ya B ya da ikisi birden FALSE"
ENDIF
Ya A ya B ya da ikisi birden FALSE

See also