NUMERATION_CODAGE

14
http://www.ista.ma page 1 NUMERATION, CODAGE ET INFORMATIQUE 1 ) NUMERATION ........................................................................................................................................ 2 1.1 ) BASE D’UN SYSTEME DE NUMERATION :...................................................................... 2 1.2 ) EXPRESSION D’UN NOMBRE ENTIER :............................................................................ 2 1.3 ) SYSTEME DECIMAL, BASE 10 : ......................................................................................... 2 1.4 ) SYSTEME BINAIRE, BASE 2 : ............................................................................................. 2 1.5 ) SYSTEME OCTAL, BASE 8: ................................................................................................. 2 1.6 ) SYSTEME HEXADECIMAL, BASE 16 : .............................................................................. 3 1.7 ) CHANGEMENT DE BASE..................................................................................................... 3 1.7.1 ) Conversion d'un nombre décimal en une autre base : .............................................. 3 1.7.2 ) Conversion d'un nombre binaire en hexadécimal : .................................................. 3 1.7.3 ) Conversion d'un nombre hexadécimal en binaire : .................................................. 3 1.7.4 ) Tableau de correspondance entre les bases : ........................................................... 4 1.8 ) NOMBRES BINAIRES SIGNES : .......................................................................................... 4 1.9 ) ADDITION BINAIRE : ........................................................................................................... 5 1.10 ) SOUSTRACTION BINAIRE : .............................................................................................. 5 1.11 ) MULTIPLICATION ET DIVISION PAR 10 : ...................................................................... 5 2 ) LE CODAGE ............................................................................................................................................ 6 2.1 ) DEFINITION ........................................................................................................................... 6 2.2 ) CODE GRAY ........................................................................................................................... 6 2.2.1 ) code GRAY exécédent 3 ......................................................................................... 6 2.3 ) CODES DECIMAUX .............................................................................................................. 6 2.3.1 ) Code DCB ou Décimal Codé Binaire ...................................................................... 7 2.3.2 ) Code DCB exédent 3 ou EXCESS 3 ( XS 3) .......................................................... 7 2.3.3 ) Code AIKEN ........................................................................................................... 7 2.4 ) CODES TELEGRAPHIQUES ET ALPHANUMERIQUES ................................................... 8 2.4.1 ) Code télégraphique international n° 2 ou code Baudot ........................................... 8 2.4.2 ) Code télégraphique international n° 5 ou code ASCII ............................................ 8 2.4.3 ) Code EBCDIC......................................................................................................... 8 2.4.4 ) Codes VIDEOTEXT ............................................................................................... 8 2.5 ) CODES A DETECTION D'ERREURS ................................................................................... 9 2.5.1 ) Bit de parité ou LRC ( Longitudinal Redundancy Check )...................................... 9 2.5.2 ) Parités croisées ou LRC/VRC ( Vertical Redundancy Check ) ............................... 9 2.5.3 ) Code 2 parmis 5 ...................................................................................................... 10 2.5.4 ) Codes à redondance cyclique : CRC ( Cyclic Redundancy Codes ) ........................ 10 ANNEXE A : CODES DECIMAUX.............................................................................................................. 12 ANNEXE B : CODES ASCII ......................................................................................................................... 13 ANNEXE C : CODE EBCDIC ....................................................................................................................... 14

Transcript of NUMERATION_CODAGE

Page 1: NUMERATION_CODAGE

http://www.ista.ma

page 1

NUMERATION, CODAGE

ET INFORMATIQUE

1 ) NUMERATION ........................................................................................................................................ 2

1.1 ) BASE D’UN SYSTEME DE NUMERATION : ...................................................................... 2 1.2 ) EXPRESSION D’UN NOMBRE ENTIER : ............................................................................ 2 1.3 ) SYSTEME DECIMAL, BASE 10 : ......................................................................................... 2 1.4 ) SYSTEME BINAIRE, BASE 2 : ............................................................................................. 2 1.5 ) SYSTEME OCTAL, BASE 8: ................................................................................................. 2 1.6 ) SYSTEME HEXADECIMAL, BASE 16 : .............................................................................. 3 1.7 ) CHANGEMENT DE BASE..................................................................................................... 3

1.7.1 ) Conversion d'un nombre décimal en une autre base : .............................................. 3 1.7.2 ) Conversion d'un nombre binaire en hexadécimal : .................................................. 3 1.7.3 ) Conversion d'un nombre hexadécimal en binaire : .................................................. 3 1.7.4 ) Tableau de correspondance entre les bases : ........................................................... 4

1.8 ) NOMBRES BINAIRES SIGNES : .......................................................................................... 4 1.9 ) ADDITION BINAIRE : ........................................................................................................... 5 1.10 ) SOUSTRACTION BINAIRE : .............................................................................................. 5 1.11 ) MULTIPLICATION ET DIVISION PAR 10 : ...................................................................... 5

2 ) LE CODAGE ............................................................................................................................................ 6

2.1 ) DEFINITION ........................................................................................................................... 6 2.2 ) CODE GRAY ........................................................................................................................... 6

2.2.1 ) code GRAY exécédent 3 ......................................................................................... 6 2.3 ) CODES DECIMAUX .............................................................................................................. 6

2.3.1 ) Code DCB ou Décimal Codé Binaire ...................................................................... 7 2.3.2 ) Code DCB exédent 3 ou EXCESS 3 ( XS 3) .......................................................... 7 2.3.3 ) Code AIKEN ........................................................................................................... 7

2.4 ) CODES TELEGRAPHIQUES ET ALPHANUMERIQUES ................................................... 8 2.4.1 ) Code télégraphique international n° 2 ou code Baudot ........................................... 8 2.4.2 ) Code télégraphique international n° 5 ou code ASCII ............................................ 8 2.4.3 ) Code EBCDIC ......................................................................................................... 8 2.4.4 ) Codes VIDEOTEXT ............................................................................................... 8

2.5 ) CODES A DETECTION D'ERREURS ................................................................................... 9 2.5.1 ) Bit de parité ou LRC ( Longitudinal Redundancy Check ) ...................................... 9 2.5.2 ) Parités croisées ou LRC/VRC ( Vertical Redundancy Check ) ............................... 9 2.5.3 ) Code 2 parmis 5 ...................................................................................................... 10 2.5.4 ) Codes à redondance cyclique : CRC ( Cyclic Redundancy Codes ) ........................ 10

ANNEXE A : CODES DECIMAUX .............................................................................................................. 12 ANNEXE B : CODES ASCII ......................................................................................................................... 13 ANNEXE C : CODE EBCDIC ....................................................................................................................... 14

Page 2: NUMERATION_CODAGE

http://www.ista.ma

page 2

NUMERATION ET INFORMATIQUE

1 ) NUMERATION 1.1 ) BASE D’UN SYSTEME DE NUMERATION : C’est le nombre de chiffres différents utilisés par ce système. 1.2 ) EXPRESSION D’UN NOMBRE ENTIER : Tout nombre entier s’exprime par un polynôme de la forme : N = ααααn . basen + ... + αααα2 . base2 + α α α α1 . base1 + α α α α0 . base0 avec : αααα un chiffre de la base de numération n rang du chiffre α basen poids du chiffre α . le chiffre de droite est dit de poids faible celui de gauche est dit de poids fort.

ou de la forme : α ii

i nibase

=

=

∑0

.

REMARQUES : avec n chiffres significatifs on peut exprimer basen nombres le plus grand nombre exprimé vaut basen - 1 1.3 ) SYSTEME DECIMAL, BASE 10 : - utilisé tous les jours. - 10 chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9. Nd = ααααn . 10n + ... + αααα2 . 102 + α α α α1 . 101 + α α α α0 . 100 exemple : 6809d = 6 . 103 + 8 . 102 + 0 . 101 + 9 . 100

1.4 ) SYSTEME BINAIRE, BASE 2 :

- utilisé en électronique numérique et en informatique : système tout ou rien , oui ou non , le courant passe ou ne passe pas.

- 2 chiffres : 0 et 1. - chaque chiffre est appelé bit , contraction de binary digit. - le bit de poids fort est aussi appelé MSB ( Most Significant Bit ). - le bit de poids faible est aussi appelé LSB ( Least Significant bit ). Nd = ααααn . 2n + ... + αααα2 . 22 + α α α α1 . 21 + α α α α0 . 20 exemple: 00011010 10011001b = 212 + 211 + 29 + 27 + 24 + 23 + 20 = 4096 + 2048 + 512 + 128 + 16 + 8 + 1 = .……….. avec 4 bits : 16 nombres de 0 à 15 (24 = 16 ) avec 8 bits : 256 nombres de 0 à 255 ( 28 = 256 ) un mot de 8 bits est appelé octet ou byte avec 16 bits : 65 536 nombres de 0 à 65 535 ( 216 = 65536 ) avec 32 bits : 232 = 4 294 967 296 nombres de 0 à 4 294 967 295 !! nota : le kilo en informatique vaut 210 soit 1024 1.5 ) SYSTEME OCTAL, BASE 8: - n’est plus guère utilisé en informatique actuellement. - 8 chiffres : 0, 1, 2, 3, 4, 5, 6 et 7.

Page 3: NUMERATION_CODAGE

http://www.ista.ma

page 3 1.6 ) SYSTEME HEXADECIMAL, BASE 16 : - plus commode à manipuler que le binaire : un chiffre hexadécimal pour 4 chiffres binaires. - 16 chiffres : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E et F. Nd = ααααn . 16n + ... + αααα2 . 162 + α α α α1 . 161 + α α α α0 . 160 exemple : 1A99h = 1 . 163 + A . 162 + 9 . 161 + 9 . 160 = ………. avec 2 chiffres hexa : 256 nombres, de 00 à FF ( 162 = 256 ) correspondance avec un mot de 8 bits ou octet (28 = 162 = 256 ) avec 4 chiffres hexa : 65536 nombres, de 0000 à FFFF ( 164 = 65536 ) correspondance avec un mot de 16 bits (216 = 164 = 65536 ) 1.7 ) CHANGEMENT DE BASE 1.7.1 ) Conversion d'un nombre décimal en une autre base : Par une succession de divisions entières. Diviser le nombre décimal par la base, en conservant le reste. Le quotient obtenu est à son tour divisé par la base en conservant le reste. Ansi de suite juqu'à obtention d'un quotient nul. Les restes successifs composent le nombre dans la nouvelle base. Le premier reste est le chiffre de poids le plus faible et le dernier reste est le chiffre de poids le plus fort. exemple : 428d à transcrire en base 2 et 16 428d = 1 1010 1100b

2140 107

1 531 26

0 131 6

0 31 1

1

22

22

22

2428

02

02428

12 2610 1

1

1616

016

CA

428d = 1ACh 1.7.2 ) Conversion d'un nombre binaire en hexadécimal : Chaque paquet de quatre bits - ou quartet - en partant de la droite du nombre est remplacé par le chiffre hexadécimal correspondant. exemple : 0 0 0 1 1 0 1 0 1 1 0 0 b 1 A C h 1.7.3 ) Conversion d'un nombre hexadécimal en binaire :

Chaque chiffre est remplacé par son image binaire sur 4 bits : exemple : D E A 8 h

1 1 0 1 1 1 1 0 1 0 1 0 1 0 0 0 b

Page 4: NUMERATION_CODAGE

http://www.ista.ma

page 4 1.7.4 ) Tableau de correspondance entre les bases :

16 10 8 2 0 0 0 0000 1 1 1 0001 2 2 2 0010 3 3 3 0011 4 4 4 0100 5 5 5 0101 6 6 6 0110 7 7 7 0111 8 8 10 1000 9 9 11 1001 A 10 12 1010 B 11 13 1011 C 12 14 1100 D 13 15 1101 E 14 16 1110 F 15 17 1111 10 16 20 1 0000 11 17 21 1 0001 12 18 22 1 0010 ... ... ... ...

1.8 ) NOMBRES BINAIRES SIGNES : Le bit de poids fort est considéré comme le bit de signe : à 0 : signe + à 1 : signe - Le nombre ne s'exprime plus que sur n -1 bits, d'où division par deux du domaine de définition par rapport à une représentation non signée. C'est le complément à deux qui est utilisé pour représenter un nombre signé; avec cette convention, la soustraction d'un nombre se ramène à l'addition de son complément à deux. Le complément à deux c'est le complément à 1 ( chaque bit est inversé ) plus 1. Le complément à deux d'un nombre négatif donne sa valeur absolue. exemple : 5d 0101b cp à 1 1010 cp à 2 1011

non signé binaire signé 0 0000 0 1 0001 +1 2 0010 +2 3 0011 +3 4 0100 +4 5 0101 +5 6 0110 +6 7 0111 +7 8 1000 -8 cp à 2 = 0111 + 1 = 1000 = 8d 9 1001 -7 cp à 2 = 0110 + 1 = 0111 = 7d 10 1010 -6 cp à 2 = 0101 + 1 = 0110 = 6d 11 1011 -5 cp à 2 = 0100 + 1 = 0101 = 5d 12 1100 -4 cp à 2 = 0011 + 1 = 0100 = 4d 13 1101 -3 cp à 2 = 0010 + 1 = 0011 = 3d 14 1110 -2 cp à 2 = 0001 + 1 = 0010 = 2d 15 1111 -1 cp à 2 = 0000 + 1 = 0001 = 1d

Page 5: NUMERATION_CODAGE

http://www.ista.ma

page 5 avec 8 bits avec 16 bits

non signé h binaire signé d non signé h binaire signé d

0 0000 0000 0 0 0000 0000 0000 0000 0 ... .... ... ... .... ... 7F 0111 1111 +127 7FFF 0111 1111 1111 1111 +32767 80 1000 0000 -128 8000 1000 0000 0000 0000 -32768 ... ... ... ... ... ... FF 1111 1111 -1 FFFF 1111 1111 11111 1111 -1

1.9 ) ADDITION BINAIRE : 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 0 et repport de 1 exemple :

68d :

1 . 0100 0100 b

+ 21d : + 0001 0101 b = 89d :

= 0101 1001 b

1.10 ) SOUSTRACTION BINAIRE : Se résume à une addition avec les nombres en représentation signée.

68 :

11 . 0100 0100

+ (-21) :

0001 0101 cp à 1 : 1110 1010 cp à 2 : 1110 1011

+ 1110 1011 = 47 :

= 1 0010 1111

débordement .

68 :

1 . 0100 0100

+ (-89) :

0101 1001 cp à 1 : 1010 0110 cp à 2 : 1010 0111

+ 1010 0111

= -21 :

= 1110 1011 � nombre négatif cp à 1 : 0001 0100 cp à 2 : 0001 0101

= 21d 1.11 ) MULTIPLICATION ET DIVISION PAR 10 : multiplier un nombre binaire par 10b, c'est lui ajouter un 0 à droite = multiplication par 2d. diviser un nombre binaire par 10b, c'est lui enlever un chiffre à droite = division par 2d. multiplier un nombre hexadécimal par 10h, c'est lui ajouter un 0 à droite = multiplication par 16d. diviser un nombre hexadécimal par 10h, c'est lui enlever un chiffre à droite = division par 16d.

Page 6: NUMERATION_CODAGE

http://www.ista.ma

page 6

2 ) LE CODAGE 2.1 ) DEFINITION Le codage est une opération qui établit une correspondance entre les éléments de deux ensembles. En termes plus mathématiques, le codage peut être défini comme une application bijective d'un ensemble source vers un autre ensemble appelé ensemble but. L'application inverse est appelée décodage. L'ensemble source est en général un sous ensemble des nombres rationnels, et l'ensemble but contient des combinaisons ordonnées de 0 et de 1. L'ensemble des mots-code forme le code. Le choix d'un code dépend évidemment de l'application envisagée : dans le cas d'une transmission de données, par exemple, il sera préférable de choisir un code détecteur, ou mieux correcteur d'erreurs, le message risquant d'être dégradé lors de la transmission. 2.2 ) CODE GRAY Soit un dispositif électronique donnant une information numérique de position angulaire d'un arbre tournant. Cette information est en binaire naturel sur 4 éléments binaires, obtenus par un ensemble de 4 cellules opto-électroniques. Lors de la transition entre deux valeurs consécutives, on risque d'avoir des valeurs transitoires aléatoires, génératrices d'erreurs, du fait que tous les éléments binaires ne changent pas forcément d'état instantanément et simultanément. exemple : passage de 1 à 2 0001 ñ 0011 ñ 0100 aléa possible

Le remède à ce probléme est de coder chaque nombre de façon que deux nombres consécutifs ne diffèrent que d'un élément binaire et d'un seul : code à distance unité. Le code GRAY est le plus fréquement utilisé. Il est construit par réflexion à partir du code binaire naturel.

décimal code GRAY 0 0 0 0 0 1 0 0 0 1 � 2 0 0 1 1 3 0 0 1 � 0 � 4 0 1 1 0 5 0 1 1 1 � 6 0 1 0 1 7 0 1 � 0 � 0 � nota : le premier mot (0) et le dernier 8 1 1 0 0 mot (15) ont la distance unité 9 1 1 0 1 � 10 1 1 1 1 11 1 1 1 � 0 � 12 1 0 1 0 13 1 0 1 1 � 14 1 0 0 1 15 1 0 0 0

2.2.1 ) code GRAY exécédent 3 C'est le code Gray majoré de la valeur 3 (0010)

Code décimal 0 1 2 3 4 5 6 7 8 9 Code Gray exédent 3

0010

0110

0111

0101

0100

1100

1101

1111

1110

1010

2.3 ) CODES DECIMAUX Utilisés pour la représentation des chiffres décimaux

Page 7: NUMERATION_CODAGE

http://www.ista.ma

page 7 2.3.1 ) Code DCB ou Décimal Codé Binaire Chaque chiffre décimal est codé sur 4 éléments en binaire naturel. C'est un code pondéré ( 8 4 2 1 ) - poids des éléments binaires suivant leur position - Sur les 16 mots binaires disponibles, seuls 10 sont retenus. L'apparition d'un des 6 mots ( 1010 , 1011 , 1100 , 1101 , 1110 , 1111 ) signifie une erreur. Le code DCB nécessite plus de bits que le binaire naturel.

décimal code DCB 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 exemple : 2 5 4 8 6 0 1 1 0 7 0 1 1 1 0010 0101 0100 1000 8 1 0 0 0 9 1 0 0 1

Les opérations arithmétiques en DCB sont plus complexes qu'en binaire naturel. exemple :

148 0001 0100 1000 + 23 + 0000 0010 0011 = 171 = 0001 0110 1011

(1 6 ??) d

L'une des combinaisons interdite apparaît dans la colonne de droite. Cela se produit chaque fois que la somme de deux chiffres décimaux donne un résultat supérieur à 9;

Pour effectuer la correction , il faut ajouter 6 soit 0110 en DCB ( les 6 combinaisons non valides ), cela entraîne alors un report de 1 sur le rang supérieur, d'où :

148 0001 0100 1000 + 23 + 0000 0010 0011 = 171 = 0001 0110 1011

+ 0110 = 0001 0111 0001 (1 7 1) d

2.3.2 ) Code DCB exédent 3 ou EXCESS 3 ( XS 3) Semblable au DCB : 3 est ajouté à chaque chiffre décimal. Les trois combinaisons situées avant 0011 ( c'est à dire 0000, 0001, 0010 ) et les trois combinaisons situées après 1100 ( c'est à dire 1101, 1110, 1111 ) ne sont pas utilisées.

Code décimal 0 1 2 3 4 5 6 7 8 9 Code "plus trois" 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100

exemple : 2583 d s'écrit en code "plus 3" : 0101 1000 1011 0110 Créé pour permettre la réalisation simple des soustractions : le complément à 1 d'un mot représente le complément à 9 dans l'ensemble source. exemple : cp à 1 de 8 (1011) est 1 (0100). Les codes possédant cette propriété sont appelés codes autocomplémentaires. 2.3.3 ) Code AIKEN Code pondéré ( 2 4 2 1 ) et autocomplémentaire.

Code décimal 0 1 2 3 4 5 6 7 8 9 Code AIKEN 0000 0001 0010 0011 0100 1011 1100 1101 1110 1111

Page 8: NUMERATION_CODAGE

http://www.ista.ma

page 8 2.4 ) CODES TELEGRAPHIQUES ET ALPHANUMERIQUES Le minimum de caractères d'un code alphanumérique est de 92 : 26 lettres minuscules, 26 lettres majuscules, 10 chiffres et 30 caractères spéciaux ( ponctuation, <, % , + ,... ). Dès l'apparition du télégraphe il fallut coder l'information pour la transmettre entre deux lieux distants. Le codage série fut adopté pour minimiser le support : un fil avec retour à la terre ou deux fils.

système A Système Bligne de transmission

système A Système Bligne de transmission

Le code à transmettre est envoyé par moments successifs sur la ligne de transmission. L'information utile est précédée par un signal de départ ( start ) et terminée par un signal de fin ( stop ). La cadence d'émission est exprimée en bauds, soit le nombre d'éléments binaires transmis par seconde. L'information peut être contrôlée ou non par un bit de parité ( voir plus loin : paragraphe codes à détection d'erreur ) exemple : tranmission sur 8 bits avec 2 bits de stop.

start stop

1 2 3 4 5 6 7 8

informations utiles

2.4.1 ) Code télégraphique international n° 2 ou code Baudot L'information étant codée sur 5 éléments binaires, ne donne que 32 combinaisons. Deux combinaisons ( 29 et 30 ) dédoublent la signification des combinaisons précédentes. Utilisé sur télex avec ruban perforé. Voir annexe A. 2.4.2 ) Code télégraphique international n° 5 ou code ASCII - American Standard Code for Information Interchange -. C'est le code quasi universel pour la tranmission d'informations. Chaque symbole est codé sur 7 bits soit 128 combinaisons différentes. Les codes 0 à 31 sont des codes de contrôles d'édition ( CR, LF, ESC, ... ) et de contrôle de trame ( SOH, STX, ETX, ... ). Les caractères de contrôle d'édition n'impriment pas de de caractères, mais conditionnent l'impression ( effacement d'écran, déplacement curseur, sonnerie, ... ). Le caractère de contrôle "ESC" ( Escape : échapement ), suivit d'un ou plusieurs caractères normaux, permet d'accéder à certaines possibilités d'impression très spécifiques du périphérique concerné ( inversion vidéo, clignotement, souligné, changement de couleur, changement de type de caractères, ... ) qui ne sont pas prévus dans le code ASCII de base. On parle alors de "séquences Escape", qui sont propres à chaque matériel. Toutefois, une normalistion de ces séquences d'échappement est définie par l' ANSI : American National Standards Institute ( Institut de normalisation américain ). Les caractères de contrôle de trames sont utilisés comme délimiteurs par certains protocoles de dialogues; exemple le protocole XON / XOFF ( DC1 pour Xon et DC3 pour Xoff ). Le code ASCII est étendu à 8 bits dans le monde du PC , les codes supérieurs à 127 contiennent les caractères accentués, les caractères nationaux et les caractères semi-graphiques. voir annexe B. 2.4.3 ) Code EBCDIC - Extensed Binary Coded Decimal Interchange Code - Utilisé pour la transmission de messages sur des périphériques ou sur certains réseaux. Ce code utilise des données codées sur 8 bits, soit 256 possibilités qui ne sont pas toutes utilisées. voir annexe C. 2.4.4 ) Codes VIDEOTEXT Ces codes permettent de définir un répertoire de caractères alphamosaïques contenant 5 alphabets constituant les normes vidéotext. - l'alphabet G0 contient les caractères les plus courants, correspondant pratiquement au code ASCII. - l'alphabet G1 contient 64 mosaïques en bloc ( chaque caractère est divisé en 6 petits rectangles ) et

28 mosaïques de lissage ( délimitées par des droites obliques ).

Page 9: NUMERATION_CODAGE

http://www.ista.ma

page 9 - l'alphabet G2 contient 84 marques spéciales ( tilde, cédille, umlaut, ... ) utilisées en association avec

l'alphabet G0. - l'alphabet G3 contient 28 mosaïquesde lissage, 24 caractères définissant des lignes et 7 caractères

flèches et ronds. - l'alphabet L contient dans les colonnes 4 et 5, les mêmes caractères que G0 et dans les autres colonnes,

64 blocs mosaïques proches de G1. En outre les deux premières colonnes de ces alphabets contiennent des caractères de contrôle ( ensemble appelé C0 ) qui permettent entre autre de passer d'un alphabet à l'autre, ainsi que de définir un certain nombres d'attributs ( couleur du fond, incrustation et masquage ). Pour plus de détails, voir documentation technique "Minitel 1B". 2.5 ) CODES A DETECTION D'ERREURS La transmission de données dans les circuits numériques s'accompagne parfois d'erreurs qui doivent être éliminées, même si elles ne sont pas nombreuses. Ces erreurs sont le plus souvent dues aux signaux parasites qui perturbent les lignes de transmission. 2.5.1 ) Bit de parité ou LRC ( Longitudinal Redundancy Check ) C'est un bit supplémentaire, placé généralement en poids fort, dont la valeur est positionnée pour que le nombre de bits à 1 du mot soit pair si parité paire demandée ( ou impair si parité impaire demandée ). exemples : caractère virgule "," code ASCII 010 1100 avec parité paire : 1010 1100 avec parité impaire : 0010 1100 caractère "D" code ASCII 100 0100 avec parité paire : 0100 0100 avec parité impaire : 1100 0100 A la réception on vérifie si la parité est la même. Le bit de parité ne permet de détecter que des erreurs monobit, les erreurs deux bits, plus improbables, ne changent pas la parité du caractère codé. Le bit de parité ne permet pas de corriger les erreurs monobit, car le récepteur ignore quel est le bit inexact s'il y a erreur. 2.5.2 ) Parités croisées ou LRC/VRC ( Vertical Redundancy Check ) Les caractères constituant l'information à transmettre sont regroupés par blocs. A la fin de chaque bloc, l'émetteur ajoute un caractère supplémentaire, le VRC dont chaque bit est égal à la parité des bits de même rang de tout les caractères du blocs d'information. exemple :

LRC B 1 0 0 0 0 1 0 0 O 1 0 0 1 1 1 1 1 N 1 0 0 1 1 1 0 0 J 1 0 0 1 0 1 0 1 O 1 0 0 1 1 1 1 1 U 1 0 1 0 1 0 1 0 R 1 0 1 0 0 1 0 1

VRC 1 0 0 0 0 0 1 0 Parité croisée Cette méthode permet de détecter toutes les erreurs simples, doubles et triples, ainsi que de corriger les erreurs simples.

Page 10: NUMERATION_CODAGE

http://www.ista.ma

page 10 2.5.3 ) Code 2 parmis 5 Pour détecter une perturbation , on utilise un nombre limité de combinaisons, de ce fait il y a de fortes chances pour que la combinaison erronée soit en dehors des codes. Le code 2 parmis 5 est codé sur 5 éléments binaires dont 2 seront à 1 et les trois autres à 0. C'est un code pondéré ( 0, 1, 2, 4, 7 ) ou ( 0, 1, 2, 4, 8 ) mais avec des exceptions.

code 2 parmis 5 pondéré 0 1 2 4 7

code 2 parmis 5 pondéré 0 1 2 4 8

décimal 7 4 2 1 0 8 4 2 1 0 0 1 1 0 0 0 1 1 0 0 0 1 0 0 0 1 1 0 0 0 1 1 2 0 0 1 0 1 0 0 1 0 1 3 0 0 1 1 0 0 0 1 1 0 4 0 1 0 0 1 0 1 0 0 1 5 0 1 0 1 0 0 1 0 1 0 6 0 1 1 0 0 0 1 1 0 0 7 1 0 0 0 1 1 0 1 0 0 8 1 0 0 1 0 1 0 0 0 1 9 1 0 1 0 0 1 0 0 1 0

- En code dit 0, 1, 2, 4, 7 la combinaison 0 vaut 11d ( 7 + 4 ) - En code dit 0, 1, 2, 4, 8 les combinaisons 0 et 7 valent 12 d ( 8 + 4) et 10 d (8 + 2 ). D'autres types de codes p parmis n sont utilisés : tel le 3 parmis 6. 2.5.4 ) Codes à redondance cyclique : CRC ( Cyclic Redundancy Codes ) Pour aller vers une détection à 100% des erreurs de transmission, les codes les plus utilisés sont les codes à redondance cyclique ou CRC. Rappel : la formule générale d'une information numérique est un polynôme de la forme : P = a n . 2n + a n-1 . 2n-1 + a n-2 . 2n-2 + ....................... + a 2 . 22 + a 1 . 21 + a 0 . 20 Si l'on divise ce polynôme numérique par un autre polynôme appelé générateur ( G ), le reste de cette division constitue le caractère de contrôle ( CRC ) exemple simple : - soit le message binaire : P = 1 0 1 1 0 1 1 - et le plynôme générateur : G = 24 + 21 + 20 = 1 0 0 1 1 1 ) on ajoute à droite du dividende autant de zéros que le diviseur comporte de bits moins un, soit ici 4 zéros. 2 ) on exécute une pseudo-division par soustractions successives, en ne transmettant aucune retenue d'un bit à l'autre. La division se pésente donc ainsi : 1 0 1 1 0 1 1 0 0 0 0 - 1 0 0 1 1 0 0 1 0 1 1 1 - 1 0 0 1 1 0 0 1 0 0 0 0 - 1 0 0 1 1 0 0 0 1 1 0 0 � Reste Le reste 1 1 0 0 est le CRC que l'on ajoute au message, soit 1 0 1 1 0 1 1 1 1 0 0

A la réception un calcul semblable est effectué sur l'information reçue, mais il faut ici que le reste soit nul.

Page 11: NUMERATION_CODAGE

http://www.ista.ma

page 11 1 0 1 1 0 1 1 1 1 0 0 - 1 0 0 1 1 0 0 1 0 1 1 1 - 1 0 0 1 1 0 0 1 0 0 1 1 - 1 0 0 1 1 0 0 0 0 0 0 0 � Reste En pratique, on réalise ces opérations à l'aide de OU EXCLUSIFS et de décalages. Les principaux polynômes générateurs normalisés utilisés pour la création du CRC sont les suivants : CRC12 212 + 211 + 23 + 20 CRC16 216 + 215 + 22 + 20 CRC16 CCITT 216 + 212 + 25 + 20

CRC32 232 + 226 + 223 + 222 + 216 + 212 + 211 + 210 + 28 + 27 + 25 + 24 + 22 + 21 + 20

Page 12: NUMERATION_CODAGE

http://www.ista.ma

page 12

ANNEXE A : CODES DECIMAUX

Décimal

DCB

8 4 2 1

DCB

exédent 3

GRAY

GRAY

exédent 3

AIKEN

2 4 2 1 0

0 0 0 0

0 0 1 1

0 0 0 0

0 0 1 0

0 0 0 0

1 0 0 0 1 0 1 0 0 0 0 0 1 0 1 1 0 0 0 0 1 2 0 0 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 0 3 0 0 1 1 0 1 1 0 0 0 1 0 0 1 0 1 0 0 1 1 4 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 0 1 0 0 5 0 1 0 1 1 0 0 0 0 1 1 1 1 1 0 0 1 0 1 0 6 0 1 1 0 1 0 0 1 0 1 0 1 1 1 0 1 1 1 0 0 7 0 1 1 1 1 0 1 0 0 1 0 0 1 1 1 1 1 1 0 1 8 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 0 1 1 1 0 9

1 0 0 1 1 1 0 0 1 1 0 1 1 0 1 0 1 1 1 1

Décimal

2 parmis 5 7 4 2 1 0

2 parmis 5

8 4 2 1 0 0

1 1 0 0 0

1 1 0 0 0

1 0 0 0 1 1 0 0 0 1 1 2 0 0 1 0 1 0 0 1 0 1 3 0 0 1 1 0 0 0 1 1 0 4 0 1 0 0 1 0 1 0 0 1 5 0 1 0 1 0 0 1 0 1 0 6 0 1 1 0 0 0 1 1 0 0 7 1 0 0 0 1 1 0 1 0 0 8 1 0 0 1 0 1 0 0 0 1 9

1 0 1 0 0 1 0 0 1 0

Code telégraphique international numéro 2

LETTRE CHIFFRE 1 2 perfo 3 4 5 1 A - � � � 2 B ? � � � � 3 C : � � � � 4 D Qui êtes vous? � � � 5 E 3 � � 6 F � � � � �

7 G % � � � � 8 H � � � �

9 I 8 � � � 10 J sonnerie � � � � 11 K ( � � � � � 12 L ) � � � 13 M . � � � � 14 N , � � � 15 O 9 � � � 16 P 0 � � � � 17 Q 1 � � � � � 18 R 4 � � � 19 S ' � � � 20 T 5 � � 21 U 7 � � � � 22 V = � � � � �

23 W 2 � � � � 24 X / � � � � � 25 Y 6 � � � � 26 Z + � � � 27 Retour Chariot � � 28 interligne � � 29 POSITION LETTRE � � � � � � 30 POSITION CHIFFRE � � � � � 31 Espace � � 32 �

� Options nationales

Page 13: NUMERATION_CODAGE

http://www.ista.ma

page 13

ANNEXE B : CODES ASCII

Déci Hexa ASCII Déci Hexa ASCII Déci Hexa ASCII Déci Hexa ASCII

0 00 NUL 32 20 Space 64 40 @ 96 60 `

1 01 SOH 33 21 ! 65 41 A 97 61 a

2 02 STX 34 22 " 66 42 B 98 62 b

3 03 ETX 35 23 # 67 43 C 99 63 c

4 04 EOT 36 24 $ 68 44 D 100 64 d

5 05 ENQ 37 25 % 69 45 E 101 65 e

6 06 ACK 38 26 & 70 46 F 102 66 f

7 07 BEL 39 27 ' 71 47 G 103 67 g

8 08 BS 40 28 ( 72 48 H 104 68 h

9 09 HT 41 29 ) 73 49 I 105 69 i

10 0A LF 42 2A * 74 4A J 106 6A j

11 0B VT 43 2B + 75 4B K 107 6B k

12 0C FF 44 2C , 76 4C L 108 6C l

13 0D CR 45 2D - 77 4D M 109 6D m

14 0E SO 46 2E . 78 4E N 110 6E n

15 0F SI 47 2F / 79 4F O 111 6F o

16 10 DLE 48 30 0 80 50 P 112 70 p

17 11 DC1 49 31 1 81 51 Q 113 71 q

18 12 DC2 50 32 2 82 52 R 114 72 r

19 13 DC3 51 33 3 83 53 S 115 73 s

20 14 DC4 52 34 4 84 54 T 116 74 t

21 15 NAK 53 35 5 85 55 U 117 75 u

22 16 SYN 54 36 6 86 56 V 118 76 v

23 17 ETB 55 37 7 87 57 W 119 77 w

24 18 CAN 56 38 8 88 58 X 120 78 x

25 19 EM 57 39 9 89 59 Y 121 79 y

26 1A SUB 58 3A : 90 5A Z 122 7A z

27 1B ESC 59 3B ; 91 5B [ 123 7B {

28 1C FS 60 3C < 92 5C \ 124 7C |

29 1D GS 61 3D = 93 5D ] 125 7D }

30 1E RS 62 3E > 94 5E ^ 126 7E ~

31 1F US 63 3F ? 95 5F _ 127 7F DEL

Déci Hexa ASCII Déci Hexa ASCII Déci Hexa ASCII Déci Hexa ASCII

128 80 Ç 160 A0 á 192 C0 + 224 E0 Ó

129 81 ü 161 A1 í 193 C1 - 225 E1 ß

130 82 é 162 A2 ó 194 C2 - 226 E2 Ô

131 83 â 163 A3 ú 195 C3 + 227 E3 Ò

132 84 ä 164 A4 ñ 196 C4 - 228 E4 õ

133 85 à 165 A5 Ñ 197 C5 + 229 E5 Õ

134 86 å 166 A6 ª 198 C6 ã 230 E6 µ

135 87 ç 167 A7 º 199 C7 Ã 231 E7 þ

136 88 ê 168 A8 ¿ 200 C8 + 232 E8 Þ

137 89 ë 169 A9 ® 201 C9 + 233 E9 Ú

138 8A è 170 AA ¬ 202 CA - 234 EA Û

139 8B ï 171 AB ½ 203 CB - 235 EB Ù

140 8C î 172 AC ¼ 204 CC ¦ 236 EC ý

141 8D ì 173 AD ¡ 205 CD - 237 ED Ý

142 8E Ä 174 AE « 206 CE + 238 EE ¯

143 8F Å 175 AF » 207 CF ¤ 239 EF ´

144 90 É 176 B0 _ 208 D0 ð 240 F0 -

145 91 æ 177 B1 _ 209 D1 Ð 241 F1 ±

146 92 Æ 178 B2 _ 210 D2 Ê 242 F2 _

147 93 ô 179 B3 ¦ 211 D3 Ë 243 F3 ¾

148 94 ö 180 B4 ¦ 212 D4 È 244 F4 ¶

149 95 ò 181 B5 Á 213 D5 i 245 F5 §

150 96 û 182 B6 Â 214 D6 Í 246 F6 ÷

151 97 ù 183 B7 À 215 D7 Î 247 F7 ¸

152 98 ÿ 184 B8 © 216 D8 Ï 248 F8 °

153 99 Ö 185 B9 ¦ 217 D9 + 249 F9 ¨

154 9A Ü 186 BA ¦ 218 DA + 250 FA ·

155 9B ø 187 BB + 219 DB _ 251 FB ¹

156 9C £ 188 BC + 220 DC _ 252 FC ³

157 9D Ø 189 BD ¢ 221 DD ¦ 253 FD ²

158 9E × 190 BE ¥ 222 DE Ì 254 FE _

159 9F ƒ 191 BF + 223 DF _ 255 FF

D'après jeu de caractères 850

Page 14: NUMERATION_CODAGE

http://www.ista.ma

page 14

ANNEXE C

Codes EBCDIC

Quartet de poids fort 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL DLE Space & � { } / 0

Q 1 SOH DC1 / a j � A J 1 u 2 STX DC2 b k s B K S 2 a 3 ETX DC3 SYN c l t C L T 3 r 4 d m u D M U 4 t 5 HT NL LF e n v E N V 5 e 6 BS ETB f o w F O W 6 t 7 DEL ESC EOT g p x G P X 7 8 EOM CAM h q y H Q Y 8 f 9 EM i r z I R Z 9 a A [ ] | : i B VT � $ � # b C FF FS DC4 < ' % " l D CR GS ENQ NAC ( ) - ' e E SO RS ACK + > � F SI US BEL SUB ! @ ? =

� Options nationales