La representation du signe negatif en binaire

gab -  
 Ryclos -
Bonjour à tous,

alors voila...j'ai bien compris (je crois) le complément à un et à deux, mais mon problème est que je ne comprends pas comment on fait la différence entre 255 (11111111) et -1 (11111111)...

En gros, comment savoir si le premier chiffre correspond à --1 ou à 2^7? Car je vois que si le premier chiffre est un 1, cela équivaut à un signe négatif. Pourtant 255 commence par un 1 et n'est pas négatif!!!!(ou alors j'ai vraiment un probleme ;))

J'espère être clair, je suis un peu perdu...merci d'avance pour votre aide.

Gab
A voir également:

11 réponses

Remad Messages postés 1662 Date d'inscription   Statut Membre Dernière intervention   711
 
Tu as un nombre binaire : exemple 1111 1111 => si le 1er chiffre est un 0, il est positif, tu as la réponse. S'il est égal a 1, il est négatif, il faut le convertir :

1111 1111 => tu inverse tout les chiffres :
0000 0000 => tu rajoute 0000 0001 :
0000 0001 => tu as ton nombre! => 1 => ton chiffre signé est -1.

avec 1100 1010 => signé :
1100 1010 => 0011 0101
0011 0101 + 0000 0001 = 0011 0110 => 54
Le chiffre est -54
39
Ryclos
 
avec 1100 1010 => signé :
1100 1010 => 0011 0101
0011 0101 + 0000 0001 = 0011 0110 => 54
Le chiffre est -54

C'est faux..
0
hocine
 
Le programmeur a le libre choix de la convention adoptée. Dans les deux cas le microprocesseur calcule de la même façon et donne un résultat correct.

Exemple :

00101101 = 45
10001000 = 136 45 + 136 = 181

ou
00101101 = + 45
1 0001000 = - 120 (+45) + (-120) = -75

Dans les deux cas, le microprocesseur effectue :

00101101
10001000
__________
10110101

le resultat 10110101 = 181 ou 1 0110101 = - 75 selon votre lecture!!

et c'est exactement pour ca qu'on a adopté la représentation en complement à 2, elle facilite adopte l'homme à la machine!!!!
16
gab
 
c'est à dire, c'est écrit comment? c'est un signe particulier qui indigne si c'est signé (oulah ça se complique ;)?
6
gab
 
ahahaha d'accord ma question est conne, je m'en été pas rendu compte...

j'ai jamais fait vraiment d'informatique, et cette année j'ai un cours à la fac (je suis pas du tout en filière scientifique) qui traite de l'arithmétique binaire.
Je me dis que le prof me demandera peut être de convertir des chiffres en binaire donc je veux savoir comment on voit le fait que le chiffre soit signifié, donc, sur du papier (si c'est possible...)
6

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Remad Messages postés 1662 Date d'inscription   Statut Membre Dernière intervention   711
 
Euhhhh... sur quoi, du papier? Dans un programme?
5
gab
 
dsl pour le double post, je vois de voir la réponse...

d'accord, j'ai tout compris merci beaucoup c'est cool!!!

ahaahaha vous devez bien vous marrer en voyant des questions comme ça!
5
Remad Messages postés 1662 Date d'inscription   Statut Membre Dernière intervention   711
 
Sa dépend si ton chiffre est "signée" ou "non-signée". Si le chiffre est signée, (11111111)=-1. Si ce n'est pas signée, (11111111)=255 ;)
4
gab
 
hmmm...ok...et comment savoir si le chiffre est signé?

désolé je suis un peu à la masse, c'est nouveau pour moi. En tout cas merci beaucoup pour la réponse (et pour la rapidité!)
0
Xei Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   56 > gab
 
Normalement c'est indiqué si le chiffre est signé ou pas.
0
Remad Messages postés 1662 Date d'inscription   Statut Membre Dernière intervention   711
 
de base, il est non signée. considère qu'il est signé seulement si on te l'indique.
4
gab
 
ok dac...et comment on l'indique?

merci
4
Xei Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   56
 
Sur papier, si tu dois calculé un nombre binaire ils te dirons soit 11111 le nombre binaire signé, calculé sa valeur pour trouvé un nombre hexadécimal...

Enfin moi j'ai toujours vu cela. Après dans la pratique (programmation) je ne sais pas
4
Xei Messages postés 156 Date d'inscription   Statut Membre Dernière intervention   56
 
Voila, je pense que tu sait tout pour ce qui est de l'information papier lol :p
2