Complemento a due di un esadecimale
Salve, volevo sapere se esiste una procedura per fare il complemento a due di un numero rappresentato in esadecimale senza trasformarlo prima in binario. Vi ringrazio in anticipo!
Risposte
secondo me il complemento a 2 ha senso solo in base 2
In pratica devo fare la differenza di due numeri esadecimali...
35ABD77 - A459C31
Il secondo numero però è negativo. Riporta BA058A8 ma non capisco come ha fatto a riportargli così...
35ABD77 - A459C31
Il secondo numero però è negativo. Riporta BA058A8 ma non capisco come ha fatto a riportargli così...
hai provato con il complemento a 16?
Sì ma non va bene... Riporto il testo dell'esercizio:
"Valutare la seguente somma tra interi relativi da 28 BIT, rappresentati in modulo e segno: 35ABD77 - A459C31 "
"Valutare la seguente somma tra interi relativi da 28 BIT, rappresentati in modulo e segno: 35ABD77 - A459C31 "
come dice bene $itpareid$ il complemento a 2 vale solo in base 2.
Il complemento a 2 e il complemento a 1 è un'istanza del complemeno generalizzato:
- complemento a b
- complemento a b-1
con b = base qualunque.
Ma leggendo il testo dell'esercizo non c'è la richiesta esplicita di usare un tipo di complemento. Perciò è una semplice somma in base 16, basta che trasformi con la devisione di Ruffini da base 16 a base 10, sommi (sottrai) e ritrasformi con divisone in base 16.
se vuoi usare il complemento a 2, trasformi semplicemente la base 10 ottenuta da ruffini in base 2, fai somme, e ritrasformi in base 16. Ciao
Il complemento a 2 e il complemento a 1 è un'istanza del complemeno generalizzato:
- complemento a b
- complemento a b-1
con b = base qualunque.
Ma leggendo il testo dell'esercizo non c'è la richiesta esplicita di usare un tipo di complemento. Perciò è una semplice somma in base 16, basta che trasformi con la devisione di Ruffini da base 16 a base 10, sommi (sottrai) e ritrasformi con divisone in base 16.
se vuoi usare il complemento a 2, trasformi semplicemente la base 10 ottenuta da ruffini in base 2, fai somme, e ritrasformi in base 16. Ciao
