Estratto del documento

• 512 × 512

2

• 15 50

10 ~ 2 10 3 20 6

2 = 1024 ~10 → 2 ~10

24 4 10 2

(2 )

2 2 ×

4 6 2 12

(10 )

2 × = 16 × 10

… 1

1. Struttura dei sistemi di calcolo ed elaborazione

• 2

1. Struttura dei sistemi di calcolo ed elaborazione 3

1. Struttura dei sistemi di calcolo ed elaborazione 4

1. Struttura dei sistemi di calcolo ed elaborazione

… 5

1. Struttura dei sistemi di calcolo ed elaborazione 6

1. Struttura dei sistemi di calcolo ed elaborazione

7

1. Struttura dei sistemi di calcolo ed elaborazione 8

1. Struttura dei sistemi di calcolo ed elaborazione

0 −1

2 9

1. Struttura dei sistemi di calcolo ed elaborazione 8 =

1 10

1. Struttura dei sistemi di calcolo ed elaborazione

ℎ ℎ =+1 ℎ = 2 + 1 11

1. Struttura dei sistemi di calcolo ed elaborazione ℎ=5

°

12

1. Struttura dei sistemi di calcolo ed elaborazione

−1

−1

ℎ=

(1

= + − ℎ)

13

1. Struttura dei sistemi di calcolo ed elaborazione

10 3

2 = 1024 ≈ 10

1 40 12

1 2 10

1

908 14

1. Struttura dei sistemi di calcolo ed elaborazione

5

10

−1

10 5 10

15

1. Struttura dei sistemi di calcolo ed elaborazione = +

16

1. Struttura dei sistemi di calcolo ed elaborazione

17

1. Struttura dei sistemi di calcolo ed elaborazione

(ℎ ) =1

(ℎ )

(ℎ = 2 + 1 = 3) 75% 18

1. Struttura dei sistemi di calcolo ed elaborazione 1

−1

19

1. Struttura dei sistemi di calcolo ed elaborazione

0.78 20

1. Struttura dei sistemi di calcolo ed elaborazione

5.6 650 21

1. Struttura dei sistemi di calcolo ed elaborazione

• 0.4 0.8

• 0.74 1.6

• 0,65 0.78

4,7 1.4 / 150/ 22

1. Struttura dei sistemi di calcolo ed elaborazione

(4,7)

(8,5)

(9,4)

(17) 25

50 23

1. Struttura dei sistemi di calcolo ed elaborazione 24

1. Struttura dei sistemi di calcolo ed elaborazione 25

1. Struttura dei sistemi di calcolo ed elaborazione 26

1. Struttura dei sistemi di calcolo ed elaborazione 27

1. Struttura dei sistemi di calcolo ed elaborazione

14.000 57.600 /

13.4 28

1. Struttura dei sistemi di calcolo ed elaborazione

50 29

1. Struttura dei sistemi di calcolo ed elaborazione

Sistemi di numerazione

binaria e codifiche testuali

Numeri e numerali

Un numero è un concetto astratto, mentre un numerale è una sequenza di

simboli atta a rappresentare un numero. Lo stesso identico numero può essere

rappresentato in modi differenti come, ad esempio, il sistema decimale, o i

numeri romani.

Il numero di caratteri a disposizione per la rappresentazione di un numero

mediante un numerale è finito, e il numero di caratteri di un numerale

intervallo di numeri rappresentabili.

Il numero di bit di un calcolatore può essere grande a piacere, ma è

ugualmente finito. Espandendo il concetto su larga scala, consideriamo che

scrivere un numero, di giungerebbe ugualmente alla fine.

In base 10, con 3 cifre ed un segno è possibile andare da a

−999 +999.

I modi per rappresentare i numerali si dividono in due categorie:

posizionali e non posizionali.

Sistemi posizionali

Nei sistemi posizionali ogni numero è

rappresentato come somma di potenze di una base,

cifra.

Simboli per le cifre

utilizziamo solitamente separatori come punti e virgole per meglio

permetterci di interpretarlo. Lavoriamo in base 10 in quanto abbiamo 10 dita,

ma esistono anche sistemi di misura alternativi, come la dozzina.

La base scelta per un numerale può essere qualunque numero. Il fatto che i

numeri 0 ed 1 siano facili da rappresentare in un calcolatore, ha fatto sì

che questi diventassero gli elementi fondamentali per rappresentare un

numero in un calcolatore, aprendo la strada al passaggio ad un linguaggio in

base 2.

In un sistema posizionale, il peso di ogni cifra va moltiplicato per la

potenza corrispondente alla sa posizione. 1

2. Sistemi di numerazione binaria e codifiche testuali

di effettuare operazioni aritmetiche operando sui numerali.

Se la base è occorrono simboli per rappresentare le cifre del numerale,

,

come in base 2 in base 10 o in base 16

(0,1), (1 (1

− 9) − 9, , , , , , ).

In particolare, un numerale in base 16 contiene le 10 cifre che utilizziamo

nel sistema in base 10, e 6 lettere per colmare la mancanza.

I sistemi elettronici che si utilizzano per fare somme, sottrazioni e

moltiplicazioni operano in base 2, cioè svolgono operazioni in binario.

Notazione decimale e binaria

Scrivere un numerale non ha senso senza specificarne la base.

Ad esempio, il numerale può valere due, dieci o sedici a seconda che ci

10

si trovi in base 2, 10, 16. Per questo motivo, la base del numerale viene

indicata in basso dopo il numerale stesso scritto tra parentesi

0 1 2 3 4

(10110) (4 ) (16) (22)

= 0 ⋅ 2 + 1 ⋅ 2 + 1 ⋅ 2 + 0 ⋅ 2 + 1 ⋅ 2 = + =

2 10 10 10

P Diventa dunque necessario conoscere le potenze di 2 fino a .

10

2

1 0 −1

(10.1) (2.5)

= 1 ⋅ 2 + 0 ⋅ 2 + 1 ⋅ 2 =

2 10

In base 2 occorre circa il triplo delle cifre che in base 10.

Aggiungere uno zero dopo un numero in base 2 significa moltiplicarlo per 2,

rimuoverlo, dignifica dividere per 2.

ossia di fare moltiplicazioni e divisioni per potenze di due, con grande

velocità.

Ordini di grandezza binari

Ricordiamo che in un sistema binario gli ordini di grandezza sono dati dalle

potenze di 2 e, in particolare, si basano sulla potenza 10

2 = 1024.

Si ha inoltre possibilità di passare dalle potenze di 2 a quelle di 10

tramite un arrotondamento. 9

9 9 9 2.7

2 = 512 2 = 10 = = 2.7 2 ≈ 10

10 × 3

Notazione esadecimale

Per i numerali occorrono 16 cifre {0, 1, … , 9, , , , , , } 2

2. Sistemi di numerazione binaria e codifiche testuali

(13) (19) (0001

= = 0011)

16 10 2

Una singola cifra in base 16 può essere rappresentata con 4 bit binari, in

quanto .

4

16 = 2

Il motivo per cui si utilizza la base 16, è che consente di spacchettare

numerali in base 2 in gruppi da 4 cifre, e di convertirli facilmente in

esadecimale.

conviene utilizzarla per i conti.

Numeri a precisione finita

Avendo 8 bit (ossia 2 cifre in esadecimale), possono essere rappresentati

solo numeri, e occorre scegliere il tipo di numero che si sta

8

2 = 256

rappresentando, per creare una corrispondenza tra i 256 numerali ed i 256

numeri che devono rappresentare. Necessariamente si escludono dei numeri che

si trovano nel mezzo tra quelli che abbiamo scelto, a meno che non si stiano

rappresentando esclusivamente interi. Si avranno ugualmente un numero

maggiore ed uno minore.

Quando abbiamo un numero finito di cifre, al di là dell

rappresentabile, anche la precisione è finita, in quanto il numero di

decimali è finito. Le proprietà associativa e distributiva non valgono più,

ed alcune operazioni vengono chiuse. Nel caso di una somma di numeri

vincolati alle 2 cifre, che non è rappresentabile con

78 + 36 = 114,

Precisione finita in C

La precisione finita può essere un grave problema, in quanto può causare

errori quando occorre maneggiare numeri molto grandi.

Con lo standard di C a 4 byte, ad esempio, è possibile rappresentare solo

fino a , dunque nel nostro intero non possono entrare numeri maggiori di

32

2 ossia 4 miliardi. Un numero come 8 miliardi non può

2 30 9

2 × 2 = 4 × 10

essere dunque inserito nelle variabili di base di C, che reagisce dando come

valore di uscita una cifra negativa.

Nella maggior parte dei casi non superiamo il limite, ma un superamento

involontario può causare gravi errori. 3

2. Sistemi di numerazione binaria e codifiche testuali

a favore di quella ma anche questa ha delle limitazioni.

,

assicurarsi di non superarlo.

Unica eccezione è Python, che ha deciso di assegnare agli interi una

grandezza variabile e non predefinita, attraverso una codifica non standard

degli interi, che ci permette di compiere sugli interi qualsiasi calcolo che

la memoria del nostro calcolatore ci consenta. Questa soluzione riduce

rogramma, ma a fronte

fisico.

Operazione di somma in binario

In binario si ha 1 + 1 = 10.

In generale, se si sta facendo una somma a più cifre in binario, si utilizza

il riporto, dunque possiamo osservare un caso specifico come:

111111111 +

000000001 =

____________________________________

1000000000

Passaggio da decimale a binario

Il modo

divisioni per 2 ripetute fino ad avere 0 come risultato.

cifra relativa alla divisione che si sta svolgendo:

In alternativa si può procedere ad intuito, osservando un numero e

domandandoci quale sia la maggiore potenza di 2 al suo interno, e sommandovi

progressivamente potenze di 2 più piccole. Nel caso del numero 26, la

potenza di 2 più grande contenuta in esso è .

4

16 = 2 4

2. Sistemi di numerazione binaria e codifiche testuali

Intervalli rappresentati

Rappresentando gli interi positivi e lo zero in notazione binaria con n bit

sfruttando tutte le possibili

[0, 2 − 1], 2

disposizioni.

Interi positivi e negativi

Per rappresentare gli interi relativi, a parità di cifre si dimezza

Con un possiamo rappresentare 8 valori in diversi intervalli:

= 3,

• [0, 7]

• [−3, 4]

• [−4, 3] (avanza una codifica)

• [−3, +3]

Per ottenere questi intervalli si utilizzano varie rappresentazioni

Modulo e segno

• Complemento a 1

• Complemento a 2

• Eccesso

2

Rappresentazione in modulo e segno

La rappresentazione modulo e segno, su n bit, utilizza il primo per il segno

possono essere rappre −1 −1

[−2 + 1, + 2 − 1]

Nel caso di 4 bit, si ha la possibilità di codificare da [−7, +7]

5 = 0101 − 5 = 1101

Vengono codificati in tutto 15 numeri, in quanto si ha una doppia

rappresentazione dello zero come e

0000 1000.

utilizzo di questo sistema fa venir meno la posizionalità del sistema, e

crea dei problemi nelle operazioni.

Rappresentazione in complemento 1

Nella rappresentazione in complemento 1, ogni numero positivo viene

rappresentato con uno 0 davanti, mentre i numeri negativi iniziano con un 1,

seguito da tutte le altre cifre invertite, rispetto a quelle che avrebbero

se avessero valore positivo. bit è sempre

−1 −1

[−2 + 1, + 2 − 1]

Di conseguenza, per 4 bit, questo è [-7, +7]. Esempio:

5 = 0101 − 5 = 1010

Si ha tuttavia che sia sia codificano lo zero.

0000 1111 5

2. Sistemi di numerazione binaria e codifiche testuali

Questo è sistema è un sistema posizionale, in quanto si considera che

−1

−(2 − 1)

Si ha infatti −5 = 1010

(−7)

−5 = 1 ⋅ + 0 ⋅ 4 + 1 ⋅ 2 + 0 ⋅ 1

Questo sistema è posizionale e ci permette di fare i conti nel modo in cui

li conosciamo, ma presenta ugua

Anteprima
Vedrai una selezione di 10 pagine su 162
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 1 Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 2
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 6
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 11
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 16
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 21
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 26
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 31
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 36
Anteprima di 10 pagg. su 162.
Scarica il documento per vederlo tutto.
Riassunto esame Fondamenti di informatica, Prof. Santucci Giuseppe, libro consigliato Architettura dei calcolatori, Andrew S. Tanenbaum Pag. 41
1 su 162
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Bizzus_ di informazioni apprese con la frequenza delle lezioni di Fondamenti di informatica e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Roma La Sapienza o del prof Santucci Giuseppe.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community