Code binaire Flashcards
Que signifie le nombre en base?
267 = 2 X 100 + 6 X10 + 7 X 1
Donc 2 X10^2 + 6X10^1 = 7X10^0
De quel base travaillons en codage binaire
en base de 2 –> puissance 2
Comment faire une approximation en code binaire?
2^55 = 2^50 x 2^5 = 2^5 x 10^(5x3) = 2^5 x 10^15 = 32 x 10^15
approximation possible car 2^10 est environ egale a 10^3
Comment coder des nbr en base 2 ?
Regarder cest quoi les plus grandes multiples de 2 (4,8,16 etc)
pour 13: 1x8 (il reste 5) + 1x4 + 0x2 + 1x1 (l’unite)
on prend tout les chiffres devant les multiples
–> 1101 –> code sur 4 bits (position binaire)
valeur 1101 en base 2 correspond au nbr 13 en base 10
On a 8 posiiton binaire combien peut on avoir de nombre?
pq chq position binaire = 2 posibilites = 2 ^ 8 = 256 (255 car il ya le 0) –> valeur possible auquel on peut associer des nombres
on peut coder tout les chiffres entier entre 0 et 255
Comment appele on un bloc de 8 bits?
un octet (byte)
Comment peut on faire pour coder des entiers negatifs?
prendre la moitie des cases a dispositon pour les entieres positif et les autres pour les entiers negatif
si ca commence par 0 = positif
si ca commence par 1 = negatif
donc pour faire un negatif dun positif on inverse juste entre le 1 et le 0 alors
126 = 01111110
-126 = 10000001
Quelles osnt les deux representations de 0?
11111111
00000000
0 et - 0
Quelles sont les inconveniants du byte avec les negatifs?
(-1) + (-1) = (-3) car le codage en 11111110 + 11111110 = 1 qui tombent 11111100
Donner une autre technique pour trouver les negatifs et qui est compatible avec l’addition?
Complement a 2
–> tout ceux qui commencent par 0 vont de 0 a 127
–> tout ceux qui commencent par 1 vont de -1 a -128
comme si on travaillait mod 256
le 0 na qu’une seule representation 00000000
-1 –> 11111111
donc
11111111+11111111 = 1 11111110 (-2)
Combien un ecran peut-il affiche de nuances de couelur si la couleur de chacun de ses pixels est codee sur
1octet?
2octet?
3 octet?
1 octet = 8 bits = 8 position binaire et il ya 2 possibilites pour chacune des positions donc il ya 2^8 possibilite = 256 couleur
2 octet = chq pixel, chq point de lecran a sa couleur qui est code sur 16 bits –> 2^16 possibilite pour chq pixel = 65 536 couleur
A quoi correspond 1 ko?
1 kilo-octet = 1000 octets = 8000 bits
De cb de octet aura un disque dur?
1 to = 1 tera octet
A quoi sert le codage hexadecimal?
Exprimer de facon + simple le codaage binaire?
De cb de numero avons-nous besoin en base 16?
16 “chiffres”
ex: binaire 2 (1 et 0)
QUe se passe til en base 16
0 a 9 puis 10 a 16 est en format a b c d avec F = 15
Comme on decompose un byte?
8 position binaire que lon peut couper en 2x4
chq bloc de 4 correspond a un chiffre hexadecimal
Comment se represente en hexadecimale 1 byte?
a laide de 2 chiffres
000000000 = 0
00001011 = 0B car B = 1011 = 11
11111111 = FF car 1111 = F = 255
Qu’est ce que le code ASCII
codage des caracteres habituelle que l’on utilise dans un codage texte
code ascii = 7 bits
ne contient pas les caracteres speciaux
caractere 0 = 48 en decimal = 30 en hexadecimal car 48 = 3x16 + 0
caractere 1 = 3x16 + 1
0 a 9 sont caracterise en hexa de 30 a 39 et de 48 a 57 en decimal
Comment on code en code ASCII les lettres maj?
A = 65 en decimal et 41 = hexadecimal car 4x16 + 1
Comment on code les lettre min?
a = 97 = 61 en hexa
Comment on passe d’une maj a un min?
maj a min –> premier 4 par un 6
min a maj –> premier 6 par un 4
Comment savoir si on a une maj ou un min en binaire?
deuzieme bit vaut 0 = majuscule
deuzieme bits vaut 1 = minuscule
A quoi sert le code base64?
permet de coder de facon + simple les lettres
+ dense pour ne pas avoir de long dossier a la fin
Caracteristique de base64?
tout groupe de 6 bits est transforme en 1 caractere simple, lisible et reconnu par presque tous les systeme
quon peut facilement imprime
000000 = A
Comment on regroupe le codage en 6 bits?
24 bits = 3 octets = 4 bloc de 6 bits
et chq des blocs de 6 bits va etre code a base64
et chq bloc peut etre code a laide de lalphabet de base64
Comment on fait lorsqu’il reste - de 3 octet?
soit 2 soit 1 octet
si 2 = 2x8 =16
on va essayer de se ramener a un multiple de 6car on veut des blocs de 6 bits en base64 –> on cherche le multiple de 6 qui est juste apres –> 18
on rajoute 2 0 –> 00 a la fin des 16 bits
on traduit les 3 octets en base 64 et on complete avec le signe = pour les deux zeros quil reste
si 1 seul octet = on doit rajouter 2 zeros
on complete avec deux fois le signe =
UNIQUEMENT A LA FIN DU CODE
Que voit-on dans une signature numerique?
on peut remarquer le signe = ou == a la fin
Quelles sont les avatnages de base64?
-representer facilement les donnes binaires par des caracteres simple, imprimables. standats, quasi-universelle
-contrairement a une augmentation de 700 % alors que la on augmente a 30%
QUel autre code existe?
Code base32
Que fait le code base32?
code l’info des suites de 0 et de 1 a l’aide de 32 caracteres uniquement
- que les nmbr de 2 a 7
-que les maj
-pas de 1 qui peut etre confondu avec I
-pas de 0 qui peut etre confudu avec o
Remplace tout bloc de 5 octet (40 bits) par 8 caracteres de laphabet base32
chq caractere dans base32 correspond a 5 bits
que faire sil reste 1 octet –> il reste 2 caractere pour faire le multiple de 5 qui est 10 –> on complete par 00 –> 6 signes = afin de faire 8 caracteres a la fin et chq caractere est de 5 chiffres
2octet quil reste –> 16 bits donc il nous en faut 4 de plus –> on rajoute 0000 –> 4 signes = pour avoir 8 caracteres
Quelles sont les avantages de Base32?
-representation facile des donnes binaires
-caracteres simple
-augmentation de 60% la taille du fichier
Qu’est ce que code UNICODE?
-code ASCII est bien adapte pour langlais mais manque d’accent
-code ascii etendu bien pour le francais mais pas encore tout les accents et les lettres
–> unicode permet de coder tout les langues du monde et leurs caracteres, de facon logique. evolutive et perenne (une fois quils sont mis, il ne change plus), langue ancienne ou recente, emoticon
3 formats
–> UTF -8 –> valeur est codee sur 1,2,3, ou 4 octet 256 caract
UTF -16 -> valeur est codee sur 1 ou 2 bloc de 16 bits –> combatible avec ASCII standart
UTF-32 -> valeur est codee sur 1 bloc de 32 bits 4 milliard de caractere