Chapitre 3 (version finale) Flashcards
Que veut dire ASCII ?
American Standard Code for Information Interchange
Quel impact la convention ASCII a-t-elle encore aujourd’hui ?
Impact dans :
- URLs
- adresses e-mail traditionnelles
- noms de fichiers traditionnels
- valeurs des caractères de l’alphabet latin dans le standard UTF.
Dans quel but la convention ASCII a-t-elle été créée?
Dans le but d’échanger dans les pays occidentaux
Combien de bits faut-il pour coder un caractère (ASCII) ?
Il faut 8 bits, soit un octet.
Qu’est-ce qu’un bit de parité ?
Un bit réservé au contrôle des erreurs.
Si un bit est réservé au contrôle des erreurs, combien de caractère different peut-on coder avec ASCII ?
Il reste 7 bits pour le codage de caractères. 2^7 = 128 caractères différents.
Donner un exemple sur le bit de parité
1) Fixer une règle arbitraire : un octet sain comporte un nombre pair de bits de valeur 1
2) Si la séquence suit la règle, le bit de parité est 0. Si le nombre de bits de valeur 1 est impair, le bit de parité est 1.
3) Si la séquence envoyée ne respecte pas la règle, la séquence est corrompue.
Dans la table ASCII, le bit de parité est-il présent ?
Non, on ignore le bit de parité (aucune règle n’a été définie en amont donc pas de bit de parité prédéfini)
Quel est le problème de l’ASCII ?
La norme est limitante –> pas possible de coder des caractères accentués ou non latins, des émoticônes ou des symboles mathématiques avancés
Comment pallier à cette limitation de l’ASCII ?
Utiliser la norme Latin-1 au lieu de la norme ASCII.
En quoi consiste la norme Latin-1 ?
Remplacer le bit de parité par un bit supplémentaire permettant de coder d’autres caractères.
Quel est un problème qui persiste avec la norme Latin-1 ?
Le nombre de caracteres codables est 2^8 = 256. C’est mieux que 128 mais c’est toujours trop peu.
Avec le standard Unicode, combien de caractères peut-on coder
Environ 150’000 caractères différents
Combien de bits sont alloués à chaque caractère (Standard Unicode) ?
Cela dépend du type de codage d’Unicode.
Peut-on coder/représenter tous les caractères avec tous les codages d’Unicode ?
Non, certains codages ne permettent pas de représenter tous les caractères.
Que sont les “points de code” ?
Ce sont les numéros spécifiques attribués aux caractères.
Comment sont écrits les points de code ?
Ils sont écrits en hexadécimal et préfixés par “U+”
Exemple : U+0041 –> A
Comment sont représentés les caractères en mémoire ?
La façon dont ils sont représentés dépend du codage utilisé et n’est pas une constante du standard lui-même.
(en opposition à un codage fixe tel que ASCII)
Quel sont les avantages du codage en taille fixe ?
1) La simplicité et l’efficacité de l’implémentations qu’il offre
2) Temps d’accès et de traitement d’un caractère, constant
Quel est le désavantage du codage en taille fixe ?
Gaspillage de mémoire : chaque caractère se code avec 2 octets alors qu’il pourrait se coder avec 1 seul octet –> prend de la mémoire pour rien
Quels est l’avantage du codage à taille variable ?
Permet de coder les caractères les + fréquents sur moins d’octets.
Quel est le désavantage du codage à taille variable ?
C’est plus compliqué pour l’algorithme d’interpréter le codage.
Pourquoi c’est plus compliqué pour l’algorithme d’interpréter le codage (en taille variable) ?
Pas possible d’accéder directement à un caractère en mémoire en temps constant –> parcourir les caractères pour savoir ou il commence et finit
L’UTF-8 est un codage de taille fixe ou variable ?
L’UTF-8 est un codage de taille variable.