Département Informatique Codage de l’information Laurent JEANPIERRE IUT de CAEN – Campus 3.

Slides:



Advertisements
Présentations similaires
Semaine 5 Couche Liaison de données Cours préparé par Marc Aubé
Advertisements

Définitions Analyse documentaire
Chapitre IV Protection contre les erreurs
Chapitre IV Protection contre les erreurs
Premier programme en C :
Architecture de machines Codage des informations
ASR4 - Mars 2006Notions de codes1 Détection et correction derreurs… … au sein de la couche 2 : liaison de données.
Le codage de l ’information
Architecture des Ordinateurs
Dpt. Télécommunications, Services & Usages Théorie de l information H. Benoit-Cattin Introduction 2. Sources discrètes & Entropie 3. Canaux discrets.
1 cours réseaux chapitre 3 la couche liaison. 2 La couche liaison Objectifs, la détection et la correction d'erreurs, le contrôle de flux, les protocoles.
TRANSMISSION DES DONNEES INFORMATIQUES
Présentation Unité de codage
Le codage des nombres en informatique
CODES.
Nature, numération, code
Codage et Protection contre les Erreurs
TRANSMISSION DES DONNEES.
Le codage des nombres en informatique
Théorie dinformation ELG3575 Introduction aux systèmes de télécommunication.
Fonction COMMUNIQUER les liaisons série
Algorithmique et programmation Informatique Cours 9 12/11/2001.
Implémentation analogique de décodeurs correcteurs d’erreurs
CHAINE DE CARACTERES : Définition :
Transcodage Binaire  Affichage BCD sur 4 bits
La logique binaire 1.
ASI 3 Méthodes numériques pour l’ingénieur
La logique binaire 1.
Informatique, Ordinateur & Programme ...
Représentation des informations
Codage des nombres réels avec la norme IEEE-754
Cours n° 2 Liaison de données et trames
Le codage des nombres en informatique
Codage des nombres en informatique : le système binaire.
Généralités sur les réseaux de transmission de données numériques
REPRESENTATION DE L’INFORMATION
Java Les primitives 1. Représentation d’éléments La représentation de n’importe quoi en informatique (chiffres, nombres, lettres, etc.) est composée de.
Sif Cours 9 n 7. Communication série u Concepts généraux u Programmation des ports séries n Le matériel u Chapitre 10 CSA u Article dans MSDN: F.
Concepts fondamentaux
Le codage des nombres en informatique
1. Introduction Le traitement informatisé de données requiert un dialogue, une communication entre l’homme et la machine, et parfois, entre plusieurs.
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.
Progression - Quelques rappels
Introduction au langage C Les entrées-sorties
Introduction aux systèmes numériques
Codes cycliques Hypothèse sur V = vocabulaire source Code linéaire - caractérisation Codage et décodage d’un code linéaire Code cyclique – caractérisation.
Cours 8 La transmission.
17/04/2017.
Introduction à la programmation (420-PK2-SL) cours 1
Codage de l’information
Cours d’initiation en Informatique
Chapitre 4 La représentation des nombres.
Chapitre 4b La représentation des nombres.
Chapitre 9 Les caractères.
Terminologie liée aux mesures
Chapitre 5 La représentation des données
Les nombres à virgule flottante
Système d’information numérique
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
Informatique et sciences du numérique
Architecture de machines Codage des informations
Représentation des nombres réels
La courbe ci-contre représente
Détection et correction des erreurs
Sylvie DELAËT 2002 Architecture des machines Bienvenus en Amphi d’Architecture des Machines.
Chapitre IV Protection contre les erreurs
Chapitre IV Chapitre IV Protection contre les erreurs Les Réseaux Informatiques 1.
Chapitre 2 : Représentation de l’information dans la machine Introduction Représentation des nombres négatifs –Signe / valeur absolue –Complément à 1 –Complément.
Transcription de la présentation:

Département Informatique Codage de l’information Laurent JEANPIERRE IUT de CAEN – Campus 3

Département Informatique2 Contenu du cours Définition Les entiers Les caractères Les codes détecteurs d’erreurs Les nombres à virgule

Département Informatique3 Définition Code : Système conventionnel de signes ou de signaux, de règles et de lois, permettant la transformation d'un message en vue d'une utilisation particulière. Exemples : Code de la route, Code postal,...

Département Informatique4 Définitions (suite) Codage : le fait de coder Coder : écrire dans un code Transcodage : opération consistant à transcrire un code dans un autre Exemples : nombres arabes  nombres romains ASCII  Unicode

Département Informatique5 Contenu du cours Définition Les entiers Les caractères Les codes détecteurs d’erreurs Les nombres à virgule

Département Informatique6 Le code de Gray Ou encore « code binaire réfléchi » Utilisation : Visualisation d’informations dynamiques Conversion de grandeurs analogiques … Avantage : Élimine les erreurs de transitions

Département Informatique7 Code de Gray : exemple BinaireBinaire ABCDEF XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX GRAYGRAY ABCDEF XXXXXXXX XXXXXXXX XXXXXXXX XXXXXXXX

Application © Département Informatique8

9 Le code BCD Binary Coded Decimal, ou décimal codé en binaire : 1 chiffre décimal  4 bits. Exemple : = BCD Avantages : Simplicité du binaire Lisibilité du décimal (pour l’homme !) Inconvénient : Les calculs nécessitent des corrections

Département Informatique10 Contenu du cours Définition Les entiers Les caractères Les codes détecteurs d’erreurs Les nombres à virgule

Département Informatique11 Les caractères Ordinateur  0/1 Caractères  code numérique Sous Linux : recode -l : affiche les codes disponibles Exemple : ‘A’ ASCII : 65 (8 bits) EBCDIC : 193 (8 bits) Unicode : 65 (16 bits)

Département Informatique12 EBCDIC Extended Binary Coded Decimal Interchange Code sur 8 bits, parfois 9 (avec parité) Utilisé par IBM principalement.

Département Informatique13 ASCII American Standard Code for Information Interchange Code 7 bits, pas d’accents Plusieurs « pages de codes » sur le reste

Département Informatique14 Nouveaux codes Pages de codes ingérables, trop nombreuses (190 + codes multi octets) Années 90  UNIversal CODE : UNICODE (16 bits) ISO/IEC : 32 bits

Département Informatique15 Contenu du cours Définition Les entiers Les caractères Les codes détecteurs d’erreurs Les nombres à virgule

Département Informatique16 Pourquoi contrôler les erreurs ? Un ordinateur ne cesse de transférer des données : vers la mémoire, le disque, un périphérique, un autre ordinateur. Chaque transfert peut altérer les données. Spécialement en analogique. Il faut donc être capable de détecter ces erreurs, voire de les corriger…

Département Informatique17 Contrôle de parité Soit un code sur n bits On ajoute 1 bit tel que tous les mots du code aient un nombre de bits à 1 : Pair : code à parité paire. Impair : code à parité impaire. On ne peut donc détecter que les erreurs sur un nombre impair de bits.

Exemple Envoi du mot « PAG » + parité impaire : 8 bits à 1 => 1   Département Informatique18 Lettre P A G

Département Informatique19 Codes de blocs Développés par R.W. Hamming Principe général : Séparation en blocs de taille fixe Ajout de bits de redondance à chaque bloc Transmission… Vérification des blocs reçus: Le bloc est un mot du code : Pas d’erreur, on peut extraire le message original Le bloc n’est PAS un mot du code : Il y a eu erreur.

Département Informatique20 Codes de blocs (2) Quand erreur : On peut retrouver le mot original (code auto-correcteur d’erreur) On doit demander la retransmission (code vérificateur d’erreur) Distance de Hamming : Nombre minimal de bits séparant deux mots du code (Code de Gray : 1) Plus elle est grande, plus le code est bon

Département Informatique21 Codes de blocs (3) Exemple : Contrôle de parité verticale (VRC) Contrôle de parité horizontale (LRC) Contrôle de parité croisée LettreVRC Valeur P A G LRC h 41 h 47 h 56 h

Département Informatique22 Codes de redondance cyclique Ou Cyclic Redundancy Check Ou codes polynomiaux Un mot de n bits  polynôme de degré n Exemple :  1*X 4 +0*X 3 +1*X 2 +1*X 1 +1*X 0 Principe du codage : Soit le mot I(X) à envoyer et G(X) un polynôme générateur Envoi de M(X) = I(X)+R(X) tel que G(X) divise M(X) A la réception, on vérifie que G(X) divise bien M(X)

Département Informatique23 CRC (2) Il faut donc bien choisir G(X). Exemple : (CRC16 du CCIT) X 16 + X 12 + X  Permet de détecter : 100% des erreurs de 1 ou 2 bits 100% des erreurs impaires 100% des paquets de 16 erreurs ou moins 99.99% des paquets de 18 erreurs

Département Informatique24 Contenu du cours Définition Les entiers Les caractères Les codes détecteurs d’erreurs Les nombres à virgule

Département Informatique25 Extension des entiers On a vu que = 1* *2 2 +1*2 1 +1*2 0 = Par extension : 1011,01 2 = 1*2 3 +0*2 2 +1*2 1 +1*2 0 +0* *2 -2 = 1*8 +0*4 +1*2 +1*1 +0/2 +1/4 = 11,25 10

Département Informatique26 Normalisation Comment stocker ce nombre ? Virgule fixe : n,m bits Simple et efficace Expressivité très limitée (-2 n  2 n ) Virgule flottante : 1011,01 2 = *2 -2 = 0, *2 4  stockage de (n bits) et de 100 (m bits) Grande expressivité (-2 2 m -1  2 2 m -1 -1) Grande précision 2 -n+1

Département Informatique27 Stockage Tout nombre peut donc être stocké par N = (-1) S * M * 2 e Notation en virgule flottante normalisée Avec Son signe S Sa mantisse M (bits significatifs) Son exposant e 0 est codé de façon spéciale (pas de bits significatifs)

Département Informatique28 Dans les faits N = (-1) S * M * 2 e 2 > M ≥ 1 (premier bit de M = 1  non exprimé) e non signé (pas de complément à 2) 0 = (-1) S * 0 * 2 0 D’autres nombres : ±∞, NAN

Département Informatique29 Les normes IBM (32 bits) IEEE754 sur 32 / 64 / 80 bits Sur (80 bits) : 3,4*  1,2* Exposant + 127signeMantisse TypeSigneExposantMantisse Simple précision 32 bits bit8 bits, e bits Double précision 64 bits bit11 bits, e bits Précision étendue 80 bits bit15 bits, e bits

Exemple (1/2) float x = ; Département Informatique30 3 = 2+1 = , *2 = 0, , *2 = 0, , *2 = 1, , *2 = 0, , *2 = 0, , *2 = 1, , *2 = 0, , *2 = 0, , *2 = 0, , *2 = 0, , *2 = 1, , *2 = 1, , *2 = 1, , *2 = 1, , *2 = 1, , *2 = 1, , *2 = 0, , *2 = 1, , *2 = 1, , *2 = 0, , *2 = 1, , *2 = 0, , *2 = 1, x == …

Exemple (2/2) x = =+1* *2 1  s = 0  m =  e = = 128 =   x == 0x40490FDB Département Informatique31