Langage binaire

Discutez d'informatique ici !
stargamer
Messages: 1
Enregistré le: 21 Mar 2010, 13:59

Langage binaire

par stargamer » 21 Mar 2010, 14:08

Bonjour, j'ai un devoir à rendre pour demain et qui est des plus coriaces (4 pages), je n'ai que le week-end pour le faire, alors voici mes premières questions.

Je dispose de A = -64.625 et B =128

Question 1.1 on me demande de convertir ces nombres en binaire.

J'ai trouvé comme résultat: A = 1 000 000 , 101 et B = 10 000 000

On me demande ensuite de réaliser Y =A +B

Je trouves alors en faisant le complément a 2 de A
Y = 10 111 111,011

Puis, on me demande Z = A-B

Le problème étant que A est négatif et B devient lui aussi négatif.
Je trouve un résultat incohérent que voici : Z = 10 111 111,011

N'ayant jamais fait en cours les opérations avec des nombres négatifs, je vous prie de bien vouloir m'aider.



Benjamin
Membre Complexe
Messages: 2337
Enregistré le: 14 Avr 2008, 11:00

par Benjamin » 21 Mar 2010, 14:48

Bonjour,

Pas de urgent dans le titre s'il-te-plait.
Merci.

Pour la modération,
Benjamin

Avatar de l’utilisateur
Ben314
Le Ben
Messages: 21535
Enregistré le: 11 Nov 2009, 22:53

par Ben314 » 21 Mar 2010, 18:03

Salut,
Fait attention a ta façon de rédiger : vu que A<0, tu as
-A = 01 000 000 , 101 (en prenant 8 bits pour la partie entière)
puis, en prenant le complément , tu obtient
A = 10 111 111 , 011

Attention aussi au fait que, si tu travaille sur 8 bits pour la partie entière et que tu utilise des négatifs, tu n'est sensé stocker que des nombres x tels que -12810 000 000, il va être interprété comme étant négatif (le premier chiffre vaut 1) et donc comme valant -128 (c'est pas super génant vu qu'on sait que tout les résultats sont corrects uniquement modulo 256).
A la rigueur, tu pourait écrire que 128=127,9999999... et donc le coder sous la forme 01 111 111 , 111 111 111.... qui correspond bien à un positif.

Ensuite, en calculant Y=A+B tu trouve :
A = 10 111 111 , 011
B = 10 000 000
---------------------
Y = 00 111 111 , 011 qui correspond à 63,375
Ce qui est cohérent avec -64.625 + 128, bien que la retenue de gauche soit "passée aux oubliettes"

En calculant Z=A-B tu trouve :
A = 10 111 111 , 011
B = 10 000 000
---------------------
Z = 00 111 111 , 011 qui correspond de nouveau à 63,375
C'est toujours cohérent vu que -64.625-128 = (-64.625+128)-256 et que, vu que l'on utilise que 8 bits pour la partie entière des nombres, on sait que les résultats sont valables à multiple de 256 prés.

Si tu voulais obtenir les "bons" résultats, il faudrait stocker tes nombres sur plus de 8 bits, c'est à dire, en prenant par exemple 12 bits :
A = 111 110 111 111 , 011
B = 000 010 000 000
donnent les bons résultats.
Qui n'entend qu'un son n'entend qu'une sonnerie. Signé : Sonfucius

bottSailt
Messages: 1
Enregistré le: 29 Mar 2010, 06:42

Langage binaire

par bottSailt » 30 Mar 2010, 15:55

BonjourAprès votre discussion, je suis allé vérifier dans mon cours et je trouve : Un langage L sur a est reconnaissable ssi L=FG an où n est un entier naturel, et F et G des langages finis. Cet énoncé est donc faux ?

Avatar de l’utilisateur
fatal_error
Modérateur
Messages: 6610
Enregistré le: 22 Nov 2007, 13:00

par fatal_error » 30 Mar 2010, 17:34

salut,

juste une reponse sans grande intérêt (mais pour pas qu'un éventuel forumer sue à repondre pour rien...). J'infère que bottSailt, est ... un bot, à la vue du lien dans sa signature.
Confirme-t-il?
la vie est une fête :)

 

Retourner vers ϟ Informatique

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 9 invités

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite