• Non ci sono risultati.

Esercizio 1: soluzione

N/A
N/A
Protected

Academic year: 2021

Condividi "Esercizio 1: soluzione"

Copied!
16
0
0

Testo completo

(1)

Università degli Studi dell’Insubria Dipartimento di Scienze Teoriche e Applicate

Architettura degli elaboratori

Numeri e aritmetica binaria Esercizi

Marco Tarini

Dipartimento di Scienze Teoriche e Applicate marco.tarini@uninsubria.it

Esercizio 1

Dato il numero 13710convertirlo in base 2, 4, 8, 16.

(2)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 3 -

Esercizio 1: soluzione

Conversione a base 2 tramite l’algoritmo delle divisioni successive

13710= 100010012

Esercizio 1: soluzione

La conversione a base 4 si può fare attraverso l’algoritmo delle divisioni successive, oppure a partire dalla rappresentazione in binario.

10 00 10 012= 20214

(3)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 5 -

Esercizio 1: soluzione

La conversione a base 8 si può fare attraverso l’algoritmo delle divisioni successive, oppure a partire dalla rappresentazione in binario.

10 001 0012= 2118

Esercizio 1: soluzione

La conversione a base 16 si può fare attraverso l’algoritmo delle divisioni successive, oppure a partire dalla rappresentazione in binario.

1000 10012= 8916

(4)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 7 -

Esercizio 1: soluzione

Prova:

100010012 = 1*20+ 1*23+ 1*27= 1 + 8 + 128 = 137 20214 = 1*40+ 2*41+ 2*43= 1 + 8 + 128 = 137 2118 = 1*80+ 1*81+ 2*82= 1 + 8 + 128 = 137 8916 = 9*160+ 8*161= 9 + 128 = 137

Esercizio 2

Convertire in base 8 e 16 il numero 793210

(5)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 9 -

Esercizio 2: soluzione

Conversione a base 8 e 16 tramite l’algoritmo delle divisioni successive

Esercizio 3

Convertire il numero 173748in binario

(6)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 11 -

Esercizio 3: soluzione

173748= 001 1110111111002

Esercizio 4

Si consideri la rappresentazione in complemento a 2 su 11 bit.

Quali interi possono essere rappresentati?

Come è rappresentato -1024 ?

Qual’è il numero rappresentato da N = 11111111111 ?

(7)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 13 -

Esercizio 4

In complemento a 2 su 11 bit possono essere rappresentati i numeri da -211-1a 211-1-1, cioè da -1024 a +1023.

-1024 corrisponde al minimo numero rappresentabile, che è sempre caratterizzato dalla presenza del termine negativo e dall’assenza di termini positivi. Quindi

10000000000 = -1*210= -1024

Esercizio 4

Nella stringa 11111111111 abbiamo il termine negativo e tutti i positivi.

Quindi il valore denotato è 20+21+22+23+24+25+26+27+28+29–210= 1+2+4+8+16+32+64+128+256+512-1024 = -110

NB: non ocorre fare la somma, perché la sommatoria delle potenze di 2 da 20a 2n= 20+ 21+ 22 + ... + 2n= 2n+1-1

Alternativamente si può calcolare il complemento a 2, che è 00000000001 = +110

(8)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 15 -

Dimostrazione che 2

0

+ 2

1

+ 2

2

+ ... + 2

n

= 2

n+1

-1

Per induzione:

20= 21-1 20+ 21= 22 -1 20+ 21+ 22 = 23 -1

Se 20+ 21+ 22 + ... + 2n= 2n+1-1

allora 20+ 21+ 22 + ... + 2n+ 2n+1= 2n+1+ 2n+1-1=2n+2-1

Esercizio 5

Convertire in base 10 il numero in complemento a 2 N = 1100101

Convertire in base 10 il numero in complemento a 2 M = 0111111

Dato il numero in complemento a 2 P = 1010011, codificare -P, sempre in complemento a 2.

Codificare il numero +13110in complemento a 2, usando il minimo numero di bit

Codificare il numero -27710in complemento a 2, usando il minimo numero di bit

(9)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 17 -

Esercizio 5: soluzione

Convertire in base 10 il numero in complemento a 2 N = 1100101 1100101 = 20+ 22+ 25– 26= 1 + 4 + 32 – 64 = -2710

Convertire in base 10 il numero in complemento a 2 M = 0111111 0111111 = 20+ 21+ 22+ 23+ 24+ 25= 1 + 2 + 4 + 8 + 16 + 32 = +6310

Dato il numero in complemento a 2 P = 1010011 codificare -P in complemento a 2.

Complemento a 1 e incremento: 0101100 + 0000001 = 0101101 Verifica:

1010011 = 20+ 21+ 24– 26= 19 – 64 = -4510 0101101 = 20+ 22+ 23+ 25= 4510

Esercizio 5: soluzione

Codificare il numero +13110in complemento a 2, usando il minimo numero di bit

Sono necessari 9 bit, con cui si può rappresentare [-28..+28-1] = [-256..+255]

Con 8 si arriva al max a +127

Tramite algoritmo delle divisioni successive trovo la rappresentazione in binario naturale: 13110= 10000011 Su 9 bit: +13110= (0)10000011

Verifica: 20+ 21+ 27= 1 + 2 + 128 = +13110

(10)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 19 -

Esercizio 5: soluzione

Codificare il numero -27710in complemento a 2, usando il minimo numero di bit

Sono necessari 10 bit per rappresentare [-512..+511]

La rappresentazione in cpl2 di -27710corrisponde alla rappresentazione in binario naturale i 102410-27710=74710

Tramite algoritmo divisioni successive trovo: 74710= 1011101011 747373 1

186 1 93 0 46 1 23 0 11 1 5 1 2 1 1 0 0 1

Esercizio 5: soluzione

Codificare il numero -27710in complemento a 2, usando il minimo numero di bit

Soluzone alternativa:

Tramite algoritmo divisioni successive trovo: 27710= 100010101 Aggiungo il segno +27710= (0) 100010101

Complemento e incremento: 1011101010 + 0000000001 = 1011101011

Verifica: 20+ 21+ 23+ 25+ 26+ 27– 29= 1 + 2 + 8 + 32 + 64 + 128 – 512 = -27710

(11)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 21 -

Esercizio 6

Si consideri la rappresentazione in complemento a 2 su 4 bit sommare -5 a -4 e dire se c’e’ overflow nella somma sommare +1 a -6 e dire se c’e’ overflow nella somma sommare +1 a +6 e dire se c’e’ overflow nella somma sommare -4 a -4 e dire se c’e’ overflow nella somma

Esercizio 6: soluzione

Osservazione: in complemento a 2 su 4 bit si rappresentano i valori da -8 a +7

Sommare -5 a -4 e dire se c’e’ overflow nella somma

Anche senza effettuare la somma sappiao che ci sarà un underfow nella somma, perché -5-4 = -9, che è minore del minimo valore rappresentabile con 4 bit.

-5 = 1011, -4 = 1100 1011 +

1100 = (1)0111

overflow (e risultato è positivo e denota +7 anziché -9)

(12)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 23 -

Esercizio 6: soluzione

Sommare +1 a +6 e dire se c’e’ overflow nella somma 0001 + 0110 = 0111

no overflow, risultato corretto

Sommare -4 a -4 e dire se c’e’ overflow nella somma -4 = 1100

1100 + 1100 = (1)1000

No overflow e risultato corretto

Esercizio 7

Dato il numero A = 1001001001 dire a quali interi in base 10 corrisponde nel caso esso rappresenti la codifica di un numero:

in valore assoluto in modulo e segno in complemento a 2

(13)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 25 -

Esercizio 7: soluzione

A = 1001001001

Numero rappresentato in valore assoluto 1×20+ 1×23+ 1×26+ 1×29= 58510 Numero intero in modulo e segno

segno = 1  negativo

modulo = 10010012= 1×20+ 1×23+ 1×26 = 7310 A = - 7310

Numero intero in complemento a 2

A = 20+ 23+ 26 -29= 7310-51210= - 43910

Esercizio 8

Rappresentare in base 2 il numero f=0.52410con precisione migliore di 10-4

(14)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 27 -

Esercizio 8: soluzione

Possiamo usare l’algoritmo delle moltiplcazioni successive La precisione richiesta ci indica quando fermarci

Poiche la sommatoria 2-n-1+ 2-n-2+ ... +2-n-ktende a 2-nper k 

,

dobbiano trovare n tale che 2-nsia minore della precisione richiesta.

Nel nostro caso, 2-14= circa 6 10-5

Esercizio 8: soluzione

1 0.524 1.048 1

2 0.048 0.096 0

3 0.096 0.192 0

4 0.192 0.384 0

5 0.384 0.768 0

6 0.768 1.536 1

7 0.536 1.072 1

8 0.072 0.144 0

9 0.144 0.288 0

f= 0.10000110001001

(15)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 29 -

Esercizio 9

Dato il numero A =+35016e il numero B = 100101C2effettuare –in complemento a 2 e sul numero di bit MINIMO per rappresentare entrambi gli operandi, non il risultato– le operazioni A+B e A-B segnalando se si verifica overflow o meno.

Dire inoltre che numeri sono A e B rappresentati nel sistema decimale.

Esercizio 9: soluzione

A = +3 5 016= 11 0101 00002= 011 0101 0000C2 B = 100101C2

Bisogna estendere B in segno per ottenere operandi rappresentati sullo stesso numero di bit:

A = 01101010000C2 B = 11111100101C2

(16)

Aritemtica binaria - Esercizi

Architettura degli elaboratori - 31 -

Esercizio 9: soluzione

Operazione A+B carry 1111

A 01101010000

B 11111100101 A+B (1)01100110101

No overflow (somma di numeri di segno opposto) Verifica:

A = +3.5.016= 3*256+5*16 = 768+80 = 84810 B = 100101C2= -32+5 = -2710

A+B= 848-27 = 821

01100110101 = 1+4+16+32+256+512 = 821

Esercizio 9: soluzione

Operazione A-B = A + (-B)

-B = 00000011010 + 1 = 00000011011 carry 1

A 01101010000

-B 00000011011 A-B 01101101011 No overflow

Verifica

A-B= 848+27 = 875

01101101011 = 1+2+8+32+64+256+512 = 875

Riferimenti

Documenti correlati

Implementare in linguaggio C una funzione efficiente che permetta di definire la lunghezza minima di cavo necessaria per collegare tutte le città, partendo dalla città del venditore

Nella città di Babilonia, alla fine di ogni anno, il governo distribuisce un premio in denaro (euro) ai suoi N = 40 000 cittadini, con la seguente modalità: per ciascun

Alla fine di ogni anno il suo stipendio raddoppia ed ha inoltre un incremento di 10.000 dollari per ogni anno lavorato in precedenza.. (a) Scrivere la relazione di ricorrenza per

N.B.: Ricordiamo che se F (n) soddisfa a sua volta una equazione alle differenze finite, lineare omogenea a coefficienti costanti E, allora si cerca una soluzione

Poich´ e l’attrito tra il carrello e il binario ` e trascurabile, la risultante delle forze esterne agenti sul sistema carrello-persona ` e nulla lungo la componente parallela

Come si possono caratterizzare le curve cilindriche con questi dati?. (1) Determinare il riferimento di Darboux di γ come curva sul

Nota Bene: nella procedura devono comparire almeno una volta tutte le variabili dichiarate (A, B, C, D, E, H, K, M). Scrivere la soluzione nella

Tre amiche, Anna, Bianca e Carolina, si sono sposate con tre amici, ovvero Dario, Enrico e Franco, e sono andate a vivere in città italiane diverse, Catania, Cuneo, e Sassari.. I