Booleano (informatica): differenze tra le versioni

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca
Contenuto cancellato Contenuto aggiunto
m Annullata la modifica 68959725 di 151.66.22.47 (discussione)
Riga 10: Riga 10:
== Operazioni ==
== Operazioni ==
=== 1 operando ===
=== 1 operando ===
L'unica operazione possibile con i valori booleani è la '''negazione''' (detto anche '''complemento''') che molto spesso è indicata con ''NOT'', ''!'' o ''~''.
L'unica operazione possibile con un solo valore booleano è la '''negazione''' (detto anche '''complemento''') che molto spesso è indicata con ''NOT'', ''!'' o ''~''.


Si definisce:
Si definisce:

Versione delle 15:46, 5 dic 2014

Una variabile booleana è una variabile che assume valori booleani, tipicamente Vero|Falso, True|False o 1|0. Una funzione di variabili booleane è chiamata funzione booleana; in un'accezione più generale, una variabile booleana può essere a sua volta funzione di variabili booleane.

Definizioni

In alcuni linguaggi, come il C, non esistono variabili di questo tipo in quanto nelle espressioni logiche si assume che falso corrisponda a 0 e vero a qualsiasi valore diverso da 0. Formalmente si indica il valore vero con -1 essendo esso il complemento a uno di 0 (falso), quindi la negazione bit a bit di una variabile. In un elaboratore che segue lo schema dell'Architettura di von Neumann nessuna variabile può essere di un solo bit. Nel processore 8086 il falso e il vero vengono rispettivamente rappresentati:

  • 0000 0000 (0)
  • 1111 1111 (1)

Operazioni

1 operando

L'unica operazione possibile con un solo valore booleano è la negazione (detto anche complemento) che molto spesso è indicata con NOT, ! o ~.

Si definisce:

  • not falso = vero
  • not vero = falso

2 operandi

Esistono varie operazioni, le principali sono: EQV, AND, OR, XOR. Tutte queste funzioni hanno 2 operandi (booleani) in ingresso e producono un output booleano.

Nella maggior parte dei linguaggi vengono indicati anche con i simboli:

  • EQV - ==
  • AND - &&
  • OR - ||
  • XOR - ^

Nei linguaggi

Nei linguaggi di programmazione più recenti (es: C++, Java) è possibile dichiarare variabili di tipo booleano, anche se, nessuna di esse occupa veramente un bit nella memoria (non è possibile allocare un singolo bit). Il compilatore si occupa di accorpare più variabili booleane per ottimizzare lo "spreco" di 7 bit. Ad esempio in C++:


bool A = true;
bool B = false;
bool C = A;


Quando questo codice verrà compilato, molto probabilmente, il compilatore allocherà una variabile di tipo intero e il primo bit lo utilizzerà per A, il secondo per B e il terzo per C, "perdendo" i restanti 4 bit.

Voci correlate