Differenze tra le versioni di "Variabile booleana"

Pagina sostituita con '{{S|programmazione}}'
m (WPCleaner v1.38 - Fixed using Wikipedia:Check Wikipedia (Titolo di sezione che non inizia con "="))
Etichetta: Nowiki inseriti da dispositivo mobile
(Pagina sostituita con '{{S|programmazione}}')
Etichetta: Rimozione delle Categorie da parte di nuovo utente o IP
{{S|programmazione}}
 
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 [[linguaggio di programmazione|linguaggi]], come il [[linguaggio C|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 i valori booleani è 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]], [[Algebra_di_Boole#AND|AND]], [[Algebra_di_Boole#OR|OR]], [[Algebra_di_Boole#XOR|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 - <nowiki>==</nowiki>
* AND - &&
* OR - ||
* XOR - ^
 
== Nei linguaggi ==
Nei linguaggi di programmazione più recenti (es: [[C++]], [[Java (linguaggio)|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 ==
* [[Algebra di Boole]]
 
{{portale|informatica|matematica}}
[[Categoria:Tipi di dato]]
[[Categoria:Algebra di Boole]]
Utente anonimo