INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine

La page est créée Fabien Mallet
 
CONTINUER À LIRE
INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
École Nationale Polytechnique de
Info1 : UEM11
 Constantine

 INTRODUCTION À
 L’INFORMATIQUE
 Dr. Mohamed Mahdi BENMOUSSA
INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
Contrat

Assiduité durant le cours ou le TD
Révision du cours pour une meilleure compréhension du TD
Respect mutuel entre l’enseignant et les étudiants
Non utilisation de téléphones portables durant le cours quelque soit la raison
Absence non justifié durant le cour ou le TD trois fois  exclusion
Durée de retard permise 10 minutes
10 minutes de questions durant chaque début de cours
Aucune limite de questions pour la compréhension du cours
Cours disponible à chaque mise à jour dans le site de l’école

 2
INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
Plan

I. Composition d’un ordinateur
II. Représentation des nombres
III. Algèbre de Boole
IV. La machine de Von Neuman
V. Introduction à l’algorithmique

 3
INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
Composition d’un ordinateur

Définition
Historique sur l’informatique et l’ordinateur
Types d’ordinateurs
Composants matériels d’un ordinateur
Compostant logiciel d’un ordinateur

 4
INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
Composition d’un ordinateur

 Définition et historique

Informatique : science du traitement automatique et rationnel de l’information
Les fondements de l’informatique remontent à loin même à la préhistoire
Plusieurs générations d’évolutions
Plusieurs chercheurs et scientifiques : Wilhelm Schickard (horloge pour les calculs),
 pascal (pascaline pour l’addition et la soustraction), Falcon (machine à tisser avec
 cartes perforées), Babbage (ordinateur), John Von Neuman (architecture utilisée
 jusqu’à aujourd’hui), …

 5
Composition d’un ordinateur

 Qu’est ce qu’un ordinateur ?
  Une machine qui permet d’exécuter des programmes, des instructions, etc
  Une machine qui est capable de traiter, coder et communiquer l’information

 Structure d’un ordinateur

 Mémoire centrale

 Unité centrale Système de bus (transport de l’information)
 de traitement
 des données

 Unités
 Unités
 de
 d’entrée Unités de stockage sortie
 6
Composition d’un ordinateur

Plusieurs types d’ordinateurs existe selon :
  Domaine d’utilisation (personnel, professionnel, familiale, …)
  Performances (vitesse de traitement, capacité de stockage, qualité graphique, …)
  Architecture (compatible PC, macnitosh, …)
  Taille (ordinateur de poche, pc portable, PC de bureau, serveur, …)

Chaque personne physique ou morale choisit le meilleur ordinateur selon ses
 paramètres en tenant compte des coûts engendrés.

 7
Composition d’un ordinateur

Un ordinateur possèdes des composants
 principaux et est muni de périphériques d’entrée
 et de sortie (intégré ou externe) comme par
 exemple : souris, clavier, etc.
La plus part des ordinateurs d’aujourd’hui utilise
 l’architecture de Von Neuman
Un ordinateur de bureau comporte un partie
 centrale et des périphériques ayant des
 fonctions et rôles diverses.

 8
Composition d’un ordinateur

Le boitier central contient la carte mère où sont placés
 les composants essentiels au fonctionnement d’un
 ordinateur et qui sont :
  Le processeur (ou microprocesseur)
  BUS
  La mémoire
  Le disque dur
  Les lecteurs (CD, DVD, disquette, …)
  Les interfaces d’entrée / sortie (graphique, son, réseau
 , …)
  Logiciel

 9
Composition d’un ordinateur

 Processeur (ou microprocesseur)
Le processeur (CPU : contral processing unit), est le cerveau d’un ordinateur
Commande les différentes composantes de l’ordinateur et exécute des opérations de
 calculs
Point de vue matériel, c’est un circuit électronique (puce) placée dans un socle et
 accompagné d’un ventilateur pour le refroidissement de ce dernier
La vitesse du processeur est calculée en nombre
 d’impulsions par seconde (hertz)
Plusieurs fabriquant de processeurs : Intel, AMD, …
Rapidité du traitement ainsi que mémoire interne

 10
Composition d’un ordinateur

 BUS

Les différentes composantes d’une carte mère sont reliées physiquement par des
 pistes (lignes) électriques appelées bus
Tout système à microprocesseur doit contenir les bus suivants :
  Bus de données : permet la circulation des données entre les composantes de la machine
  Bus d’adresse : véhicule les adresses des cases mémoires et des périphériques sollicitées
 par le microprocesseur
  Bus de commandes : véhicule l’ordre à exécuter (instruction de lecture, écriture, etc). Ce
 bus est aussi utilisé pour le contrôle du bon fonctionnement des composantes.

 11
Composition d’un ordinateur

 Mémoire
 Mémoire centrale : comporte les données et les programmes en cours d’exécution durant le
 fonctionnement de l’ordinateur

 Elle comporte trois types : RAM, ROM et mémoire cache

  La RAM (random acess memory) est une mémoire volatile. Les données et programmes
 sont remplacés au besoin et sont perdus dans le cas où l’ordinateur est redémarré ou
 éteint. Mémoire rapide et utilisée souvent par le processeur (mémoire vive

  La ROM (read only memory) est une mémoire morte à lecture seule. Les informations du
 lancement d’un ordinateur ainsi que le bios (basci input output system) sont stockés
 dedans. Elle comporte une petite batterie pour maintenir ces informations.

  La mémoire cache est une mémoire plus rapide que la RAM avec une capacité très petite.
 Liée au processeur, elle comporte les données utilisées souvent durant le fonctionnement
 de l’ordinateur

 12
Composition d’un ordinateur

 ROM
 RAM

 Mémoire cache
 13
Composition d’un ordinateur

 Mémoire secondaire : comporte les fichiers, les installations des applications à exécuter. La
 mémoire secondaire relative le plus à l’ordinateur est le disque dur. Il est raccordé à la carte
 mère à l’aide d’une nappe et d’un câble d’alimentation (d’autres types de mémoire secondaire
 existe tels que : CD, DVD, clé usb, etc)

 Une mémoire idéale serait une mémoire de grande capacité, permettant de stocker un
 maximum d’informations et possédant un temps d’accès très faible

 14
Composition d’un ordinateur

 Périphériques et cartes d’extension

 Cartes graphiques : peut être intégré à la carte mère ou externe. Son rôle est d’effectuer des
 calculs nécessaires pour l’affichage des données sur écran. Elle comporte sa propre mémoire
 ainsi que son propre processeur (affichage, jeux vidéos, etc)

 Périphériques d’entrée : des éléments permettant l’entrée des données pour traitement au seins
 de l’ordinateur. Par exemple : clavier, souris, scanner, etc

 Périphériques de sortie : des éléments permettant l’exposition des données ou des résultats à
 l’utilisateur à partir de l’ordinateur. Par exemple : l’écran, les imprimantes, etc

 15
Composition d’un ordinateur

 Software (logiciel)
 Un ordinateur ne peut fonctionner sans programme et on distingue :

  Système BIOS, qui est couche en relation avec les périphériques d’entrée et de sortie, et en
 gérant également les paramètres de l’ordinateur

  Système d’exploitation, qui gère à la fois le matériel mais également les applications, les
 données, etc. Par exemple : Windows, Linux, Unix, Android, Macintosh

  Les applications utilisées par l’utilisateur tels que : le traitement de texte, tableur, jeux
 vidéos, etc

  Les applications utilitaires tels que : les antivirus, firewall, outils de récupération des fichiers,
 etc

 16
Représentation des nombres

 Un ordinateur manipule des données

 Besoin de coder et représenter ces données, pouvant être
  De nature différente : nombres, chaînes de caractères, des informations de tout genre
  De taille différente : taille fixe de x chiffres (numéro de téléphone, code postal, …),

 Plusieurs bases de codage possibles :
  Base 10 (décimale) :
  Base 24 : heures
  Base 60 : minutes, secondes, degrés
  Base 12 : douzaine

 Bases les plus utilisées
  Pour les êtres humains : base décimale
  Pour un ordinateur
  Base binaire (2) et dérivées : base hexadécimale (16) ou base octale (8)
  Origine d’utilisation du binaire : absence ou présence de courant électrique (0 ou 1) 17
 comme base de codage
Représentation des nombres

 Historique
 Intérêt : codage des nombres dans un but de calcul

 Apparition du calcul : préhistoire (comptage avec les cailloux et les doigts), calcul du latin

 Pour une base B, il y a B symboles différents (les chiffres de cette base)
  Base 10 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
  Base 2 : 0, 1 (un chiffre = un bit (binary digit))
  Base 8 : 0, 1, 2, 3, 4, 5, 6, 7
  Base 16 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F

 Dans une base B, un entier naturel N s’écrit sous la forme ( ) = −1 … 1 0(avec qui est un
 des B chiffres de la base

 Exemples :
  Base décimale : 1234
  Base binaire : 11001
  Base hexadécimale : 1C04 18
Représentation des nombres

 Base B vers décimal (méthode du polynôme)
 Valeur en décimal (base 10) d’un entier naturel −1 1 … 0
 codé dans une base 

 + −1 −1 + 1 1 … 0 0

 En prenant la valeur décimale de chaque chiffre 

Exemples :

 (1234)10 = 1 × 103 +2 × 102 +3 × 101 + 4 × 100

 (11001)2 = 1 × 24 +1 × 23 +0 × 22 + 0 × 21 + 1 × 20

 Remarque : il y a également la méthode de Horne pour faire le
 changement vers la base décimal
 19
Représentation des nombres

 Décimal vers base B

 On procède par une série de divisions entières par 

 Division du nombre décimal par : donne une valeur 0 et un reste 0

 On divise 0 par B : donne 1 et reste 1

 On recommence pour 1 et ainsi de suite

 Quand < , c’est fini, le résultat de la prochaine division donnera 0

 ( ) = −1 … 1 0

 20
Représentation des nombres

 Décimal vers base B
 Exemple : (1234)10 en décimal
  1234 ÷ 10 = 123 4
  123 ÷ 10 = 12 3
  12 ÷ 10 = 1 2
  1 < 10 donc on arrête
  Résultat 1234

 21
Représentation des nombres

 Décimal vers base B
 Exemple : (25)10 en binaire
  25 ÷ 2 = 12 1
  12 ÷ 2 = 6 0
  6 ÷ 2 = 2 0
  3 ÷ 2 = 1 1
  1 < 2 donc on arrête
  Résultat (11001)2

 22
Représentation des nombres

 Décimal vers base B
 Exemple : (7172)10 en hexadécimal
  7172 ÷ 16 = 448 4
  448 ÷ 16 = 28 0
  28 ÷ 16 = 1 12 = 
  1 < 16 donc on arrête
  Résultat (1 04)16

 23
Représentation des nombres

 Cas particuliers
 Conversion du binaire à l’octal/hexadécimal ou inverse

 1 chiffre octal = un groupe de 3 chiffres binaires

 1 chiffre hexadécimal = un groupe de 4 chiffres binaires

 (000)2 = 0, (001)2 = 1 … (110)2 = 6, (111)2 = 7, avec 3 bits on code les 8 chiffres de la base
 octale

 (0000)2 = 0, (0001)2 = 1 … 1110 2 = 14 = , 1111 2 = 15 = , avec 4 bits, on code les 16
 chiffres de la base hexadécimale

 24
Représentation des nombres

 Cas particuliers
Exemple : (10110001101)2 en octal

 On regroupe par groupes de 3 bits : 010 110 001 101(on rajoute des zéros au début au besoin)

 (010)2 = 2, (110)2 = 6, (001)2 = 1, (101)2 = 5

 (10110001101)2 = (2615)8

Exemple : (10110001101)2 en hexadécimal

 On regroupe par groupes de 4 bits : 0010 1000 1101

 (0101)2 = 5, (1000)2 = 8, (1101)2 = 13=D

 (10110001101)2 = (58 )16
 25
Représentation des nombres

 Cas particuliers
Exemple : (254)8 en binaire

 2 = (010)2 , 5 = (101)2 , 4 = (100)2

 On concatène dans l’autre base ces groupes de 3 bits : (254)8 = (10101100)2

Exemple : ( 46 )16 en binaire

 = 13 = (1101)2 , 4 = (0100)2 , 6 = (0110)2 , = 12 = (1100)2

 On concatène dans l’autre base ces groupes de 4 bits : ( 46 )16 = (1101010001101100)2

 26
Représentation des nombres

 Opérations arithmétiques
Addition et soustraction en binaire

 En binaire, la table d’addition en binaire est la suivante :
 0 + 0 = 0
 0 + 1 = 1
 1 + 0 = 1
  1 + 1 = 0 (1)

Exemple :

 27
Représentation des nombres

 Opérations arithmétiques
Addition et soustraction en binaire

 En binaire, la table de soustraction en binaire est la suivante :
 0 − 0 = 0
  0 − 1 = 1 10 − 1 = 1 1
 1 − 0 = 1
 1 − 1 = 0

Exemple :

 28
Représentation des nombres

 Opérations arithmétiques
Multiplication et division en binaire

 En binaire, la table de multiplication en binaire est la suivante :
 0 × 0 = 0
 0 × 1 = 0
 1 × 0 = 0
 1 × 1 = 0

Exemple :

 29
Représentation des nombres

 Opérations arithmétiques
Multiplication et division en binaire

 En binaire, la table de division en binaire est la suivante :
  0/0 = 
  0/1 = 0
  1/0 = 
  1/1 = 1

Exemple :

 30
Représentation des nombres

 Opérations arithmétiques
Addition et soustraction en octale

Exemple :

 43658 + 4518 = 50368 3478 − 2718 = 0568

 31
Représentation des nombres

 Opérations arithmétiques
Multiplication et division en octale

Exemple :

 5 x 3 = 15 (15 = 178)

 32
Représentation des nombres

 Le débordement ou overflow
 Le débordement intervient lorsque le résultat de l’opération dépasse le nombre de chiffres utilisé

 Exemple d’additions de deux nombres en binaire et en octal

 33
Représentation des nombres

 Codage des entiers relatifs

 Un entier relatif est un entier pouvant être négatif

 Il faut coder le nombre d’une manière à faire la différence entre le positif et le négatif

 Il y a trois méthodes :
  Code binaire signé (par signe et valeur absolue)
  Code complément à 1
  Code complément à 2

 34
Représentation des nombres

 Codage des entiers relatifs : binaire signé
 Chaque circuit électronique digitale ne peut enregistrer que des 0 ou des 1 mais pas de signes
 + Ou –

 Réserver un bit pour indiquer le signe d’un nombre en binaire

 Concept du « bit du poids le plus fort » :
  Si le bit le plus fort = 1 alors le nombre est négatif
  Si le bit le plus fort = 0 alors le nombre est positif

 Les autres bits codent la valeur absolue du nombre

 Exemple : sur 8 bits, coder les nombres -24n -33 et -128 en (binaire signé)

 -24 est codé en binaire signé par : 10011000

 -33 est codé en binaire signé par : 10100001

 -128 est hors limite car il nécessite 9 bits au minimum 35
Représentation des nombres

 Codage des entiers relatifs : complément à 1
 Le code complément à 1 est aussi appelé complément logique ou complément restreint
 Le bit le plus significatif est utilisé pour représenter le signe du nombre :
  Si le bit le plus fort = 1 alors nombre négatif
  Un nombre négatif est codé en inversant chaque bit de la représentation de sa valeur
 absolue : remplacer tous les 9 par des 1 et tous les 1 par des 0
  Si le bit le plus fort = 0 alors nombre positif
  Un nombre positif est codé de la même façon qu’en binaire pure
 Exemple :
  Sur 8 bits : +0 = 00000000 / -0 = 11111111
  -24 = 11100111
  -33 = 11011110
  +12 = 0001100
  -100 = 10011011
  +100 = 01100100
 36
Représentation des nombres

 Codage des entiers relatifs : complément à 2

 Le code complément à 2 est aussi appelé complément vrai ou complément arithmétique
  Un nombre positif est codé de la même manière qu’en binaire pure
  Un nombre négatif est codé en ajoutant la valeur 1 à son complément à 1

 Exemple :
  -33 = 11011111
  +12 = 00001100
  -100 = 10011100
  +100 = 01100100

 37
Représentation des nombres

 Codage des nombres réels
 La représentation d’un nombre réel à virgule fixe N,

 Etant donné une base b, un nombre N est représenté, en format virgule fixe par :
  −1 est le chiffre de poids fort
  − est le chiffre de poids fort
  N est le nombre de chiffre avant la virgule
  M est le nombre de chiffre après la virgule

 38
Algèbre de Boole

 Introduction
 L’algèbre de Boole (créée par George Boole) est un moyen très utilisé pour l’élaboration des
 circuits électroniques dans le domaine de l’informatique

 Un circuit électronique admet des données en entrée qui sont traitées pour générer des sorties
 (résultats)

 Les sorties correspondent à des fonctions à une ou plusieurs variables. Le circuit électronique a
 pour but de faire les opérations d’addition, de décodage, etc

 39
Algèbre de Boole

 Introduction
 Il existe deux types de circuits électroniques :
  Les circuits combinatoires dont le résultat ne dépend que des entrées
  Les circuits séquentiels dont le résultat dépend des entrées et des sorties obtenues à des
 temps différents

 Exemples de circuits Exemples de circuits séquentiels
 combinatoires
 -Codeur -Bascules
 -Décodeur -Registres à décalage
 -Multiplexeur -Compteurs
 -Comparateur

 40
Algèbre de Boole

 Introduction
 Exemple de circuit combinatoire : demi-additionneur monté à l’aide des portes logiques ET et
 XOR

 41
Algèbre de Boole

 Les variables et les fonctions logiques
 Une variable logique (booléenne) est une variable qui peut prendre soit la valeur 0 ou 1 :

 OUI VRAI(TRUE) 1 Niveau HAUT
 NON Faux (FALSE) 0 Niveau Bas

 Exemple : Variable A qui représente l’état d’un interrupteur
  L’interrupteur est ouvert : A = 1
  L’interrupteur est fermé : A = 0

 42
Algèbre de Boole

 Les variables et les fonctions logiques
 Une fonction logique est une variable logique dont la valeur (0 ou 1) dépend d’autres variables
 logiques qui sont reliées à l’aide d’opérateurs logiques

 Il existe trois opérateurs logiques de base : NON, ET, OU et d’autres qui peuvent aussi être
 utilisés pour optimiser les circuits logiques : XOR, NAND, NOR, XNOR, …

 Pour n variables utilisées par une fonction donnée, il y a 2 combinaisons possibles pour les
 valeurs et de ces variables. Ces combinaisons ainsi que la valeur de la fonction sont
 représentées dans la table de vérité

 , = . + . 

 43
Algèbre de Boole

 Les variables et les fonctions logiques
 Les opérateurs logiques de base sont : NON, ET et OU

 D’autres opérateurs sont utilisés pour optimiser les circuits logiques : XOR (ou exclusif), NAND,
 NOR, XNOR (NON XOR)

 NON (négation) : est un opérateur unaire utilisé pour inverser la valeur d’une variable

 44
Algèbre de Boole

 Les variables et les fonctions logiques
 La multiplication (produit) logique ou conjonction

 Elle est appliquée sur deux variables booléennes et est symbolisée par ET (AND), ou un point
 «.»

 Elle n’est vraie que si les deux variables sont vraies

 45
Algèbre de Boole

 Les variables et les fonctions logiques
 Exemple sur la multiplication logique : la lampe ne s’allume que si les deux interrupteurs A et B
 sont à ON, donc A est vrai et B est vrai

 46
Algèbre de Boole

 Les variables et les fonctions logiques
 L’addition (somme logique) ou disjonction lie deux variables logiques par l’opérateur OU (OR)
 ou « + »

 Le OU fait la disjonction entre deux variables

 Elle n’est fausse que si les deux variables sont fausses

 47
Algèbre de Boole

 Les variables et les fonctions logiques
 Exemple sur l’addition logique : la lampe s’allume dans tous les cas sauf si les deux
 interrupteurs A et B sont à OFF

 48
Algèbre de Boole

 Propriétés

 + = 1

 = 

 . = 0

 + = 

 . = 

 + 0 = 

 . 1 = 

 + 1 = 1

 . 0 = 0
 49
Algèbre de Boole

 Propriétés
 Commutativité
  . = . / + = + 

 Distributivité
  . + = . + . 
  + . = ( + ). ( + )

 Associativité
  . . = ( . ). 
  + + = ( + ) + 

 Lois d’absorption
  + . = + . + = . + = + . = 1 + = . 1 = 
  . + = . + . = + . = . 1 + = . 1 = 

 50
Algèbre de Boole

 Propriétés

 . ( + ) = . 

 + . = + 

 Théorème de Morgan

 + = . 

 . = + 

 Exercice : établir la table de vérité pour vérifier le théorème de Morgan

 51
Algèbre de Boole

 Opérateurs particuliers

 Ou exclusif (XOR) : la fonction est vraie quand A et B sont dans des états exclusifs.

 , = ⨁ = . + . 

 ⨁ 
 0 0 0
 1 0 1
 0 1 1
 1 1 0

 52
Algèbre de Boole

 Opérateurs particuliers

 NAND (NON ET) : est le Non de la fonction ET. Elle est fausse seulement quand A et B sont vrais
 (contrairement au ET logique)

 , = . = ↑ 

 . 
 0 0 1
 1 0 1
 0 1 1
 1 1 0

 53
Algèbre de Boole

 Opérateurs particuliers

 NOR (NON OU) : est le Non de la fonction OU. Elle n’est vraie que si A et B sont faux (contrairement
 au OU logique)

 , = + = ↓ 

 + 
 0 0 1
 1 0 0
 0 1 0
 1 1 0

 54
Algèbre de Boole

 Opérateurs particuliers : propriétés

 NAND

  . 0 =1
  . 1 = 
  . = . 
 ( . ). = . ( . )

 55
Algèbre de Boole

 Opérateurs particuliers : propriétés

 NOR  + 0 = 
  + 1 = 0
  + = + 
  + + = + ( + )

 Le NAND et le NOR sont dits opérateurs universels car ils nous permettent d’exprimer toutes les
 expressions logiques basées sur les autres opérateurs
 56
Algèbre de Boole

 Opérateurs particuliers : propriétés

 Les opérateurs NON, ET et OU exprimés à l’aide du NOR

 = + 

 + = ( + ) + ( + )

 . = . = + = ( + ) + ( + )

 Les opérateurs NON, ET et OU exprimés à l’aide du NAND

 = . 

 + = + = . = ( . ). ( . )

 . = . = ( . ). ( . ) 57
Algèbre de Boole

 Portes logiques

 Représentation des portes logiques : une porte logique est un composant électronique élémentaire
 qui permet de réaliser une fonction booléenne.

 58
Algèbre de Boole

 Portes logiques

 Nombre d’entrées des portes logiques

 Portes à une entrée : inverseur (NON)

 Portes à deux entrées : ou exclusif (XOR)

 Portes à deux ou plusieurs entrées : ET, OU, NAND et NOR

 59
Algèbre de Boole

 Portes logiques

 Logigramme

 Un logigramme est un schéma électronique composé de portes logiques pour exprimer une fonction
 logique (Porte logique = opérateur logique)

 Exemple de logigramme : demi-additionneur monté à l’aide des portes logiques ET et XOR
 60
Algèbre de Boole

 Portes logiques

 Exemple 1 : sois le logigramme suivant

 Son expression logique est : = + = . 

 Ce logigramme peut être simplifié pour qu’il soit représenté seulement avec la porte ET
 61
Algèbre de Boole

 Portes logiques

 Exemple 1 : comparateur de nombres à 3 bits. Soit = 0 1 2 et = 0 1 2

 = est vraie si ∀ = => = ↔ ( ⨁ )
 = 
 0 0 1
 1 0 0
 0 1 0
 1 1 1

 Dans le diagramme, on va faire figurer deux portes : le OU exclusif et le NOR

 62
Algèbre de Boole

 Portes logiques

 63
Algèbre de Boole

 Représentation d’une fonction logique

 Forme d’une fonction logique

 Forme somme : = . + . + 

 Forme produit : = + . ( + )

 Forme somme canonique : somme de termes où chaque variable doit être présente dans tous
 les termes qu’on appelle « mini-terme » et que les variables soient reliées avec l’opérateur ET.

 Forme produit canonique : produit de termes où chaque variable doit être présente dans tous les
 termes qu’on appelle « max-terme » et que les variables soient reliées avec l’opérateur OU.

 64
Algèbre de Boole

 Représentation d’une fonction logique

 Exemple de forme somme canonique : somme de mintermes

 Exemple de forme produit canonique : produit de maxtermes

 65
Algèbre de Boole

 Représentation d’une fonction logique

Table de vérité d’une fonction logique

 La table de vérité donne les différentes valeurs que peut prendre une fonction « F » pour
 chaque combinaison des valeurs de ses variables

 On peut facilement déduire une fonction sous la forme canonique à partir de sa table de vérité :
  Faire la somme des mintermes où la valeur de la fonction est égale à 1
  Calculer ( ) pour obtenir la somme de mintermes là où ( = 1). Puis complémenter
 (inverser) pour obtenir « F » sous forme de produit des maxtermes.

 66
Algèbre de Boole

 Représentation d’une fonction logique
 Exemple

 A B C X
 0 0 0 0
  On fait la somme des mintermes pour X=1
 0 0 1 1
  Somme de produit
 0 1 0 1
  = . . + . . + . . 
 0 1 1 0  Produit de somme
 1 0 0 0  = . . + . . + . . + . . + . . 
 1 0 1 1  = + + . + + . + + . + + . + + 
 1 1 0 0
 1 1 1 0

 67
Algèbre de Boole

 Représentation d’une fonction logique
 Si une fonction logique n’est pas canonique, on utilise les règles de l’algèbre de boole pour rajouter
 les variables manquants pour former des mintermes ou des maxtermes

 Les règles à utiliser sont :
  La multiplication d’un terme avec une expression qui vaut 1 ( + )
  L’addition d’un terme avec une expression qui vaut 0 ( . )

 La distribution pour répartir les variables manquantes et les rendre disponibles dans chaque terme

 Exemple 1 : forme canonique disjonctive

 , = + = . + + . + = . + . + . + . = . + . + . 

 Exemple 2 : forme canonique conjonctive

 , = + + + = + + . . + + = + + . + + . ( + + )
 68
Algèbre de Boole

 Représentation d’une fonction logique
 Afin d’optimiser les coûts et la réalisation des circuits logiques, nous avons généralement recours à
 deux méthodes pour simplifier les fonctions logiques :
  La méthode algébrique
  La méthode de karnaugh

La méthode algébrique :
  Dans cette méthode, on applique les règles et les lois sur les opérateurs logiques pour
 simplifier les fonctions logiques (moins de termes, moins de variables)

 Exemple : (théorème slide 51)
  . . + . . + . . . = . . + + . . . = . + . . . + . + . . =
 . + . = . + . . 

 69
Algèbre de Boole

 Représentation d’une fonction logique
La méthode de Karnaugh :

 Cette méthode consiste à regrouper tous les termes adjacents formant des groupes de 2 (2,4,8, … )
 où la fonction vaut 1.

 Deux termes adjacents ne diffèrent que par l’état d’une seule variable

Exemple : pour les valeurs 0 et 1 de A et B

 01 est adjacent à 11 et 00 est adjacent à 01

 01 et 10 ne sont pas adjacents car deux états sont différents pour A et B

 Les trois cases bleues (000,110,011) sont adjacentes à la

 case rouge (010)Un seul bit qui change de valeur entre

 la case rouge et ses cases adjacentes
 70
Algèbre de Boole

 Représentation d’une fonction logique
 La méthode de Karnaugh peut s’appliquer aux fonctions logiques de 2,3,4,5 et 6 variables

 Si N est le nombre de variables de la fonction, le tableau de Karnaugh comportera 2 cases

 71
Algèbre de Boole

 Représentation d’une fonction logique

 72
Algèbre de Boole

 Représentation d’une fonction logique

 73
Algèbre de Boole

 Représentation d’une fonction logique
 Passer de la table de vérité à la table de Karnaugh

 Pour chaque combinaison qui représente un minterme lui correspond une case dans le tableau qui
 doit être mise à 1

 74
Algèbre de Boole

 Représentation d’une fonction logique
 Passer de la forme canonique à la table de Karnaugh
 Si la fonction logique est donnée sous la forme somme canonique : pour chaque terme lui correspond
 une case de 1
 Si la fonction logique est donnée sous la forme produit canonique : pour chaque terme lui correspond une
 case de 0
Remarque
 Quand on fait des regroupements de 2,4,8,16 cases, on peut avoir des cases qui appartiennent à
 plusieurs regroupements à la fois
 Dans un regroupement
  Qui contient un seule terme on peut pas éliminer de variables
  Qui contient deux termes on peut éliminer une variables (celle qui change d’état)
  Qui contient 4 termes on peut éliminer 2 variables
  Qui contient 8 termes on peut éliminer 3 variables
  Qui contient 16 termes on peut éliminer 4 variables
 L’expression logique finale est la somme des regroupements simplifiés 75
Algèbre de Boole

 Représentation d’une fonction logique

 76
Algèbre de Boole

 Représentation d’une fonction logique

 77
Algèbre de Boole

 Représentation d’une fonction logique

 78
Algèbre de Boole

 Représentation d’une fonction logique

 79
Algèbre de Boole

 Représentation d’une fonction logique

 80
Algèbre de Boole

 Représentation d’une fonction logique

Cas indéfinis

 Il arrive qu’une fonction n’ait pas de valeur pour certaines combinaisons de ses variables. Dans ce
 cas, il faut mettre un X dans la table de vérité et dans la case du tableau de Karnaugh

 Pour faire les simplifications, on peut regrouper le X avec des cases adjacentes qui sont à 1. Mais,
 s’il n’y a pas de 1, il ne faut regrouper les X tous seuls

 81
Algèbre de Boole

 Représentation d’une fonction logique

 82
Références

Module informatique INF1, Fenineche Khadidja, ENPH
Architecture de l’ordinateur (voyage au centre de votre unité centrale, L.Ghalouci
Chapitre 2 : représentation des nombres, ENPC
Codage de l’information, Dr. Bouzoubia Samira

 83
Vous pouvez aussi lire