1 Introduction au codage



Documents pareils
Codage d information. Codage d information : -Définition-

Algorithme. Table des matières

Conversion d un entier. Méthode par soustraction

Logiciel de Base. I. Représentation des nombres

TD : Codage des images

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?

Le codage informatique

Activité 1. Compter les points Écriture binaire des nombres. Résumé. Liens pédagogiques. Compétences. Âge. Matériel

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Les opérations binaires

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Formats d images. 1 Introduction

nom : Collège Ste Clotilde

Informatique Générale

Représentation d un entier en base b

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte

FORMATS DE FICHIERS. Quels sont les différents types d informations numériques dans un document multimédia?

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Projet Matlab : un logiciel de cryptage

Cours Informatique 1. Monsieur SADOUNI Salheddine

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

Jeux de caracte res et encodage (par Michel Michaud 2014)

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Une version javascript sera disponible directement dans le cours prochainement.

Informatique. Les réponses doivent être données en cochant les cases sur la dernière feuille du sujet, intitulée feuille de réponse

La mémoire. Un ordinateur. L'octet. Le bit

Comme chaque ligne de cache a 1024 bits. Le nombre de lignes de cache contenu dans chaque ensemble est:

Définitions. Numéro à préciser. (Durée : )

Outils permettant la diffusion de l information. Un point sur le droit numérique

clavier espagnol Figure 1 - deux types de claviers AZERTY ou QWERTY

Représentation des Nombres

Chapitre 2 : communications numériques.

LES DIFFÉRENTS FORMATS AUDIO NUMÉRIQUES

V- Manipulations de nombres en binaire

Analyse d images. Edmond.Boyer@imag.fr. Edmond Boyer UFRIMA 1

Structure du format BMP, sa lecture, sa construction et son écriture

Initiation à la Programmation en Logique avec SISCtus Prolog

JPEG, PNG, PDF, CMJN, HTML, Préparez-vous à communiquer!

Le multiplexage. Sommaire

PROJET ALGORITHMIQUE ET PROGRAMMATION II

COMMUNICATION ENTRE DEUX ORDINATEURS PAR LASER MODULE EN CODE MORSE OU BINAIRE.

Chaine de transmission

Priorités de calcul :

Programmation C. Apprendre à développer des programmes simples dans le langage C

IFT2880 Organisation des ordinateurs et systèmes

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

IV- Comment fonctionne un ordinateur?

2 Comment fonctionne un ordinateur, dans les grandes lignes

Transmission de données. A) Principaux éléments intervenant dans la transmission

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

Q6 : Comment calcule t-on l intensité sonore à partir du niveau d intensité?

Transmission d informations sur le réseau électrique

Chap17 - CORRECTİON DES EXERCİCES

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Architecture matérielle des systèmes informatiques

CHRONIQUE de la société royale LE VIEUX-LIÈGE

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Solutions web : instructions aux développeurs

Rappels sur les suites - Algorithme

Développement décimal d un réel

Architecture de l ordinateur

Les chaînes de caractères

Architecture des ordinateurs Introduction à l informatique

GPA770 Microélectronique appliquée Exercices série A

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Algorithmique et Programmation, IMA

I- Définitions des signaux.

Cahier n o 6. Mon ordinateur. Fichiers et dossiers Sauvegarde et classement

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java


Comment optimiser dans ImageReady?

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

Base de l'informatique. Généralité et Architecture Le système d'exploitation Les logiciels Le réseau et l'extérieur (WEB)

UE Programmation Impérative Licence 2ème Année

Hiver 2013 IMN 259. Introduction à l analyse d images. Par Pierre-Marc Jodoin

Licence Sciences et Technologies Examen janvier 2010

Objets Combinatoires élementaires

INF 232: Langages et Automates. Travaux Dirigés. Université Joseph Fourier, Université Grenoble 1 Licence Sciences et Technologies

Swisscom Webmail - mode d emploi

CODAGE DES SMS. 2 Commandes «AT» 25 3 Matériels utilisés 55 4 Interfacer un téléphone GSM 73 5 Réalisations électroniques 101

TP 2 : Chiffrement par blocs

ANALYSE TRAMEs LIAISON SERIE

Chapitre 22 Optimisation pour diffusion à l'écran, pour le web

Organisation des Ordinateurs

TIC. Tout d abord. Objectifs. L information et l ordinateur. TC IUT Montpellier

Traitement numérique de l'image. Raphaël Isdant

TP SIN Traitement d image

Sur trois couches, on obtient donc 2563 = de couleurs, soit 24bpp (Bit Per Pixel).

Chapitre 13 Numérisation de l information

Pourquoi utiliser des visuels et des logiciels de présentation?

Cryptographie et fonctions à sens unique

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP


CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

TP 1 : 1 Calculs en binaire, octal et hexadécimal

Groupe symétrique. Chapitre II. 1 Définitions et généralités

Transcription:

CélestineOscarDésiréAnatoleGastonEugène 1 Introduction au codage 1.1 Les ensembles L ensemble de tout les ensembles est Dieu lui-même. Kantor Ensemble des parties d un ensemble désigne l ensemble des sous-ensembles de cet ensemble. Par exemple, pour S = {a, b, c} on a P (S) = {{}, {a}, {b}, {c}, {a, b}, {a, c}, {b, c}, {a, b, c}}. Exercice 1. Proposez un encodage en binaire pour P (S) telle qu on puisse reconstruire l ensemble a partir de son encodage. Combien de sous-ensembles y-a-t il pour un ensemble à n éléments? On peut décomposer un nombre en ces facteurs premiers. Proposez une méthode pour calculer tous les facteurs d un nombre en utilisant les facteurs premiers. abc sous-ensemble 000 {} 100 {a} Solution : 010 {b} 001 {c} On a donc 2 n sous-ensembles. 110 {a, b} 101 {a, c} 011 {b, c} 111 {a, b, c} Soit S l ensemble de facteur premier d un nombre. Tout les facteurs sont obtenu a partir de P (S). On peut munir un ensemble d une opération associative sur les éléments de l ensemble et d un élément neutre pour l opération. On appelle une telle structure un monoide. Par exemple dans l ensemble des naturels N l addition est une tel opération avec 0 comme élément neutre. On utilise la notation (N, +, 0) pour désigner ce monoide. Exercice 2. Proposez une opération associative et un élément neutre pour l ensemble S. Proposez une opération associative et un élément neutre pour l ensemble P (S). Solution : la concatenation et le mot vide ; l union des ensembles et l ensemble vide. Dans l aviation on utilise un alphabet radio qui consiste à représenter chaque lettre de l alphabet par un mot entier, choisi de manière acrophonique (ayant pour initiale la lettre représentée). Des ambiguïtés risquent en effet de se produire en raison des parasites et des interférences auxquels les transmissions radio sont fréquemment soumises. 1

1.2 Le codage Plus formellement, pour X = {x 0, x 1,..., x n } on note X l ensemble des suites finies obtenues par concatenation sur X. On appelle X un alphabet et toutes ces suites finies des mots. Le mot vide est noté ε. Soit Y = {y 0, y 1,..., y p }, appellé code. Un codage de X à Y est une fonction τ : X Y qui associe un mot de Y à chaque lettre de X. Le codage d un mot w de X est alors obtenu en concaténant les images de chacune des lettres composant ce mot. Exercice 3. Codes de longueur fixe. On pose X = {0, 1,.., 9, A, B,..E} et Y = {0, 1}. Proposez un codage de X à Y. Quel est le code de ABC? Quel mot est encodé par 00111010? Codes à longueur variable. On pose X = {a, b, c, d, e}, Y = {0, 1} et le codage suivant : τ(a) = 0 τ(b) = 10 τ(c) = 01 τ(d) = 110 τ(e) = 1011 Encodez abace et acace. Quel est le problème? Solution : Le code hexadecimale. Le même code pour ab et ac. On dit qu un code τ sur un alphabet X a la propriété du préfixe si pour tout couple de mots de code distincts (c1; c2), c2 n est pas un préfixe de c1. Exercice 4. τ(a) = 101000, τ(b) = 01, τ(c) = 1010. Est-ce que ce codage a la propriété du préfixe? Tout code qui a la propriété du préfixe est uniquement déchifrable. Est-ce que la réciproque est vraie? Comment on peut garantir que la propriété : tout code à longeur fixe a la propriété du préfixe est vraie? Solution : b n est pas un prefixe de a mais c il est. Non ; exemple : Y = {0, 01}. La fonction de codage doit etre injective. Le code Morse est un code permettant de transmettre un texte à l aide de séries d impulsions courtes et longues. Ce code est erronément attribué à Samuel Morse, alors que plusieurs personnes l attribuent à son assistant Alfred Vail. Exercice 5. L encodage en Morse de A est, de E est et de J. Ce codage est à taille variable. À votre avis, comment ont été choisis la longueur des codes? Quel est l alphabet du code? On veut coder l alphabet X = {a, b, c, d} sur Y = {0, 1}. Proposez un encodage sachant que a est le symbol le plus fréquent et que c, d sont moins fréquents que b. Solution : L idee du code morse est de coder les caractères fréquents avec peu de signaux, et de coder en revanche sur des séquences plus longues les caractères qui reviennent plus rarement. Par exemple, le e, lettre très fréquente, est codé par un simple point, le plus bref de tous les signes. Les 25 autres lettres sont toutes codées sur quatre signaux au maximum, les chiffres sur cinq signaux. Y = {,, silence }. tau4(a) = 0 tau4(b) = 10 tau4(c) = 110et tau(d) = 111 2 Utilisation du codage Pas que de l info. Le codage neuronal consiste à comprendre comment les informations sensorielle sont représentées dans le cerveau, quel est la relation entre les stimulis et les réponses neuronales. On pense que le cerveau encode des informations de façon analogue et digitale, qu il utilise des formes de compression de 2

données ainsi que la détection et correction des erreurs dans les signaux échangés entre le cerveau et le reste du systèmes neurologique. 2.1 compression des données Le codage peut diminuer la taille de l espace occupé par les données. Il existe deux grandes catégories de méthodes de compression : les techniques de compression conservatives (sans pertes ou de compactage). Elles réduisent la taille des données sans les dégrader. À partir de la forme compactée il est possible de reconstituer exactement la donnée d origine. les techniques de compression non conservatives (ou avec pertes) qui sont irréversibles. De telles techniques sont utilisées par exemple pour les images (GIF, JPEG, PNG, MPEG,...) pour les sons (MP3, MP4,...). Elles s appuient sur des propriétés anatomiques pour éliminer certaines informations non perçues par l oeil ou l oreille humaine. Exercice 6. Considérons un écran de texte noir sur fond blanc. Il sera constitué de longues séquences de pixels blancs pour le fond, et de courtes séquences de pixels noirs pour le texte. Représentons une ligne d un tel écran, avec B pour les pixels noirs et W pour les pixels blancs. Proposez un encodage. WWWWWWWWWWWWBWWWWWWWWWWWWWWBBBWWWWWWWWWWWW WBWBWBWBWB Solution : 13w1b... 1w1b1w1b1w.. 2.2 cryptographie Le codage peut rendre les données difficilement compréhensibles pour des intrus. La cryptographie vise à fournir des techniques permettant l échange d informations entre un émetteur et un destinataire dans un environnement a priori non sûr (par exemple Internet) sans que des intrus puissent s immiscer dans cet échange, que ce soit pour y lire des informations, soit pour en modifier le contenu ou générer de faux messages. 2.3 détection et correction d erreurs Le codage peut permettre de détecter d éventuelles alterations des informations, voire de les corriger. Exercice 7. Le code de correction d erreurs le plus simple est la répétition. Par exemple pour envoyer la séquence 1011 avec un codage 3-répétitions on obtient 101110111011. Proposez une méthode de décodage pour ce type de code. Solution : la majorite va donner le bon code. 3 Le codage des caractères Le code morse a été le premier codage à permettre une communication longue distance. D autres codages ont suivi... 3

Exercice 8. Le cypher de... Proposez un encodage en binaire des lettres a,..., z telle que les lettres consecutives dans l alphabet ont des codes consecutives. Trouver le message cache dans le texte : L enfer c est les autres! Le code Baudot. Le code Baudot est dans l histoire un des premiers codes binaires utilisé grâce à une machine. C est un code binaire : chaque caractère est codé par une série de 5 bits (0 ou 1). Combien de combinaisons sont possible? Proposez une méthode pour encoder l alphabet (26 lettres) et les chiffres (10 chiffres) sur les 5 bits. Modifier votre encodage de façon que le code de QWERTY correspond à celui de 123456. La machine de Baudot permettait une vitesse d écriture de 30 mots par minute. Aujourd hui, on appelle baud l unité de mesure du nombre de symboles transmissibles par seconde. Solution : bacon = 0001.0000.0010.1110.1101. 2 5 = 32 combinaisons. un code special pour changer de lettres a chiffres. voir le code propose par Baudot : http ://fr.wikipedia.org/wiki/code B audotv ers1901, lecodebaudotoriginalaétémodifiép mêmeetladispositiondestouches.ilorganisadonclescaractèresdef açonàcequelestransitionslespluscourantesentrecaractères ASCII Dans les années 60, le code AS- CII (American Standard Code for Information Interchange) est adopté comme standard. Il permet le codage de caractères sur 8 bits, soit 256 caractères possibles. Les caractères sont des données non numériques : cela n a aucun sens de d additionner ou de multiplier deux caractères. Par contre, il est souvent utile de comparer deux caractères, par exemple pour les trier dans l ordre alphabétique ou de passer à la lettre suivant une lettre donnée dans l ordre alphabétique. Les caractères, appelés symboles alphanumériques, incluent les lettres majuscules et minuscules, les symboles de ponctuation et les chiffres. le code ASCII représente chaque caractère sur 7 bits : À chaque caractère est associée une configuration de 8 bits (1 octet), mais le chiffre de poids fort (le plus à gauche) est toujours égal à zéro. les codes compris entre 0 et 31 ne correspondent pas à proprement parler à des caractères : ils n ont pas de correspondant visualisables. Ces codes, souvent nommés caractères de contrôle, sont utilisés pour indiquer des actions telles que passer à la ligne (CR, LF), émettre un bip sonore (BEL), etc. Un certain nombre correspondent au codage associé à la frappe au clavier de la touche CTRL avec une lettre les lettres se suivent dans l ordre alphabétique (codes 65 à 90 pour les majuscules, 97 à 122 pour les minuscules), ce qui simplifie les comparaisons et le passage d une lettre à la suivante 4

on passe des majuscules au minuscules en modifiant le 5ième bit, ce qui revient à ajouter 32 au code ASCII décimal les chiffres sont rangés dans l ordre croissant (codes 48 à 57), et les 4 bits de poids faibles définissent la valeur en binaire du chiffre Exercice 9. 6999114105118101122 118111116114101 110111109 101110 971159910510546. Solution : Ecrivez votre nom. Exercice 10. (à la maison) Dans un ligne de commande en UNIX écrivez : echo "votre_nom" > toto od -x toto La commande od reenvoie le code ascii contenu dans le fichier toto. Qu est ce que vous observer? ANSII et Unicode. Le code ASCII original, défini pour les besoins de l informatique en langue anglaise, ne permet la représentation des caractères accentués (é, è, à, ù,...), et encore moins des caractères chinois ou arabes. Une première extension a consisté en l utilisation effective des 8 bits de chaque octet : cela a conduit à l idée de code ASCII étendu. Le code ASCII étendu n est pas unique et dépend fortement de la plateforme utilisée. Le plus connu est ANSI. Même en utilisant effectivement les huit bits pour réaliser le codage, il n est possible de coder qu un nombre très limité de caractères. D où l idée de réaliser le codage non plus sur 8 bits, mais sur 16 et voire plus, on parle de codage multioctets des caractères. Après des initiatives séparées ménées notamment par Xerox et Apple, le consortium Unicode a été créé en 1991. Il regroupe de nombreux (et les plus gros) partenaires privés et publics du monde de l informatique. La version actuelle du standard comporte plus de 100 000 caractères. 5