Un entier naturel N dans une base b, peut se décomposer tel que :
Nb=αpαp−1...α1α0 avec les symboles αi→0<αi<b−1 (i position du symbole -1 car le premier i est 0)
:::warning[Attention]!
Nb=αpαp−1...α1α0 ne signifie pas que N peut s’écrire sous la forme d’une multiplication, c’est bien la suite de symboles qu’on représente.
Par exemple N = 12 avec α0=1 et α1=2
:::
Donc αi dépend de la base utilisée, par exemple en base 10 : 0<αi<9
Pour une base b donnée, on peut la représenter dans une base 10 à chaque fois :
N(b)∑i=0pαibi avec bi le poids associé au symbole αi
La signification du symbole dépend de son poids (donc de sa place dans la suite de symboles représentant le nombre) → position du symbole très importante
Même chose pour la partie fractionnaire avec bi→i<0 donc bi<1
Base la + utlisée en informatique : a deux valeur (0 ou 1), que l’on peut aussi noter (Vrai/Faux)
Les symboles utilisés dans la base binaires = bits (binary digit)
8 bits = 1 octect => stockage des informations en octetcs
Donc, l’écriture d’un nombre en base 2 est tel que :
N(2)=∑i=0pαi2i=α020+...+αp2p qui en écriture donne : αp...α0
:::warning[Attention]!
Entre la représentation d’un nombre par sa somme de symboles et de poids et son écriture, on inverse le sens !
La première position est celle toute à droite en écriture
:::
Most Significant Bit (MSB) :αp
Less Significant Bit (LSB) : α0
On peut faire de même qu’en base 10 pour la partie fractionnaire.
Recherche du poids le plus proche inférieur de N dans la base b : bk−1
Soustraction de N(10) du nombre qui multiplie cette puissance
Retour à l’étape 2 avec le nombre obtenu
Fin quand on arrive à b0 pour la partie entière (donc k=1)
:::warning[Partie]fractionnaire
Même méthode, poids fort à droite de la virgule (contrairement au nombre entier où le poids fort est à gauche de la virgule)
Mais attention, le procédé peut devenir infini
:::
Nombre de bits nécessaires :k=⌊log2(N(10))⌋+1ou2k−1<N(10)<2k
La méthode de division successive ne fonctionne pas donc on utilise la méthode de multiplication successives par b
=> Le calcul peut être infini pour la partie fractionnaire
On a vu les différentes manières de coder un nombre dans différentes bases. Les nombres ne sont pas directement codés en binaire, ou en hexadécimal, il existe des formats pour les coder en machine.
Thanks for reading ! You can check my other posts or reach out by clicking on my name in the footer, or right here😼
Problème = question à laquelle un ordinateur devrait être en mesure de donner une réponse
Algrorithme = processus systématique pour résoudre un problème