80 lines
2.8 KiB
Markdown
80 lines
2.8 KiB
Markdown
CM5 Calcul booléen - Notes de cours
|
|
==========================================
|
|
|
|
|
|
Pourquoi ?
|
|
==========
|
|
|
|
Le calcul informatique se base sur des transistors. Avec des transistors, on va voir qu'on sait faire des fonctions logiques NAND, NON, NOR. Et à partir de ces constructions, on sait construire ET et OU. Et à partir de ET et OU, on sait calculer, par exemple additionner des nombres. Avec tout ça, le calcul booléen sert de base à l'informatique.
|
|
|
|
|
|
Transistors et portes
|
|
=====================
|
|
|
|
Le principe du transistor :
|
|
- 3 pattes
|
|
- Source, Drain, Grille
|
|
- Source = positif, Drain = négatif, Grille = contrôle
|
|
- Version N : ouvert si contrôle vaut 0, fermé si contrôle vaut 1 (Version P = le contraire)
|
|
- Fermé = le courant passe entre S et D
|
|
|
|
Une porte logique :
|
|
- Un assemblage de transistors
|
|
- Une fonction de plus haut niveau
|
|
- Exemple de la porte NON : 
|
|
- NAND, NOR, ET, OU, ... 
|
|
|
|
Avec des transistors, on a créé l'implémentation matérielle de la logique booléenne (ET, OU, NON, etc.)
|
|
|
|
Détails [ici](https://fr.wikibooks.org/wiki/Fonctionnement_d%27un_ordinateur/Les_transistors_et_portes_logiques).
|
|
|
|
|
|
Logique booléenne
|
|
=================
|
|
|
|
Des opérateurs de base :
|
|
- Conjonction ET (., ^, &, &&) 
|
|
- Disjonction OU (+, v, |, ||) 
|
|
- Négation NON (¬, -, !) 
|
|
- Tables de vérité
|
|
|
|
Des compositions :
|
|
- Ou exclusif XOR 
|
|
- NAND 
|
|
- NOR 
|
|
|
|
Des règles :
|
|
- Associativité
|
|
- Commutativité
|
|
- Distributivité
|
|
- Idempotence
|
|
- Éléments neutres et absorbants
|
|
- Priorité : NON > ET > OU
|
|
|
|
Théorème de De Morgan :
|
|
- ¬(a+b) = ¬a . ¬b
|
|
- ¬(a.b) = ¬a + ¬b
|
|
|
|
Détails [ici](https://fr.wikipedia.org/wiki/Alg%C3%A8bre_de_Boole_(logique))
|
|
|
|
Usages
|
|
======
|
|
|
|
Calcul
|
|
------
|
|
|
|
On peut calculer !
|
|
- XOR = additionneur 1 bit (mais sans la retenue)
|
|
- En TD, on fera un additionneur
|
|
|
|
Opérations logiques
|
|
-------------------
|
|
|
|
Conditionnelle avec &&, || : paresseux ET "synthétiques"
|
|
|
|
Opérations bit à bit
|
|
--------------------
|
|
|
|
- Opérations avec &, |, !
|
|
- Notion de masque réseau
|