690 likes | 937 Views
Représentation numérique de l’information. Rappel : Que manipule un ordinateur ?. Un ordinateur est un assemblage de circuits électroniques. Un circuit électronique numérique manipule des tensions électriques pour représenter l'information.
E N D
Rappel : Que manipule un ordinateur ? • Un ordinateur est un assemblage de circuits électroniques. • Un circuit électronique numérique manipule des tensions électriques pour représenter l'information. • Le codage des informations est lié aux différents états de ces tensions : 0V et +5V
Le bit • L'unité élémentaire utilisée en informatique pour coder l'information est appelé un bit. • ● Le mot « bit » étant la contraction de binarydigit (chiffre binaire), un bit peut prendre deux valeurs : 0 ou 1 • ● la valeur 0 correspond à un état électrique de 0V • La valeur 1 correspond à un état électrique de +5V
Bit et codage de l'information • Avec seulement deux états, comment coder des informations plus complexes que 0 et 1 ? • Comment représenter numériquement des informations aussi variées que : • Des nombres, • Des sons, • Des images, • Des vidéos,
Bits, octets • On manipule souvent les bits par paquets de 8 – 8 bits = 1 octet = 1 byte – 8b = 1o = 1B • 1Kilo octet = 1Ko = 210 o = 1024 octets • 1Mega octet = 1Mo = 220o = 1024 Kilo octets • La différence étant croissante avec les multiples usuels, on a essayé de réparer cela avec de nouvelles unités en 1998
Quelques définitions importantes • ● Mot binaire (parfois appelé Mot) est une quantité déterminée de bits traitée comme entité unique par l'ordinateur. • ● De façon concrète, le mot est le nombre de bits qu'un microprocesseur peut manipuler en même temps (et donc qui circulent sur les bus). • ● Aujourd'hui la plupart des microprocesseurs utilisent des mots de 32 ou 64 bits (suivant que leur architecture est 32 ou 64 bits). Les premiers ordinateurs utilisaient des mots de 8 bits.
Nombre en base décimale • On a l’habitude de représenter les nombres en base décimale ou base 10. • Ce système est donc composé de 10 symboles (ou chiffres ou digits : 0, 1, 2, 3...9) permettant de coder tous les nombres à partir des puissances de 10. • Par exemple, on peut décomposer le nombre 2542 : • 2542(10) = 2.103+ 5.102+ 4.101+ 2.100 • La position respective des chiffres représente leur poids (unité, dizaine, millier,...) et l’association de chiffres est appelé nombre. Dans le cas d’un nombre codé en base 10, on parle de nombre décimal. Base
Vous trouvez ça drôle ? • « Il n'y a que (10)2 sortes de personnes, celles qui comprennent le binaire et celles qui ne le comprennent pas. »
Nombre en base binaire • Le système binaire comporte 2 chiffres : 0 et 1. • Suivant le nombre de bits, on pourra représenter un certain nombre de valeurs sur n bits. • Supposons des chiffres entiers non signés codés sur 8 bits. • Par exemple : • (00000000)2 = 0 • (00000001)2 = 1 • (10000000)2 = 128 • (01010101)2 = 85 = 0x128+1x64+0x32+1x16+0x8+1x4+0x2+1x1 • (11111111)2 = 255 = 1x128+1x64+1x32+1x16+1x8+1x4+1x2+1x1
Numération et codage – Changements de bases • Pour passer d’un nombre décimal à un nombre exprimé dans une autre base, on utilise la méthode des divisions successives. • par la base B(binaire, On divise alors le nombre décimal N (10) base 2). Le reste de la division est un digit du résultat Base Nombre en 92 2 base décimale 0 2 46 23 2 0 Reste 1 11 2 5 2 1 Sens de 1 2 2 lecture du Bit de poids faible résultat 0 1 2 (1011100) 0 1 Bit de poids fort
Exemple : Donner le nombre 42 (codé en décimal) en binaire. Base Nombre en 2 42 base décimale 0 2 21 10 2 1 Reste 0 5 2 2 2 1 1 2 Sens de 0 lecture du 1 0 résultat (101010)
Quelques questions Q.1. Donner les puissances de 2 de 0 à 10. Q.2. Combien vaut (00101001)2 ? Et (11001100)2? Q.3. Combien vaut (11111111)2 ? Et si on y ajoute 1? Q.4. Combien vaut (19)10? Et (112)10? Q.5. Comment représenter (1026)10 en binaire ? Q.6. Combien de nombres différents peut on représenter sur un octet ? Vérifier à l’aide d’un convertisseur disponible sur le web.
Taille d’un entier Un entier ne peut pas avoir une taille infinie. Etant un groupe de 8 bits, il peut représenter 256 (=28) valeurs différentes. Les valeurs vont de (0)10 à (255)10 (0)10=(0000 0000)2 (52)10=(0011 0100)2 (127)10=(0111 1111)2 (137)10=(1000 1001)2 (253)10=(1111 1101)2 (255)10=(1111 1111)2 Pour des raisons de lisibilité, nous présenterons souvent les 8 bits par 2 quartets.
Hexadécimal • Le code hexadécimal est composé de 16 symboles : {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}. • On peut le voir comme une contraction d’un nombre • binaire par quartet. • Par exemple le nombre (1011100)2 = (0101 1100)2 peut s’écrire :
Codage des couleurs en hexadécimal • En programmation la notation dépend du langage : • Exemple avec (AE4F)16 : • Exemple : dans le fichier CSS de la séance précédente, remplacer red par #FF0000 puis #FFFF00. Conclusion ?
Changement de base, c’est –presque – comme en binaire… • On utilise la méthode des divisions successives : • On divise donc le nombre décimal N10 par la base B. Le reste de la division est un digit du résultat N B (10) 16 92 Reste 12 16 5 0 5 Sens de 12 en hexadécimal est lecture du représenté par la lettre résultat C (10 par A, 11 par B, (5C) … 15 par F)
Numération et codage – Changements de bases • Donner le nombre 42 (codé en décimal) en hexadécimal. Base Nombre en 42 16 base décimale 10 16 2 0 2 Reste Sens de lecture du résultat (2A) 10 en hexadécimal est représenté par la lettre A (11 par B, 12 par C, … 15 par F)
Numération et codage – Changements de bases • Que vaut le nombre 3C (codé en hexadécimal) en décimal. Rang 3 2 1 0 3 2 1 0 0 1 Poids 16 12 16 16 3C = 12.16 + 3.16 (16) Valeur 4096 256 16 1 3C = 12 + 48 (16) 3C = 60 (16)
Quelques questions : • Effectuer les conversions suivantes : • Q1. (3C)16 = ( ? )10 • Q2. (BAC)16 = ( ? )2 • Q3. (BAC)16 = ( ? )10 • Q4. (156)10 = ( ? )16 • Q5. (1010 1100 1110)2 = ( ? )16
Ce que je ne vous ai pas dit… • Comment coder un nombre négatif ? (voir la partie pour aller plus loin). • Comment coder de très grands nombres sans utiliser une place énorme elle aussi ? • Comment effectuer des opérations avec des nombres binaires?
Codage ASCII • Le codage le plus connu et le plus utilisé est l'ASCII (American Standard Code for Information Interchange) « Code américain normalisé pour l'échange d'information » qui date de 1963. • Un fichier .txt est par exemple codé en ASCII • Les caractères sont codés sur 7 bits soit 128 caractères possibles (ou 8 mais avec un bit de poids fort toujours à zéro
Codage Unicode • L’ASCII ne permettant d’encoder que les caractères latins, sans accents il a fallu inventer un autre encodage (en fait, il y en a plein d’autres…). • Les intérêts d’utiliser Unicode : • Il utilise un nombre variable de bits mais permet d’encoder 1 million de caractères. • Les premiers caractères Unicode correspondent aux ASCII d’où rétrocompatibilité. • Plusieurs encodages sont possibles mais UTF-8 et UTF-16 sont les plus répandus actuellement avec 246943 caractères assignés.
Codage Unicode et HTML • Pour éviter des problèmes d’affichage, mieux vaut déclarer sur sa page web le type de codage utilisé…
Extrait de table Unicode (http://www.tamasoft.co.jp/en/general-info/unicode.html)
Principaux formats : texte .PDF Format du logiciel Acrobat de Adobe .DOC .DOCX Textes mis en forme (logiciel Microsoft Word). Attention à la version de Word utilisée Utiliser : Adobe reader (gratuit) (Portable Document (Document) Format) Utiliser : Wordviewer (Windows) ; logiciels de traitement de texte Typographie et mise en page. Pour imprimantes .PS .EPS laser. .SXW .ODT Textes mis en forme (logiciel OpenOffice) (PostScript et Encapsuled Utiliser : GhostScript, Aperçu ; envoyer directement Utiliser : NeoOffice / OpenOffice (gratuit :) ) (Open Document Text) PostScrip) à une imprimante laser compatible. 45
Principaux formats : texte Diapositives électroniques (logiciel PowerPoint de .PPT .PPS .PPTX Microsoft). (PowerPoint et Utiliser : PowerPoint Viewer . PowerPoint Slideshow) .XLS .XLSX Tableur Excel de Microsoft. Utiliser : Excel, visionneuses gratuites de Microsoft, (Excel Sheet) OpenOffice. .HTML .HTM Rédaction de page Web Utiliser : Mozilla, Firefox, Safari, Microsoft Internet (Hypertext Markup Explorer ou tout autre navigateur Internet Language) Pour éditer ces fichiers : tout éditeur de .TXT (TextEdit, ...) si l'on connaît le langage HTML - Editeur web : Adobe Dreamweaver - Mozilla Composer - Frontpage 47
Représentation numérique de l’information Le son Cette partie sera vue en fin d’année en Sciences Physiques aussi pouvez-vous la considérer comme facultative.
Codage binaire: sons Pour numériser du son enregistré par micro ou créé par un instrument acoustique ou électrique – On découpe le son en échantillons de temps et on code chaque échantillon sur un certain nombre de bits Analog to Digital Converter (ADC) – Fréquence d’échantillonnage: nombre d’unités de sons (échantillons) codées par seconde • Ex. CD: 44,1 kHz (44100 échantillons / seconde) • Rem: Seuil audible pour l’oreille humaine: +/- 20 kHz, mais il faut échantillonner 2 fois plus vite que la fréquence du son pour la capturer – Nombre de bits par échantillon • Ex. CD: 16 bits – Nombre de canaux: • mono (1) v. stéréo (2) – Pour rejouer le son, il faut un Digital to Analog Converter (DAC) – 1 minute d’enregistrement en stéréo et qualité CD: = 2 * 16 * 44100 * 60 = 84,672,000 bits = 10,584,000 bytes ≈ 10Mb / min.
La représentation du son Onde sinusoïdale À une fréquence de 44,1 khz Une fois L’onde initiale ainsi découpée donne une onde numérisé discontinue. Il y a une certaine perte d’information. Cependant, l’intervalle de temps entre deux mesures d’amplitudes successives est si minime que l'oreille ne percevra pas la différence lors de l’audition.
Questions Q.1. Calculer la taille d’un fichier audio en octets et en Méga octets d'un extrait sonore de 3 minutes (qualité CD). Q.2. Calculer la taille d’un fichier téléphonique en octets et en Kilo octets d'un extrait de communication de 2 minutes (qualité téléphone numérique : F ech = 8 khz, codé sur 8 bits).
Principaux formats : audio .WAV Format utilisé par Windows. Utiliser :Windows : Lecteur multimédia. Mac : (Waveform Audio File QuickTime. Format) Format public, (qualité disque compact). .MP3 Utiliser :Windows : Lecteur multimédia. Mac : (Moving Pictures Expert QuickTime… Group) Séquences sonores et vidéo par Internet. .RA .RAM Utiliser : RealAudio (RealAudio) .OGG Format open source de la fondation Xiph.org. Très bonne qualité. (OggSquich) Utiliser :Windows : Lecteur multimédia. Mac : QuickTime. 49
Représentation numérique de l’information Les images
Comment est représentée une image Exemple d'une image en noir(1) et blanc(0) :
Codage d’une image I.3 Codage de l’information • On appelle résolution le nombre de pixel par unité de surface. • Pour une image en noir et blanc, chaque pixel est codé sur 1 bit : 0 = blanc et 1 = noir. • Ce type de codage peut convenir pour • un plan ou un texte mais on voit ses • limites lorsqu'il s'agit d'une photographie. 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 1 0 1 0 0 1 0 303 pixels 36 bits 303 pixels 303 x 303 x 1 bit = 91809 bits
Codage en niveaux de gris I.3 Codage de l’information • Chaque pixel est codé sur plusieurs bits. • Si on code chaque pixel sur 2 bits on aura 4 possibilités (noir, gris foncé, gris clair, blanc). • L'image codée sera très peu nuancée. • En général, on code plutôt sur • 8 bits = 1 pixel = 1 octet • On a alors 256 possibilités • (on dit 256 niveaux de gris). 303 pixels 303 x 303 x 1 octet = 91809 octets = 734 472 bits
Codage en couleur 24 bits I.3 Codage de l’information • On parle de codage RVB = Rouge, Vert, Bleu • Chaque couleur est codée sur 8 bits • La couleur du pixel est l’association des 3 couleurs • Chaque pixel est codé sur 24 bits (aussi appelé truecolor) 303 x 303 x 3 octets = 275 424 octets = 2 203 392 bits 303 pixels 303 pixels
Codage en couleur (suite) • Coder sur 3 octets l’intensité des 3 composantes • Je veux coder des couleurs ? • En anglais Red Green Blue (RGB)
Codage d'une image en couleurs 8 bits • Dans ce cas on attache une palette de 256 couleurs à l'image. • Ces 256 couleurs sont choisies parmi les 16 millions de couleurs de la palette RVB. Pour chaque image le programme recherche les 256 couleurs les plus pertinentes. • Chaque code (de 0 à 255) désigne une couleur. • L'image occupe 3 fois moins de place en mémoire qu'avec un codage 24 bits. L'image est moins nuancée : sa qualité est bonne mais moindre.
Quelques questions • Q.1. Pourquoi parle-t-on dans la diapositive précédente de « 16 millions » de couleurs ? • Q.2. La taille en octets d’une image Bitmap se définit ainsi : Nb_de_colonnes * Nb_de_lignes * Nb_de_bits_par_pixel / 8 Pourquoi divise-t-on par 8 ? • Q.3. La taille de l’image est un paramètre important à considérer pour des raisons de stockage sur le disque dur (emplacement disponible) mais aussi lors de la construction d’un site Web. Lorsqu’on affiche des images sur une page Web, il faut se poser la question de la durée du chargement des fichiers. Une ligne ADSL (standard) a un débit idéal de 512 Ko/s, 1 Mo/s, 2 MO/s… Aussi pour une image de 10 Ko, il faudra 0,02 sec avec une ligne ADSL (512 Ko). Combien faudrait-il avec une image de 120 Ko? • Q.4. Quelle est la taille (en Kio et Mio) d’un fichier image de 500 x 500 codé sur 24 bits ? Vérifiez en ouvrant une image quelconque au format bmp, en la redimensionnant dans Paint puis en cherchant sa taille.
Principaux formats : images .BMP Image graphique stockant les pixels sous forme de tableau de points. Simple et passe partout. (Bitmap) Utiliser : navigateurs, logiciels de traitement d'image. .GIF Petites images, icônes, boutons des pages Web, etc. Fichiers compressés ( assez compacts), 256 (Graphics Interchange couleurs maximum Format) Utiliser : navigateurs, logiciels de traitement d'image. .JPEG .JPG Photos et images texturées. Fichiers très compacts (compression efficace mais avec perte de qualité) (Joint Photography Utiliser : navigateurs, logiciels de traitement d'image. Experts Group) .TIFF .TIF Images de qualité. Compression sans perte. « Gros » Fichiers. (Tagged Image File Utiliser :Windows : Irfan View. Mac : SimpleImage Format) 48
Principaux formats : vidéo .AVI Format vidéo générique pour Windows Généralement visualisation en différé (Audio Video Interleave) Fichiers peu volumineux, échangeables, bonne qualité Utiliser :Windows : Lecteur multimédia. Mac : QuickTime .MOV .QT Développé par Apple. Excellente qualité d'image. (QuickTime Movie) Généralement visualisation en différé. Utiliser : QuickTime .MPEG .MPG Norme publique Généralement visualisation en différé. (Moving Pictures Expert Utiliser :Windows : Lecteur multimédia. Mac : Group) QuickTime 50
Pour aller plus loin • Un petit jeu : http://forums.cisco.com/CertCom/game/binary_game.swf • Les entiers relatifs (48), • Méthode du complément à 2 (51), • Réels à virgule flottante (55), • Addition de nombres binaires (57), • Multiplication de nombres binaires (58).
Les entiers relatifs Pour pouvoir représenter des entiers relatifs, on peut utiliser un bit de signe. Ce codage utilise le bit de poids fort (bit le plus à gauche) pour représenter le signe (la valeur 0 étant utilisée pour un nombre positif et la valeur 1 pour un nombre négatif) et le reste des bits pour représenter la valeur absolu de l'entier. Ainsi sur 8 bits (1 octet), on peut coder 2*27-1 valeurs (de -127 à +127)