Bonjour
je cherche la solution d'un algorithme qui fait la conversion d'une séquence binaire donnée en nombre décimal
Merci de votre aide
Bonjour
je cherche la solution d'un algorithme qui fait la conversion d'une séquence binaire donnée en nombre décimal
Merci de votre aide
Salut!
Souviens-toi que la représentation binaire ou décimale d'un nombre n'est pas un nombre mais une chaîne de caractères.
Jean-Marc Blanc
prenons un byte (8 bits) signé:
par exemple: 0F1h
faisons un test pour savoir s'il est négatif (c'est à dire inferieur à 0)
si négatif, alors reserver le signe moins (-) et inverser le nombre pour qu'il devienne positif. 0Fh
sinon, ne rien faire
ensuite:
diviser par 10
stocker le modulo en tant que caractère (6 pour le premier, 1 pour le second)
pointer vers le caractère precedant
si le resultat = 0 alors on fini
sinon, on reboucle à ensuite
fini
on met le caractère de signe precedement reservé
et on obtient un nombre decimal sous forme de chaine de caractère à partir d'un nombre purement binaire sous forme d'octet. (-16)
voilà.
voila ce que je veux exactement
supposant une séquence en binaire 1101 comme entrée et à la sortie le programme doit la convertir en nombre décimal qui est 13
voila le calcul : 1101
1*2 puissance 3 + 1*2 puissance 2 + 0* 2 puissance 1 + 1 * 2 puissance 0 =
8 + 4 + 0 + 1 = 13
je veux ce résultat en pseudo code en algorithme
Merci de votre aide
c'est pourtant pas compliqué :
de toute façon, la reponce à ta question est deja dans ta question.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 chaine: db ' ' finchaine: digit*=finchaine ici: digit*=mod X/10 + '0' digit*-- x=x/10 if x=0 then goto là goto ici là: fin
tu l'a dis toi meme, il faut prendre chaque digit binaire, et le multiplier par son rang, additionner le tout, et voilà.
un algo en pseudo code ne t'avancera pas.
Partager