And/es
From Lazarus wiki
Jump to navigationJump to search
│
Deutsch (de) │
English (en) │
español (es) │
suomi (fi) │
français (fr) │
русский (ru) │
Operación booleana
Boolean And produce un valor de true si y sólo si ambos operandos booleanos son verdaderos.
Tabla de True
A | B | A and B |
---|---|---|
false | false | false |
false | true | false |
true | false | false |
true | true | true |
Operación a bit
Logical And (también conocido como Bitwise And) requiere operandos ordinales y establece un bit en la variable de resultado a 1 si y sólo si ambos bits correspondientes en los operandos son 1.
Es potencia de dos
function EsPotenciaDeDos ( const unValor : longint ): boolean;
var
x : longint;
b : boolean;
begin
b := false;
if unValor <> 0 then
begin
x := unValor - 1;
x := x and unValor;
if x = 0 then b := true;
end;
result := b;
end;
Si llamas a EsPotenciaDeDos(4) entonces obtienes True. Si llamas a EsPotenciaDeDos(5) obtienes False.