1NSI : Opérateurs Booléens, Portes Logiques⚓︎
Contenus | Capacités Attendues |
Commentaires |
---|---|---|
Valeurs booléennes : 0,1. Opérateurs booléens : and, or, not. Expressions booléennes |
Dresser la table d’une expression booléenne. |
Le ou exclusif (xor) est évoqué. Quelques applications directes comme l’addition binaire sont présentées. L’attention des élèves est attirée sur le caractère séquentiel de certains opérateurs booléens. |
Opérateurs Booléens & Opérandes⚓︎
Qu'est-ce qu'un Opérateur ?⚓︎
De manière générale et intuitive, un Opérateur est un concept (plutôt mathématique) qui opère/agit sur des données en entrée, appelées Opérandes, et qui renvoie en sortie un (unique) résultat (dépendant usuellement des données en entrée).
Au sens mathématique, un Opérateur \(\otimes\) (par exemple) peut donc être vu comme une fonction \(f\) (par exemple) mais les notations pour la valeur de sortie ne sont pas exactement les mêmes.
Opérateurs et Fonctions⚓︎
Un Opérateur \(\otimes\) (par exemple) opère/agit sur les Opérandes \(x\), \(y\) (par exemple) donnés en entrée, et renvoie une (unique) donnée en sortie par la fonction \(\otimes=f\), que l'on préfère noter \(x \otimes y\) (notation d'opérateur) plutôt que \(\otimes(x,y)=f(x,y)\) (notation fonctionnelle) :
De manière plus générale, il peut y avoir un seul ou bien plusieurs opérandes (même plus que \(2\)).
- Au sens d'un Opérateur, il s'agit d'une opération entre les différents opérandes.
- Au sens mathématique, on aurait pu dire que l'image de \((x,y,..)\) par la fonction \(\otimes=f\) est \(\otimes(x,y,..)=f(x,y,..)\)
- Au sens informatique, les opérandes \((x,y,..)\) peuvent être vus comme les arguments ou paramètres donnés en entrée d'une fonction \(f\) (au sens informatique).
Opérateurs Arithmétiques
Les quatre opérations arithmétiques de base \(+, -, \times, \div\) peuvent être vues comme des opérateurs à deux opérandes :
Opérateur \(\Leftrightarrow\) Fonction (\(a\) et \(b\) sont les opérandes) |
Valeur de Sortie |
---|---|
\(a+b = +(a,b)\) | La Somme de \(a\) et \(b\) |
\(a-b = -(a,b)\) | La Soustraction de \(a\) et \(b\) |
\(a\times b = \times(a,b)\) | La Multiplication de \(a\) et \(b\) |
\(a\div b = \div(a,b)\) | La Division de \(a\) et \(b\) |
Opérateurs Booléens⚓︎
Dans ce contexte, Un Opérateur Booléen ou Opérateur Logique, correspond au cas particulier où :
- les données en entrée sont des booléens (Vrai/True/\(1\) ou False/Faux/\(0\))
- Le résultat en sortie est également un booléen
Opérateur Booléens / Logiques & Opérandes
Un
- prend en entrée un ou plusieurs booléens/bits (appelés
Opérandes ), et - produit en sortie un (unique) booléen/bit de résultat
L'équivalent au sens mathématique d'un opérateur booléen/logique, serait une fonction dite
L'Opérateur Booléen de la Négation
L'Opérateur booléen qui consiste à renvoyer en sortie systématiquement le contraire de ce que l'on a reçu en entrée, est appelé l'Opérateur de la Négation :
Vrai
en entrée renvoieFaux
en sortieFaux
en entrée renvoieVrai
en sortie
Fonctions Booléennes/Logiques & Tables de Vérité⚓︎
Définition⚓︎
Fonctions Booléennes/Logiques & Tables de Vérité
Les
Exemples⚓︎
Fonction Booléenne à 2 entrées⚓︎
Une fonction booléenne \(f\) avec \(2\) entrées \(x\), \(y\), sera entièrement définie par une Table de Vérité de \(2^2=4\) lignes. En effet, il existe \(4\) manières d'arranger deux variables \(x\) et \(y\) prenant chacune des valeurs booléennes (\(0\) ou \(1\)) données en entrée :
\(x\) | \(y\) | \(f(x,y)\) (\(1\) bit) |
---|---|---|
\(0\) | \(0\) | \(f(0,0)\) |
\(0\) | \(1\) | \(f(0,1)\) |
\(1\) | \(0\) | \(f(1,0)\) |
\(1\) | \(1\) | \(f(1,0)\) |
Ex
-
Un videur de boîte de nuit a reçu comme consigne de ne laisser passer que les personnes suivant le dress code suivant :
- une chemise (\(x\))
- ET un pantalon (\(y\))
Établir la Table de Vérité correspondant à cette situation :
\(x\)
(Chemise)\(y\)
(Pantalon)\(f(x,y)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(1\) \(1\) \(0\) \(1\) \(1\) -
\(x\)
(Chemise)\(y\)
(Pantalon)\(f(x,y)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(1\) \(0\) \(1\) \(0\) \(0\) \(1\) \(1\) \(1\) -
Le dress code a changé :
- une chemise (\(x\))
- OU un pantalon (\(y\))
Établir la Table de Vérité correspondant à cette situation :
\(x\)
(Chemise)\(y\)
(Pantalon)\(f(x,y)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(1\) \(1\) \(0\) \(1\) \(1\) -
\(x\)
(Chemise)\(y\)
(Pantalon)\(f(x,y)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(1\) \(1\) \(1\) \(0\) \(1\) \(1\) \(1\) \(1\)
Fonction Booléenne à 3 entrées⚓︎
Une fonction booléenne \(f\) avec 3 entrées \(x\), \(y\) et \(z\), sera entièrement définie par une Table de Vérité de \(2^3=8\) lignes. En effet, il existe \(8\) manières d'arranger trois variables \(x\), \(y\) et \(z\) prenant chacune des valeurs booléennes (\(0\) ou \(1\)) données en entrée :
\(x\) | \(y\) | \(z\) | \(f(x,y,z)\) (\(1\) bit) |
---|---|---|---|
\(0\) | \(0\) | \(0\) | \(f(0,0,0)\) |
\(0\) | \(0\) | \(1\) | \(f(0,0,1)\) |
\(0\) | \(1\) | \(0\) | \(f(0,1,0)\) |
\(0\) | \(1\) | \(1\) | \(f(0,1,1)\) |
\(1\) | \(0\) | \(0\) | \(f(1,0,0)\) |
\(1\) | \(0\) | \(1\) | \(f(1,0,1)\) |
\(1\) | \(1\) | \(0\) | \(f(1,1,0)\) |
\(1\) | \(1\) | \(1\) | \(f(1,1,1)\) |
Ex
-
Un videur de boîte de nuit a reçu comme consigne de ne laisser passer que les personnes suivant le dress code suivant :
- une chemise (\(x\))
- ET (un pantalon \(y\) OU une jupe \(z\))
Établir la Table de Vérité correspondant à cette situation :
\(x\)
(Chemise)\(y\)
(Pantalon)\(z\)
(Jupe)\(f(x,y,z)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(0\) \(1\) \(0\) \(1\) \(0\) \(0\) \(1\) \(1\) \(1\) \(0\) \(0\) \(1\) \(0\) \(1\) \(1\) \(1\) \(0\) \(1\) \(1\) \(1\) -
\(x\)
(Chemise)\(y\)
(Pantalon)\(z\)
(Jupe)\(f(x,y,z)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(0\) \(0\) \(1\) \(0\) \(0\) \(1\) \(0\) \(0\) \(0\) \(1\) \(1\) \(0\) \(1\) \(0\) \(0\) \(0\) \(1\) \(0\) \(1\) \(1\) \(1\) \(1\) \(0\) \(1\) \(1\) \(1\) \(1\) \(1\) -
Le dress code a changé :
- Pantalon Obligatoire pour tout le monde
- une chemise (\(x\)) ET des Chaussures (\(z\)) (avec éventuellement un maillot en dessous)
- OU (pas de chemise, mais avec maillot (\(y\)) ET Sans Chaussures)
Établir la Table de Vérité correspondant à cette situation :
\(x\)
(Chemise)\(y\)
(Maillot)\(z\)
(Chaussures)\(f(x,y,z)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(0\) \(1\) \(0\) \(1\) \(0\) \(0\) \(1\) \(1\) \(1\) \(0\) \(0\) \(1\) \(0\) \(1\) \(1\) \(1\) \(0\) \(1\) \(1\) \(1\) -
\(x\)
(Chemise)\(y\)
(Maillot)\(z\)
(Chaussures)\(f(x,y,z)\)
(\(1\) bit)
(Puis-je entrer ?)\(0\) \(0\) \(0\) \(0\) \(0\) \(0\) \(1\) \(0\) \(0\) \(1\) \(0\) \(1\) \(0\) \(1\) \(1\) \(0\) \(1\) \(0\) \(0\) \(0\) \(1\) \(0\) \(1\) \(1\) \(1\) \(1\) \(0\) \(0\) \(1\) \(1\) \(1\) \(1\)
Fonction Booléenne à \(n\) entrées⚓︎
Nombres de Lignes d'une Table de Vérité
Une Table de Vérité d'une fonction booléenne avec \(n\) bits en entrée (le nombre total de colonnes, sauf la dernière colonne du résultat), aura besoin de