Lorsque vous écrivez du texte sur un ordinateur, les caractères qui constituent ce texte sont encodés en binaire. Pour savoir quel caractère correspond à quelle séquence de bits, on utilise une table de codage de caractère.
Le codage ASCII est probablement le plus connu et voici un extrait de sa table de correspondance:
| Caractère | Décimal | Hexadécimal | Binaire |
|---|---|---|---|
| … | … | … | … |
| A | 65 | 0x41 | 0100 0001 |
| B | 66 | 0x42 | 0100 0010 |
| … | … | … | … |
| Z | 90 | 0x5A | 0101 1010 |
| [ | 91 | 0x5B | 0101 1011 |
| \ | 92 | 0x5C | 0101 1100 |
| … | … | … | … |
| a | 97 | 0x61 | 0110 0001 |
| … | … | … | … |
On peut donc voir que pour chaque caractère B, la séquence 0100 0010 sera stocké sur l’ordinateur.
Vous pouvez trouver table ASCII sur Wikipedia.
Le codage le plus utilisé aujourd’hui est l’UTF-8. 95.2 % des sites web l’utilisait en octobre 2020.
L’UTF-8 est un sur-ensemble d’ASCII, c’est-à-dire que tous les caractères définies dans l’ASCII a le même encodage que dans l’UTF-8.
Il étend l’ensemble des caractères en rajoutant des symboles, les lettres accentuées, l’alphabet grec, arabe, cyrillic et plein d’autres.
- Téléchargez le fichier hello.txt
- Pour le télécharger, clic-droit sur la page web puis “Enregistrer sous…”
- Pourquoi Hello World ?
- Ouvrez-le sur votre ordinateur afin de vérifier son contenu
- Ouvrez-le sur l’éditeur hexadécimal HexEd.it
- L’éditeur vous montre les octets qui composent votre fichier en hexadécimal
- Vous pouvez voir que le premier octet du fichier est 0x48 qui représente ‘H’
- Modifiez les octets du fichier pour qu’il représente “Hi World!” et enregistrez le résultat
- Ouvrez votre nouveau fichier sur l’ordinateur pour vérifier son contenu
- Quelle est la taille du fichier que vous vous attendiez à avoir ?
- Vérifiez la taille du fichier sur l’ordinateur
L’ASCII Art (ou Art ASCII en français) est le principe de réaliser des images uniquement grâce à des caractères ASCII. Plus d’information sur Wikipédia
/^ ^\
/ 0 0 \
V\ Y /V
/ - \
/ |
V__) ||
_._ _,-'""`-._
(,-.`._,'( |\`-/|
`-.-' \ )-`( , o o)
`- \`_`"'-
Comme nous l’avons vu en cours, une image peut être stocké sous une forme matricielle par l’ordinateur. Nous allons voir concrètement à quoi ressemble un fichier image au format bitmap.
Un des formats d’image matricielle les plus simples est le bitmap. Un fichier bitmap est composé trois parties principales:
Vous trouverez un exemple détaillé d’un fichier bitmap sur wikipédia.
Ah veut dire qu’il y a 10 octets avant cette valeur et cette dernière commence donc au 11ème octet du fichier.Si on concatène toutes les valeurs hexadécimales du tableau, on devrait obtenir le fichier bitmap mentionné.
- Téléchargez le fichier square4.bmp qui est un carré blanc composé de 4x4 pixels
- Ouvrez-le sur votre ordinateur afin de vérifier son contenu (il faut beaucoup zoomer comme l’image est très petite)
- Ouvrez-le sur l’éditeur hexadécimal HexEd.it
- L’en-tête du fichier prend les 0x36 premiers octets, ne les modifiez-pas
- Les données commencent à l’adresse 0x36 (vous pouvez voir l’adresse actuelle en haut à droite) et sont composées uniquement de
FF- Il y a exactement 48 octets
FF: 3 octets par pixel et il y a 16 pixels donc le compte est bon- Les trois premiers octets encodent la couleur du pixel en bas à gauche de l’image
- Les triplets RGB sont inversés :
00 00 FFreprésente le rouge etFF 00 00le bleu- Modifiez le fichier pour que l’image ressemble à l’une des images suivantes :
- https://www.figma.com/file/fF2pNMNEkUbVkaCvrYn4ph/TPs
- Choisissez une image sur 4x4 Pixels et utilisez un color picker pour avoir les codes couleurs