Por definição. Tabela-verdade é o conjunto de todas as possibilidades combinatórias entre valores de diversas variáveis lógicas (binários), as quais se encontram em apenas duas situações (V)erdadeiro ou (F)also, e um conjunto de operadores lógicos.
A lógica binária, ou bitwise operation é a base de todo o cálculo computacional. Na verdade, são estas operações mais básicas que constituem todo o poderio dos computadores. Qualquer operação, por mais complexa que pareça, é traduzida internamente pelo processador para estas operações.
Por isso dizemos então que o computador trabalha apenas com zeros e uns.
As operações que podemos aplicar sobre esses valores lógicos estão abaixo restritos:
Operador NOT (!)
O operador unário NOT, ou negação binária resulta no complemento do operando, i.e., será um bit ’1′ se o operando for ’0′, e será ’0′ caso contrário, conforme podemos confirmar pela tabela de verdade:
| A | ¬A |
| 1 | 0 |
| 0 | 1 |
Implementação em C
A = 0; B = !A;
Operador AND (&&)
O operador binário AND, ou conjunção binária devolve um bit 1 sempre que ambos operandos sejam ’1′, conforme podemos confirmar pela tabela de verdade:
| A | B | A ∧ B |
| 1 | 1 | 1 |
| 1 | 0 | 0 |
| 0 | 1 | 0 |
| 0 | 0 | 0 |
Implementação em C
if (variavel1 && variavel2) { /*código*/ }
Operador OR (||)
O operador binário OR, ou disjunção binária devolve um bit 1 sempre que pelo menos um dos operandos seja ’1′, conforme podemos confirmar pela tabela de verdade:
| A | B | A ∨ B |
| 1 | 1 | 1 |
| 1 | 0 | 1 |
| 0 | 1 | 1 |
| 0 | 0 | 0 |
Implementação em C
if ( variavel1 || variavel2 ) {
/* Código */
}
Existe também outros operadores, como o NAND e o XOR, para mais informações, segue alguns links:
Wikibooks: Introdução à programação/Lógica
Organização e estruturas de Computador – Lógica Digital
[Atualização]
Para quem quiser brincar com portas lógicas, acesse http://logic.ly/demo/
[Atualizado]
Introdução a lógica, UFSC - http://www.inf.ufsc.br/ine5365/introlog.html