INTRODUCTION À L'INFORMATIQUE - École Nationale Polytechnique de Constantine - ENP Constantine
←
→
Transcription du contenu de la page
Si votre navigateur ne rend pas la page correctement, lisez s'il vous plaît le contenu de la page ci-dessous
École Nationale Polytechnique de Info1 : UEM11 Constantine INTRODUCTION À L’INFORMATIQUE Dr. Mohamed Mahdi BENMOUSSA
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
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
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
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