Binario puro, modulo e segno, complemento a 1, a 2 e eccesso
Ciao!
Ho degli esercizi da fare sui numeri binari, esadecimali, ottali e decimali.
La prof spiega male e su internet non sono riuscita a trovare quello che mi interessa quindi chiedo aiuto a voi geni
Quello che ho capito è che se ho un decimale intero positivo e lo voglio trasformare in binario puro lo divido per due e e poi prendo i resti in ordine opposto. Se invece voglio trasformare un numero con la virgola positivo in binario puro, allora lo moltiplico per due e prendo i numeri interi in ordine giusto.
Es:
11 in decimale = 1011 in binario
11 | 1
5..| 1
2..| 0
1..| 1
0..|
0,375 in decimale = 011 in binario
0,375 | 0,75
0,75..| 1,5
0,5...| 1,0
E se dovessi rappresentare in binario un numero negativo? Per esempio -11? Mi basta aggiungerci un 1 davanti? Non ho capito..
E poi quando devo sommare due numeri in binario in Complemento a uno e in complemento a due, quando devo considerare che c'è overflow e quando no? Non capisco perchè a volte l'overflow va bene e a volte no..
Grazie..
Ho degli esercizi da fare sui numeri binari, esadecimali, ottali e decimali.
La prof spiega male e su internet non sono riuscita a trovare quello che mi interessa quindi chiedo aiuto a voi geni

Quello che ho capito è che se ho un decimale intero positivo e lo voglio trasformare in binario puro lo divido per due e e poi prendo i resti in ordine opposto. Se invece voglio trasformare un numero con la virgola positivo in binario puro, allora lo moltiplico per due e prendo i numeri interi in ordine giusto.
Es:
11 in decimale = 1011 in binario
11 | 1
5..| 1
2..| 0
1..| 1
0..|
0,375 in decimale = 011 in binario
0,375 | 0,75
0,75..| 1,5
0,5...| 1,0
E se dovessi rappresentare in binario un numero negativo? Per esempio -11? Mi basta aggiungerci un 1 davanti? Non ho capito..
E poi quando devo sommare due numeri in binario in Complemento a uno e in complemento a due, quando devo considerare che c'è overflow e quando no? Non capisco perchè a volte l'overflow va bene e a volte no..
Grazie..
Risposte
Quello che ho capito è che se ho un decimale intero positivo e lo voglio trasformare in binario puro lo divido per due e e poi prendo i resti in ordine opposto.
divisioni successive.
binario puro è la prima volta che sento questa nomenclatura. Penso ci si riferisca al semplice binario unsigned (senza segno).
Se invece voglio trasformare un numero con la virgola positivo in binario puro, allora lo moltiplico per due e prendo i numeri interi in ordine giusto.
moltiplicazioni successive.
E se dovessi rappresentare in binario un numero negativo? Per esempio -11? Mi basta aggiungerci un 1 davanti? Non ho capito..
le operazioni di conversione falle sempre senza considerare il segno. Una volta convertire a secondo della codifica (modulo e segno, complemento a 2) lo trasformi in numero binario signed.
E poi quando devo sommare due numeri in binario in Complemento a uno e in complemento a due, quando devo considerare che c'è overflow e quando no? Non capisco perchè a volte l'overflow va bene e a volte no..
vedi qui (v. Data Representation/Number Conversion) c'è tutto, oltre e di più

se avrai domande, chiedi pure

Grazie per la risposta 
Quindi -11 sarebbe in modulo e segno 11011, in complemento a uno 0100 e in complemento a due 0101?

Quindi -11 sarebbe in modulo e segno 11011, in complemento a uno 0100 e in complemento a due 0101?
"vfldj":
Grazie per la risposta
Quindi -11 sarebbe in modulo e segno 11011, in complemento a uno 0100 e in complemento a due 0101?
attenta tutte le codifiche hanno un bit in più per il segno rispetto al binario puro (come lo chiami te).
binario unsigned (puro): $(1011)_2 = (11)_10$
binario signed:
[*:3eptn42t]modulo e segno: $(01011)_2 = (11)_10$ e $(11011)_2 = (-11)_10$[/*:m:3eptn42t]
[*:3eptn42t]complemento a 1: $(01011)_2 = (11)_10$ e $(10100)_2 = (-11)_10$[/*:m:3eptn42t]
[*:3eptn42t]complemento a 2: $(01011)_2 = (11)_10$ e $(10101)_2 = (-11)_10$[/*:m:3eptn42t][/list:u:3eptn42t]
"hamming_burst":
[quote="vfldj"]Grazie per la risposta
Quindi -11 sarebbe in modulo e segno 11011, in complemento a uno 0100 e in complemento a due 0101?
attenta tutte le codifiche hanno un bit in più per il segno rispetto al binario puro (come lo chiami te).
binario unsigned (puro): $(1011)_2 = (11)_10$
binario signed:
[*:1axqjnfc]modulo e segno: $(01011)_2 = (11)_10$ e $(11011)_2 = (-11)_10$[/*:m:1axqjnfc]
[*:1axqjnfc]complemento a 1: $(01011)_2 = (11)_10$ e $(10100)_2 = (-11)_10$[/*:m:1axqjnfc]
[*:1axqjnfc]complemento a 2: $(01011)_2 = (11)_10$ e $(10101)_2 = (-11)_10$[/*:m:1axqjnfc][/list:u:1axqjnfc][/quote]
aaah ok, ora è chiaro, grazie

Magari non è coerentissimo con l'argomento, però mi proponevo di scrivere un programma che dato in ingresso un intero, mi restituisca la sua appresentazione binaria! Qualche suggerimento?
Ciao,
dipende cosa devi farci con la rappresentazione restituita: es. stamparla.
cmq vedi qui, ti consiglio di leggerlo tutto
poi se hai domande basta postare.
"Mrhaha":
Magari non è coerentissimo con l'argomento, però mi proponevo di scrivere un programma che dato in ingresso un intero, mi restituisca la sua appresentazione binaria! Qualche suggerimento?
dipende cosa devi farci con la rappresentazione restituita: es. stamparla.
cmq vedi qui, ti consiglio di leggerlo tutto

poi se hai domande basta postare.
Ok! Quindi se ho qualche domanda la posto lì!
Grazie Hamming!
Grazie Hamming!

"Mrhaha":
Ok! Quindi se ho qualche domanda la posto lì!
Grazie Hamming!
vedi te se la domanda che vuoi porre è in contesto con quel post. Se no ti consiglio di aprire un nuovo filone così non si sovrappongono eventuali domande dell'autore di quel post (perchè è ancora attivo in questi giorni)

Va benissimo!
Sempre gentilissimo!

