[RISOLTO] complemento a 2 e divisione

mrOrange11
salve a tutti, sto cercando di preparare l'esame di fondamenti di informatica e sfogliando dei vecchi compiti mi sono imbattuto in questa domanda:

si consideri una rappresentazione di numeri in complemento a due su 16 bit e sia $ gamma = 1000 $. siano $ gamma chi $ due stringhe a 16 bit. quali delle seguenti risulta vera a proposito del numero $ z: z = chi/gamma $ ?

a) $ z $ risulta uguale a 0 se $ chi < 16 $
b) l'operazione che porta al calcolo di $ z $ non si può sempre eseguire
c) $ z $ è pari
d) $ z $ è dispari
e) nessuna delle precedenti
io sto ragionando così: con 16 bit il range dei numeri rappresentabili è [-32768, +32767]
solo che $ gamma $ quanto è? +8?
e poi? grazie mille!

Risposte
onlyReferee
Ciao mrOrange :!:
La conversione del numero $\gamma$ da complemento A2 in binario (e poi in decimale) è molto semplice poiché se il primo bit (quello più a sinistra) è $0$ allora il numero è positivo e pertanto basta che esegui la normale conversione binario-decimale (e risulta $+8$, non $+16$ :P ). Essendo poi $8 = 2^3$ questa operazione di divisione per $\gamma$ non è altro che lo shift a destra del numero $\chi$ di tre bit.
Da qui puoi arrivare senza difficoltà a stabilire quali delle affermazioni sono vere. Se serve altro aiuto sono qui.

mrOrange11
ops, errore banale, è 8. (correggo).
grazie della dritta, quindi la a) la escluderei, inquanto se prendessi il numero $ +10 = 00...001010 $ con lo shift verrebbe $ 1.010 $
la b), credo sia da scartare lo stesso, c) no, d)nemmeno, non resta che la e)(l'unica vera).

onlyReferee
Esattamente. Per la cronaca c e d vanno escluse perché si può anche ottenere $0$ con l'operazione di shift e sappiamo bene come questo numero sia l'unico a non essere né pari né dispari.

mrOrange11
ti ringrazio e metto [risolto]!!

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.