•
•
•
•
• 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
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Riassunto esame Calcolatori Elettronici, Prof. Colombo Carlo, libro consigliato Architettura e organizzazione dei c…
-
Riassunto esame Calcolatori Elettronici, Prof. Colombo Carlo, libro consigliato Calcolatori elettronici - Architett…
-
Riassunto esame Diritto romano, Prof. Gianni Santucci, libro consigliato Basi romanistiche di istituti privatistici…
-
Riassunto esame Concetti giuridici di base, Prof. Gianni Santucci, libro consigliato Basi romanistiche di istituti …