Numero X espresso in complemento a 2 su N bit

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
ines_retilogiche
00lunedì 22 ottobre 2007 18:53
Rif. appello 28-06-2001, 2-a prova, D2
Stavo studiano il compito d'esame dell'appello 28-06-2001, 2-a prova, D2.

Si deve fare il modulo |X| del Numero X espresso in complemento a 2 su N bit...
La mia idea era seguente:
- controllare il bit più significativo (del segno) Xn-1
- se Xn-1 = 0 -> lasciare il bit così come è
- se Xn-1 = 1 -> allora prendere il complemento del bit.

Ma la soluzione è diversa...
Allora vedo che non ho capito bene come si esprime il numero in complemento a 2 su N bit.

Qualcuno mi potrebbe speigarlo..

Grazie in anticipo
Ines
fbcyborg
00lunedì 22 ottobre 2007 19:22
Per favore potresti postare il link al testo d'esame, che non riesco a trovarlo sul sito del professore?

Non è detto che tu stia sbagliando, magari è solo una soluzione diversa.
pma
00lunedì 22 ottobre 2007 23:35
Re: Rif. appello 28-06-2001, 2-a prova, D2
ines_retilogiche, 10/22/2007 6:53 PM:

Si deve fare il modulo |X| del Numero X espresso in complemento a 2 su N bit...
La mia idea era seguente:
- controllare il bit più significativo (del segno) Xn-1
- se Xn-1 = 0 -> lasciare il bit così come è
- se Xn-1 = 1 -> allora prendere il complemento del bit.

Ma la soluzione è diversa...
Allora vedo che non ho capito bene come si esprime il numero in complemento a 2 su N bit.



- controllare il bit più significativo (segno) Xn-1
- se Xn-1 = 0, allora lasciare tutto così com'è
- se Xn-1 = 1, allora complementare X a 2, ossia generare in uscita -X, ossia

dove + sta per somma aritmetica, non logica.
ines_retilogiche
00martedì 23 ottobre 2007 10:17
Re:
fbcyborg, 22/10/2007 19.22:

Per favore potresti postare il link al testo d'esame, che non riesco a trovarlo sul sito del professore?

Non è detto che tu stia sbagliando, magari è solo una soluzione diversa.



Ecco il link diretto sui tutti compiti d'esame (si arriva dal link Prove d'esame a.a. 2006-2007): www.pmar.it/retilogiche/prove/index.htm

Il mio esempio sta nel file "Appelli 1999-2002 con tracce di soluzione".

Ines




ines_retilogiche
00martedì 23 ottobre 2007 10:27
Struttura di un numero in virgola mobile
Sempre nel tema del formato dei numeri....

Ho studiato il formato del numero in virgola mobile qua:
it.wikipedia.org/wiki/IEEE_754

Qua c'è una parte che mi ha lasciato un dubbio nel testo di wikipedia...
-------------------------------------------------
Facciamo un semplice esempio: codifichiamo il numero −118.625 nel sistema IEEE 754.
Dobbiamo determinarne il segno, l'esponente e la mantissa.
Poiché è un numero negativo, il primo bit è "1".
Poi scriviamo il numero in forma binaria: 1110110.101.
--------------------------------------------------
Allora qua il segno e il modulo del numero si trasforma in binario a parte? Non si fa il complemento come abbiamo visto prima nell'esempio?

Grazie in anticipo,
Ines


pma
00martedì 23 ottobre 2007 14:34
Vede, ines_retilogiche, ogni volta che passiamo da un tipo di rappresentazione all'altra, cambiano in generale gli algoritmi per eseguire una data operazione. Se la rappresentazione è in complemento a 2, l'algoritmo (meglio, uno degli algoritmi, poiché ne esiste anche un altro che lavora bit a bit a partire dal meno significativo) è quello che le ho dato io. Nel caso delle reppresentazioni floating-point, che sono (quasi) sempre in segno e valore assoluto, per calcolare il modulo di un numero è sufficiente forzare a 0 il (bit di) segno, e lasciare immutato il resto. La varietà di algoritmi è ovviamente legata alla varietà delle rappresentazioni: allo stesso modo, l'algoritmo di addizione (o di sottrazione, moltiplicazione, etc.) sarà profondamente diverso passando da una rappresentazione in complemento a 2 a una in segno e valore assoluto o a una in floating-point.
ines_retilogiche
00martedì 23 ottobre 2007 15:17
pma, grazie per le spiegazioni. Adesso è più chiaro. Devo vedere sempre le specifiche di rappresentazione del numero per scegliere un algoritmo adatto.

Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 23:37.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com