Introduction à la programmation (420-PK2-SL) cours 1

Slides:



Advertisements
Présentations similaires
L’électronique numérique
Advertisements

Architecture de machines Codage des informations
« 1.5. Les fonctions logiques »
Le codage de l ’information
Architecture des Ordinateurs
Architecture des Ordinateurs
TRANSMISSION DES DONNEES INFORMATIQUES
Architecture de machines Eléments de logique
Présentation Unité de codage
ALGEBRE DE BOOLE Mohamed Yassine Haouam
Le binaire L’historique.
Le codage des nombres en informatique
L’ordinateur Aspect théorique
Partie 1 Etude de l'existant
Partie Informatique Algorithmique Introduction A. LOTFI
RESUMES Module II1 SOMMAIRE CYCLE 1 : Saisir – Afficher – Données
Le cours de F6KGL présenté par F6GPX
Nature, numération, code
Le Langage Binaire.
Le codage des nombres en informatique
Algorithmique et programmation Informatique Cours 9 12/11/2001.
CHAINE DE CARACTERES : Définition :
Principes de programmation
Chapitre 1 Le Sens des nombres
Annexe A: Numérotation binaire
Types de données fondamentaux
Informatique, Ordinateur & Programme ...
Représentation des informations
Codage des nombres réels avec la norme IEEE-754
Chapitre 3 :Algèbre de Boole
Le codage des nombres binaires
Le codage des nombres en informatique
L’écriture des grands nombres: les puissances de 10
Un survol du language C.
Codage des nombres en informatique : le système binaire.
REPRESENTATION DE L’INFORMATION
Rappel - analyse et synthèse de fonctions combinatoires
Le codage des nombres en informatique
1 INFOR 101 Chapitre 4 Marianne Morris. 2 Révision de chapitre 3 Algorithmes Sequential Search Selection Sort Binary Search Ordre de magnitude  (n) Mesurer.
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. tél Fax Cours Architecture des.
BASES cours 3.
Mathématiques Journal.
Introduction aux systèmes numériques
Codage de l’information
Pour Chapitre 1 – Sens de Nombres
Algèbre de Boole Définition des variables et fonctions logiques
UE MAREP Cours 1 : Algèbre de Boole et entiers naturels
Patricia Renault UPMC 2004/2005
Codage de l’information
Cours d’initiation en Informatique
Chapitre 4 La représentation des nombres.
©Pierre Marchand, Unité 2: Représentation interne des informations Objectifs: À la fin de cette unité, -vous saurez comment les caractères et les.
Chapitre 4b La représentation des nombres.
Chapitre 9 Les caractères.
Philippe Gandy - 8 septembre 2015 Basé sur les notes de cours de Daniel Morin et Roch Leclerc.
Objets et Actions Élémentaires.
Chapitre 5 La représentation des données
Les nombres à virgule flottante
Le codage des nombre en informatiques
NOTES DE COURS MATHÉMATIQUES 306
Introduction au langage C
La NUMERISATION de l’information
A. Lebrun. La base 2 Un nombre peut se représenter en base deux par une suite de 0 ou de 1. Chaque bit a un poids qui dépend de son rang Le format n impose.
Le codage des nombres en informatique
Département Informatique Codage de l’information Laurent JEANPIERRE IUT de CAEN – Campus 3.
L’électronique des ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3.
La forme exponentielle
Quelques Termes INFORMATIQUE ? ORDINATEUR ( Système Informatique)?
Algèbre de BOOLE.
Transcription de la présentation:

Introduction à la programmation (420-PK2-SL) cours 1 Gestion des applications Technologie de l’information (LEA.BW)

Plan Présentation du plan de cours Mathématique Informatique Ne sera pas matière à examen, mais très utilise pour bien comprendre le fonctionnement d’un ordinateur. Plus précisément d’un compilateur

Numérotation « humaine » Numérotation décimale : base10 Basé sur 10 symboles arabes : 0 1 2 3 4 5 6 7 8 9 Chaque symbole est appelé un chiffre La composition de plusieurs chiffres forme un nombre Les nombres permettent d’exprimer les valeurs supérieures à 9 La valeur exprimée par un nombre est déterminée par les chiffres utilisés et leur position

Base 10 ou décimale Exemple: 99910 Exemple De droite à gauche (position 0 à 2) Le premier 9 vaut 9 Le deuxième 9 vaut 90 Le dernier 9 vaut 900 Et on additionne le tout Valeur liée à un chiffre = le chiffre * baseposition Exemple 99910= 9 X 102 + 9 X 101 + 9 X 100

Numérotation « électronique » Informatique Traitement automatique de l’information L’outil de traitement est l’ordinateur L’ordinateur est un assemblage de circuits électriques L’information est codée avec 2 tensions Deux symboles suffisent 0 et 1 L’ordinateur travaille en base 2 (binaire)

Unité de mesure d’un ordinateur Un ordinateur connaît plusieurs bases de numérotation Décimale (base 10) Binaire (base 2) Octale (base 8) Hexadécimale (base 16) Prérequis pour comprendre un ordinateur Expressions de valeurs en base 2,8,10 et 16 Les changements de base 2 à 8 à 10 à 16

Base 2 ou binaire Les seuls chiffres permis sont 0 et 1 Tout comme la base 10, la position des chiffres est importante Exemple: 1102=1 X 22 + 1 X 21 + 0 X 20 = 610

Base 16 ou hexadécimale Pour les bases plus grandes que 10, les symboles utilisés comme chiffres sont les lettres majuscules de l’alphabet Ainsi en base 16 les symboles sont : 0 à 9 A à F pour 10,11, 12,13, 14 et 15 Exemple 1AFF16 = 1 X 163 + 10 X 162 + 15 X161 + 15 X 160 =691110

Base 8 ou octale Pour les bases plus petites que 10, on utilise un sous- ensemble des symboles 0 à 9. Ainsi en base 8 les symboles sont : 0 à 7 Exemple 1758 = 1 X 82 + 7 X 81 + 5 X80 = 12510

Les changements de base La conversion de nombres en base 2, 8 et 16 en base 10 se fait par multiplication Le changement de base inverse se fait par division

Les changements de base De la base 10 à la base 2, il suffit de faire une suite de division ENTIÈRE par 2 jusqu’à ce que le résultat donne 0. La valeur binaire est la concaténation (assemblage) des restes obtenus lors de chacune des divisions dans l’ordre inverse. Exemple 610 en binaire = ? 6/2 = 3 reste 0 3/2 = 1 reste 1 1/2 = 0 reste 1 Ordre inverse: 1102 1910 en binaire = ? 19/2 = 9 reste 1 9/2 = 4 reste 1 4 / 2 = 2 reste 0 2/2 = 1 reste 0 Ordre inverse : 100112

Les changements de base Pour convertir d’une base à une autre, nous pouvons convertir en base 10 préalablement Exemple Convertir 278 en base 16 2X81+7 X80 = 16 + 7 = 2310 Ensuite, convertir dans l’autre base 23/16 = 1 reste 7 1 / 16 = 0 reste 1 Donc 278 = 2310 = 1716

Les changements de base Une astuce pour convertir rapidement de la base 2 aux bases 8 et 16 Il faut regrouper les chiffres en paquets de trois pour la conversion en base 8 (23 = 8) et en paquets de quatre pour la base 16(24 = 16), de la droite vers la gauche. On comble les chiffres manquants avec des 0 Exemple Convertir 11011101110112 en base 8 001 101 110 111 011 1 5 6 7 3 156738

Les changements de base Exemple Convertir 11011101110112 en base 16 0001 1011 1011 1011 1 B B B 1BBB16

Les opérateurs arithmétiques Les opérateurs arithmétiques fonctionnent de la même façon, peu importa la base Évitez les qualificatifs de la base 10 (ce n’est pas trois cent deux)

Représentation binaire des nombres Représentation des entiers positifs On dispose de n bits On peut représenter 2n valeurs Valeur minimale: 0 Valeur maximale: 2n -1 Exemple Avec 3 bits Valeur min = 0002=010 Valeur max = 1112=710 Nombre des valeurs = 8 #Bits Min. Max. #Val. 1 2 3 4 15 16 8 255 256 32767 32768

Représentation binaire des nombres Représentation des entiers non-signés Pas d’information de signe Représenté comme un entier positif On dispose de n bits 2n valeurs : 02n-1 Exemple sur 8 bits 00000000 à 11111111 0 à 255 (28 -1) #Bits Min. Max. #Val. 1 2 3 4 15 16 8 255 256 32767 32768

Représentation binaire des nombres Représentation des entiers signées Comment représenter des valeurs négatives? Plusieurs représentations possible Signe et valeur Biaisée Complément à un Complément à deux Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Représentation Signe- Valeur On dispose de n bits 1 bit de signe n-1 bits de valeurs 2n-1 valeurs Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Représentation biaisée On dispose de n bits 2n valeurs Exemple avec 3 bits 000 111 Non signées 0 7 Biaisé: -43 Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Représentation biaisée Comment retrouver la valeur décimale représentée par l’information binaire? Changer de base: base2  base 10 Calculer la valeur du biais: 2n/2=2n-1 Soustraire le biais Exemple 000001102=-12210 000001102 = 610 Biais = 28/2 = 27 = 128 6-128 = -122

Représentation binaire des nombres Représentation complément à un On dispose de n bits Bit de gauche pour le signe 2n-1 valeurs Décompte binaire positif classique Décompte binaire négatif en valeurs complémentaires Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Représentation complément à 1 Comment retrouver la valeurs décimale représentée par l’information binaire? Déterminer le signe Si le bit de signe est 0  valeur positive Changer de base (sans considérer le bit de signe) Si le bit de signe est 1  valeur négative Faire le complément à 1 Changer tous les 1 en 0 et vice-versa Exemple 101101102=-7310 Valeur négative car 101101102 Complément à 1 : 0110110 210010012 10010012=73

Représentation binaire des nombres Représentation complément à deux On dispose de n bits Bit de gauche pour le signe 2n valeurs Décompte binaire positif classique Décompte binaire négatif en valeurs compléments à 2 Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Représentation complément à 2 Comment retrouver la valeur décimale représentée par l’information binaire? Déterminer le signe Si le bit de signe est 0  valeur positive Changer de base (sans considérer le bit de signe) Si le bit de signe est 1  valeur négative Faire le complément à 1: changer tous les 1 en 0 et vice-versa Faire le complément à 2: ajouter 1 au complément à 1 Exemple101101102 = -7410 Valeur négative car 101101102 Complément à 1: 01101102 10010012 Ajouter 1: 10010012+12=10010102 10010102=74

Représentation binaire des nombres Exemple que vaut 1112 Signe-valeur = -3 Biaisée = 3 Comp. 1: -0 (donc 0) Comp. 2: -1 Val10 Signe Valeur Biaisée Comp 1 2 3 011 111 010 110 001 101 000 100 -1 -2 -3 -4 -

Représentation binaire des nombres Nombre réel: représentation à virgule fixe La précision est fixée en choisissant un nombre de bits pour représenter la partie décimale. Exemple avec 4 bits pour la partie décimale 00011100 0001 représente la partie entière 1100 représente la partie décimale 1 X 20 + 1 X 2-1 + 1 X 2-2 1 , (1/2 + 1/4)10 1,7510 Partie entière Partie décimale 1

Représentation binaire des nombres Nombres réels: représentation à virgule flottante On utilise la notation scientifique: s est le signe (±1) M est la mantisse b est la base (b=2 pour la représentation binaire) e est pour l’exposant Exemple en base 10: 124,5 = 124,5 X 100 = 1,245 X 102 Exemple en base 2: 101,11 = 101,11 X 20 = 1,0111 X 22

Représentation binaire des nombres Nombres réels: représentation à virgule flottante Simple précision (norme IEEE-754): 32 bits 1 bit pour le signe (1: négatif, 0: positif) 8 bits pour l’exposant signé: représentation biaisée -1 (28-1=127) 23 bits pour la mantisse de la forme 1.M Permet de représenter des valeurs réelles de -1038 à 1038 ± Exposant (E) Mantisse (M) 8 bits 23 bits

Représentation binaire des nombres Nombres réels: représentation à virgule flottante Simple précision (norme IEEE-754): 64 bits 1 bit pour le signe (1: négatif, 0: positif) 11 bits pour l’exposant signé: représentation biaisée -1 (211-1=1023) 52 bits pour la mantisse de la forme 1.M Permet de représenter des valeurs réelles de -10308 à 10308 ± Exposant (E) Mantisse (M) 11 bits 52 bits

Représentation binaire des nombres Nombre réels: représentation à virgule flottante Exemple en simple précision (32 bits) : 3.510 3.510 = 11.12 = 1.11 * 21 1 bit pour le signe (1:négatif, 0:positif): 0 8 bits pour l’exposant (Biaisée - 1): 10000000 23 bits pour la mantisse: 1.112 = 1.110000…002 ± exposant mantisse 1

Représentation binaire des nombres Nombre réels: représentation à virgule flottante Exemple en simple précision (32 bits): 3510 3510 = 1000112= 1.00011 * 25 1 bit pour le signe (1:négatif, 0:positif): 0 8 bits pour l’exposant (Biaisée - 1): 10000100 23 bits pour la mantisse: 1.000112 = 1.0001100…002 ± exposant mantisse 1

Représentation binaire des nombres Nombre réels: représentation à virgules flottante Exemple en simple précision (32 bits): -6.510 -6.510 = -110.12= 1.101 * 22 1 bit pour le signe (1:négatif, 0:positif): 1 8 bits pour l’exposant (Biaisée - 1): 10000001 23 bits pour la mantisse: 1.1012 = 1.101000…002 ± exposant mantisse 1

Représentation binaire des caractères Cette catégorie de données représente Les caractères alphabétiques minuscules et majuscules Les caractères 0 à 9 Les symboles de ponctuation Les touches de contrôles du clavier (f1, f2, esc, …) Certains caractères spéciaux (nul, cloche, …)

Représentation binaire des caractères Représentation en mémoire Un code numérique est associé à chaque caractère Les codes les plus connus sont : American Standard Code for Information Interchange ASCII (8 bits) 128 caractères ISO-8859-1 (16 bits) 256 caractères Unicode (21 bits minimum) 1,114,112 caractères

Représentation binaire des caractères Représentation en mémoire C’est la valeur numérique qui est conservée en mémoire. Exemple : Le code de ‘A ’ est 6510 donc 01000001 en mémoire C’est le programmeur qui détermine si la valeur représente un nombre ou un caractère. Il faut comprendre que ‘1’ ≠ 1

Codes ASCII 1 2 3 4 5 6 7 8 9 00 nul soh stx etx eot enq ack bel bs 1 2 3 4 5 6 7 8 9 00 nul soh stx etx eot enq ack bel bs tab 01 lf vt ff rc so si dle dc1 dc2 dc3 02 dc4 nak syn etb can em sub esc fs gs 03 rs us espace !  # $ % & ‘ 04 ( ) * + , - . / 05 : ; 06 < = > ? @ A B C D E 07 F G H I J K L M N O 08 P Q R S T U V W X Y 09 Z [ \ ] ^ _ ¨ a b c 10 d e f g h i j k l m 11 n o p q r s t u v w 12 x y z { | } ~ del

Algèbre de Boole 1854 Georges Boole (1815-1864) démontre que tout raisonnement logique peut être décomposé en une suite d’opérations simples appliquées sur des données binaires Données booléennes Vrai ou Faux 1 ou 0 Opération booléennes OU ET NON Le résultat est booléen On parle d’algèbre booléenne, binaire ou logique

Réalisation électrique Implémentation électrique des opérations booléens Le ET est un circuit monté en série C= A ET B Le OU est un circuit monté en parallèle C=A OU B A B C A C B

Opération booléennes Représentation arithmétique Table de vérité Représentation algébrique Équations Représentation électrique Portes logiques A B A OU B 1 OU A+B A B A ET B 1 ET A.B A NON A 1 NON A

Fonctions booléennes Fonctions booléennes (logique combinatoire) La combinaison d’opérateurs booléens Fonction OU-EXCLUSIF(XOR) Vrai quand A et B sont différent (NON A ET B) OU (NON B ET A) Fonction NON-ET (NAND) Vrai quand A ou B sont faux Loi de deMorgan NON (A ET B) (NON A) OU (NON B) Fonction NON-OU (NOR) Vrai quand A et B sont faux NON(A OU B) (NON A) ET (NON B) A B A XOR B 1 XOR, OU-EXCLUSIF A B A NAND B 1 A B A NOR B 1 NAND, NON-ET NOR, NON-OU

Fonctions booléennes L’ordre d’évaluation est important Les opérateurs sont évalués de gauche à droite Les parenthèses et la négation sont prioritaires aux autres opérateurs (ET, OU) Par exemple: A OU B ET C != A OU (B ET C) Si A et B sont vraies et que C est fausse A OU B ET C donne faux A OU (B ET C) donne vrai

Fonction booléenne Exemple A ET NON B OU (C ET A) A B C NON B 1

Questions ? Prochain cours Jeudi prochain de 9:00 @ 13:00