Skip to content

Valeurs booléennes

La logique binaire

Certaines grandeurs ne peuvent prendre que deux valeurs. Par exemple : un interrupteur peut être « ouvert » ou « fermé », une lampe peut être « allumée » ou « éteinte », une réponse à une question peut être « vraie » ou « fausse », … Ce type de grandeur est appelé variable binaire, ou variable booléenne. Par convention, on représente les deux états d’une variable booléenne par les deux valeurs 0 et 1. Par exemple : VRAI = 1, FAUX = 0. Une variable booléenne pourra donc être représentée par un bit. Un opérateur binaire est une opération mathématique qui, à partir de deux variables booléennes E1 et E2 qu’il accepte en entrée, donne une variable booléenne S dite de sortie, comme indiqué sur le schéma suivant : Pour déterminer ce que fait un opérateur logique, on doit connaître sa table de vérité : c’est un tableau qui donne l’état de la sortie en fonction des différentes valeurs possibles des entrées. Un exemple : l’opérateur logique ET (ou AND) : Pour avoir une bonne note à l’école, il me suffit de travailler au préalable et de ne pas paniquer au contrôle. L’opérateur logique ET va rendre un résultat lorsque les deux propositions d’entrée « Travailler au préalable » et « Ne pas paniquer au contrôle » lui sont soumises. Si on code chacune des propositions par 1 si elle est réalisée (VRAI) et par 0 dans le cas contraire (FAUX), voilà ce que l’on obtient : Ce tableau s’appelle la table de vérité de l’opérateur logique ET, qui porte ce nom car la sortie vaut la valeur VRAI si et seulement si l'entrée E1 ET l'entrée E2 sont à la valeur VRAI. Il existe d'autres opérateurs logiques qui nous seront utiles par la suite : Le OU "normal" correspond au OU/ET. Le OU exclusif correspond au "ou" des restaurants, comme dans "fromage ou dessert" : c'est l'un ou l'autre, mais pas les deux ! L'opérateur NON est un opérateur unaire : il ne comporte qu'une seule entrée. Les autres opérateurs sont des opérateurs binaires, avec deux entrées.

Comment réaliser pratiquement des opérateurs logiques ?

1er exemple : soit le circuit électrique suivant : L’état des deux interrupteurs, ainsi que l’état de la LED sont des variables booléennes. On peut par convention décider que : « Interrupteur ouvert » = 0, « Interrupteur fermé » = 1, « LED éteinte » = 0, « LED allumée » = 1. En respectant ces conventions, on peut remplir le tableau suivant : La LED est allumée si l'interrupteur 1 ET l'interrupteur 2 sont fermés : on a réalisé un opérateur ET. 2ème exemple : soit le circuit électrique suivant : On obtient le tableau suivant, qui correspond à l'opérateur logique OU :

Les portes logiques

Réaliser des opérateurs logiques à l’aide d’interrupteurs n’est guère commode. On utilise à la place des dispositifs électroniques appelés portes logiques, contenus dans des circuits intégrés logiques (ou C.I.L.). Chaque C.I.L. comporte plusieurs portes logiques.

1./ Etude de la porte NON-ET (ou NAND)

A l’aide du simulateur de circuits logiques en ligne du LaBRI (Laboratoire Bordelais de Recherche en Informatique), réaliser le montage suivant : (http://dept-info.labri.fr/ENSEIGNEMENT/archi/circuits/blank.html)

En utilisant les conventions précédentes, et en manipulant les interrupteurs, remplir la table de vérité de la porte NON-ET : Pourquoi cette porte logique porte-t-elle le nom de NON-ET ?

2./ Etude des autres portes logiques

A l’aide du simulateur en ligne, vérifier les tables de vérité des portes logiques suivantes : ET (AND), OU (OR), OU EXCLUSIF (XOR). Pour cela, il suffira de modifier le schéma précédent, en remplaçant la porte logique par une autre. Symboles des différentes portes logiques : (Les symboles européens sont donnés pour information. Ils ne sont que très peu utilisés dans l’industrie, et ce y compris en Europe !).

3./ Associations de portes logiques

A l’aide du simulateur en ligne, réaliser le montage suivant :

Etablir la table de vérité du montage : Faire la même chose avec ce montage : Ainsi que celui-ci : Que peut-on en conclure ?

Comme nous l’avons dit précédemment, un C.I.L. contient plusieurs portes logiques. Voyons par exemple le circuit 7400 :

Ce circuit à quatorze broches contient quatre portes NAND. Son brochage est donné ci-dessus, permettant d’identifier la position des différentes entrées et sorties. Les quatre portes sont indépendantes les unes des autres. La borne 14 (VCC) et la borne 7 (GND, pour GrouND) servent à l’alimentation du circuit. Le 7400 est un circuit important car tous les opérateurs logiques peuvent être réalisés avec des portes NAND. Si on souhaite utiliser d’autres portes, le brochage ainsi que les caractéristiques des autres C.I.L. sont disponibles sur Internet, sur les sites des constructeurs.

Utilisation des opérateurs logiques en Python

Syntaxe générale : (condition n°1) opérateur (condition n°2). Réponse sous la forme d’un booléen (True ou False).

Exemple : ( 2 == 1) or ( 4 == 2 + 2). Réponse : True.

Exercices :

  • Faire un script Python permettant de réaliser la table de vérité des opérateurs "not", "and" et "or".
  • Il n'existe pas nativement d'opérateur "xor"  en Python. Créer une fonction : xor( a, b) qui prend en argument deux booléens a et b et qui renvoie, sous la forme d’un booléen, le résultat de l’opération « a xor b ».
Insert math as
Block
Inline
Additional settings
Formula color
Text color
#333333
Type math using LaTeX
Preview
\({}\)
Nothing to preview
Insert