Fonction logique ET

La fonction logique ET (en anglais, AND) est un opérateur logique, à deux opérandes booléens, de l'algèbre de Boole. Elle est utilisée couramment en électronique et en informatique.
Cette fonction donne en retour la conjonction (le ET) des états logiques des deux entrés.
Description
[modifier | modifier le code]La fonction logique ET est aussi appelée conjonction, dans l'algèbre de Boole. Elle peut être représentée par le sigle :« ∧ » ou par le signe de la multiplication[1].
C'est un opérateur booléen, à deux opérandes. Cette fonction retourne la valeur VRAI si, et seulement si, les deux opérandes ont tous les deux la valeur VRAI. Sinon, elle retourne la valeur FAUX[1]. Les valeurs VRAI et FAUX peuvent être représenté par les valeurs binaires 0 et 1 (en anglais BIT pour Binary digit)[2].
| Opérande 1 | Opérande 2 | Résultat | Opérande 1 | Opérande 2 | Résultat | |
|---|---|---|---|---|---|---|
| a | b | a ∧ b | a | b | a * b | |
FAUX
|
FAUX
|
FAUX
|
0 | 0 | 0 | |
FAUX
|
VRAI
|
FAUX
|
0 | 1 | 0 | |
VRAI
|
FAUX
|
FAUX
|
1 | 0 | 0 | |
VRAI
|
VRAI
|
VRAI
|
1 | 1 | 1 |
Illustration
[modifier | modifier le code]L'illustration suivante explique la fonction logique ET[3].
Les deux opérandes booléens, « a » et « b », sont simulés par des interrupteurs de type NO (normalement ouvert). La fonction ET est simulée par le montage en série des deux interrupteurs. Le résultat de la fonction est simulé par une lampe.
Une lampe s'allume (résultat VRAI) si l'on appuie (ferme le circuit) sur « a » (valeur VRAI) ET « b » (valeurVRAI) et uniquement dans ce cas-là.


Symbole
[modifier | modifier le code]Symbole européen
[modifier | modifier le code]Symbole ANSI
[modifier | modifier le code]Exemple d'utilisation
[modifier | modifier le code]En électronique
[modifier | modifier le code]La fonction logique ET est facilement réalisable avec deux diodes et une résistance[4].
Le circuit intégré 7408 intègre quatre portes logiques du type ET[5].
Il est à noter que les circuits intégrés ne produisent pas une sortie correspondant au résultat logique de façon instantanée. Ce temps de propagation au travers d'un circuit peut être mis à profit. Ainsi, si une des deux entrées est inversée par une porte NON, techniquement, les deux entrées de la porte ET devenant opposées produiront constamment une valeur fausse. Mais si le signal d'entrée passe de faux (bas) à vrai (haut), comme la porte NON prendra quelques nanosecondes pour inverser sa sortie actuelle du niveau vrai (haut) à un niveau faux (bas), pendant un court laps de temps, les deux entrées seront à vrai et la sortie de la porte ET sera brièvement à un niveau vrai (haut). Cet arrangement, dynamiquement, produit un détecteur de passage du signal (horloge ou autre) d'un niveau bas à un niveau haut. Pratiquement, trois portes NON peuvent être requises pour que le « retard » du signal, alors de trois fois le temps de propagation, soit suffisamment long pour que la porte ET puisse le reconnaître et ainsi passer très brièvement à un état haut. Un détecteur du passage d'un niveau haut à un niveau bas est également réalisable simplement en niant le signal original avant de le présenter à l'arrangement qu'on vient de présenter.[réf. souhaitée]
Si on relie la sortie d'une porte ET à une de ses entrées, admettant que cette porte est initialisée avec son entrée libre ainsi que sa sortie tous deux à un niveau haut, cette porte se verrouille à un niveau bas dès que son entrée libre passe à un niveau bas, et ce, même si cette entrée libre repasse à un niveau haut par la suite. Ce genre d'arrangement permet donc d'être une mémoire d'incident historique, par exemple, ce que la logique combinatoire ne permet pas de considérer, n'impliquant pas « le temps » dans son domaine d'analyse. Il existe néanmoins une logique temporelle, de nature assez différente à ce qui est ici évoqué.[réf. souhaitée]
En informatique
[modifier | modifier le code]Dans le langage C et ses dérivés (comme le C++), l'opérateur "ET" est nommé « && » lorsque les paramètres et le résultat sont des booléens[6],[7], et « & » lorsque les paramètres et le résultat sont des champs de booléens[7].
Notes et références
[modifier | modifier le code]- JP. Zanotti, « Mathématiques pour l'informatique : CHAPITRE 3. Calcul booléen »
, sur zanotti.univ-tln.fr, (consulté le )
- Germain Becker, Lycée Emmanuel Mounier, Angers, « 1NSI - Booléens : opérateurs et portes logiques »
, sur info-mounier.fr, (consulté le )
- ↑ « Client Challenge », sur fr.scribd.com (consulté le )
- ↑ « Les Fonctions Logiques à Diodes - ET - NAND - OR - NOR - NON »
, sur electronique-et-informatique.fr (consulté le )
- ↑ (en-US) signetics :: dataBooks :: 1972 Signetics Digital 54 74 TTL Series (lire en ligne)
- ↑ « Tests et conditions - Le langage C • Bibliothèque • Zeste de Savoir », sur Zeste de Savoir, (consulté le )
- Anne Canteaut, « Programmation en langage C »
[PDF], sur rocq.inria.fr (consulté le )
Liens externes
[modifier | modifier le code]
