A cura di: Giulia Bonacina e Fabiana Motteran
Prof: Claudio Cancelli
Informatica - 3^C_Liceo_Tecnologico
A.S. 2005-2006
JOB TITLE
Le Grandezze Binarie
Il Bit ed il Byte
Il Microprocessore
I Bus di Sistema
La Memoria Centrale
LE GRANDEZZE BINARIE
Alcune grandezze sono già per loro natura discrete (per esempio numeri interi), tuttavia i
valori che possono assumere sono infiniti, mentre nella realtà il numero è finito. Altre
grandezze sono continue (ad esempio numeri reali); in questo caso per renderle discrete
necessitano di una approssimazione.
Le grandezze binarie sono delle grandezze che possono essere espresse tramite solamente
due valori: 0 e 1, detti valori logici.
ESEMPI:
“zero”→0
“uno”→1
“dieci”→ 0
“venti”→ 1
pixel “colore bianco”→ 0
pixel “colore nero” → 1
Per rappresentare più di due valori usiamo una sequenza/(vettore) di bit:
“zero”→
“uno”→
“due”→
“tre”→
00
01
10
11
“da zero a dieci eluso”
“da dieci a venti eluso”
“da venti a trenta eluso”
“da trenta a quaranta eluso”
→
→
→
→
00
01
10
11
1
I calcolatori elettronici sono in grado solo di utilizzare grandezze binarie (bit): un “bit” può
quindi assumere due valori logici, indicati convenzionalmente mediante 0 ed 1.
IL BIT ED IL BYTE
Nel sistema di numerazione binario ciascuna cifra prende il nome di BIT.
Il “bit” è la forma contratta di Binary Digit (cifra binaria), e può assumere due valori
convenzionalmente indicati con 0 e 1. Il “bit” è la più piccola unità di informazione che un
computer può elaborare o memorizzare ed è utilizzato per la codifica dei dati e delle
informazioni in tutti i sistemi di elaborazione digitali. Fisicamente consiste in un impulso
inviato a un circuito o nella magnetizzazione di una piccola porzione di un disco o di un nastro,o
di un foro presente sulle superfici dei CD. Un gruppo di otto “bit” costituisce il BYTE, che
codificano informazioni elementari quali le lettere dell'alfabeto e le cifre numeriche. Nel
sistema di codifica “ASCII-8 o ASCII esteso” a ciascun carattere alfanumerico corrisponde
un Byte, potendo così rappresentare fino a 256 caratteri.
0 1 0 0 1 0 1 0
J
Un BYTE
La codifica dei dati binari fa uso dei seguenti multipli:
1 kilobyte (KB)
1 megabyte (MG)
1 gigabyte (GB)
1 terabyte (TB)
→ corrisponde a 1024 byte
→ corrisponde a 1.048.576 byte
→ corrisponde a 1.073.741.824 byte
→ corrisponde a 1.099.511.627.116 byte
Poiché nei sistemi che operano in base binaria le quantità vengono solitamente espresse in
termini di potenze di 2, vale la seguente corrispondenza:
1 KB → equivale a 210 byte
= 1024 byte
1 MB → equivale a 220 = 210× 210
= 1024 × 1024 byte
30
10
10
10
1 GB → equivale a 2 = 2 × 2 × 2 = 1024 × 1024 × 1024 byte
2
Il sistema binario svolge un ruolo importante nella tecnologia dei computer. I primi 20 numeri
della notazione binaria sono 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011, 1100, 1101,
1110, 1111, 10000, 10001, 10010, 10011, 10100, dove, procedendo da destra verso sinistra, i
singoli simboli rappresentano i coefficienti delle potenze successive di due. Ad esempio,
cominciando da destra, 10101101 equivale a (1 × 20) + (0 × 21) + (1 × 22) + (1 × 23) + (0 × 24) +
(1 × 25) + (0 × 26) + (1 × 27).
Poiché sono coinvolti solo due valori per ciascun “bit”, il sistema binario è particolarmente
utile; infatti ogni combinazione binaria può essere rappresentato, ad esempio, dalla posizione
di una serie di interruttori. La posizione on corrisponde a 1, la posizione off a 0. Anziché
interruttori, si possono anche usare dei punti magnetizzati su un nastro o un disco magnetico:
un punto magnetizzato rappresenta la cifra 1, l'assenza di un punto magnetizzato è invece la
cifra 0.
I flip-flop sono dei dispositivi elettronici che consentono di memorizzare le informazioni
binarie con due livelli di tensione.
I circuiti logici dei computer eseguono le diverse operazioni elaborando i dati codificati in
binario e l’interfaccia verso le unità analogiche esterne, avviene tramite opportune
conversioni:
ANALOGICO
DIGITALE
→
→
DIGITALE
ANALOGICO
IL MICROPROCESSORE
I tre elementi concettuali che distinguono un calcolatore risultano l’elaborazione, la
memorizzazione e la comunicazione. L’elaborazione è affidata al microprocessore che risulta l’
Unità Centrale di Elaborazione (CPU- Central Processing Unit) con il compito di realizzare
tutte le operazioni di calcolo e di controllo delle unità periferiche esterne (Memoria e
Registri): tali compiti vengono eseguiti tramite programmi memorizzati nella memoria
2.
Memoria
Memorizzazione
Memoria
1.
Elaborazione
Unità Centrale
di Elaborazione
Centrale
di Massa
Interconnessione
Collegamenti
(BUS/Cavi)
3.
Comunicazione
(interfaccia)
Periferiche
3
centrale. Il microprocessore è quindi la parte centrale di una infrastruttura hardware in un
sistema informatico.
I microprocessori trovano comunissimo impiego in tutte le
applicazioni che fanno uso dei calcolatori ed è impiegato
quindi nei sistemi di elaborazione delle informazioni per
varie applicazioni, dalla didattica all'elaborazione di testi,
dal controllo di macchine utensili o di processi industriali,
al monitoraggio di degenti in ospedale, o ancora nelle
calcolatrici tascabili.
I microprocessori, per il controllo di particolari processi
industriali, sono impiegati nei microcontrollori, provvisti
di memorie di sola lettura (ROM – Read Only Memory) che opportunamente programmate
forniscono una sequenza permanente di opportune istruzioni che il microprocessore esegue; il
contenuto di tali memorie può essere letto più volte, ma non modificato. I microcontrollori
dispongono anche di un’estensione ad accesso casuale (RAM- Random Access Memory) per
contenere dati transitori.
Un microprocessore è realizzato su una
singola lastrina di silicio, detta wafer o
chip, di solito non più lunga di 0,5 cm per
lato e di spessore non superiore a
0,5 mm. In grado di contenere
300
milioni di transistor in un solo chip. La
dimensione dei transistor è di 65
nanometri, ma nel 2007 sono previsti
microprocessori a 45 nm, con fili di
rame dallo spessore inferiore a 1/800 di
un capello umano. Per avere un’idea di
tale dimensione basti pensare che le
dimensioni del virus HIV è di circa 120 nm, quelle di un globulo rosso dell’uomo è di circa
6000-8000 nm.
In un’architettura orientata al collegamento tramite bus, il microprocessore dialoga con la
Memoria Centrale (detta anche elettronica), con la Memoria di Massa (detta anche Memoria
Magnetica) e con le Periferiche di Ingresso e di Uscita, compiendo una operazione all’interno
di un ciclo di tempo chiamato Bus Cycle.
La CPU è composta da tre blocchi: L’ Unità
di Controllo preposta a leggere le istruzioni
e comprenderne il tipo, l’ Unità AritmeticoLogica (ALU) che esegue le operazioni
necessarie per eseguire le istruzioni ed i
Registri, necessari a memorizzare risultati
temporanei, a dichiarare l’istruzione in
corso Instruction Register (IR), a
4
dichiarare l’istruzione successiva Program Counter (PC), e svolgere altre funzioni specifiche
del tipo di microprocessore.
I microprocessori sono classificati in funzione del numero di “bit” di informazione che
possono essere trasferiti "in parallelo" (cioè contemporaneamente) sul
Bus che contiene i Dati (DATA BUS). Questo numero è
costantemente cresciuto con lo sviluppo della tecnologia dei circuiti, e
attualmente dopo i microprocessori a 8, 16 e 32 bit, sono in
commercio a 64 bit.
IBM e MOTOROLA stanno comunque mettendo a punto un processore
a 128 bit.
Poiché il microprocessore esegue le operazioni in modo
sincronizzato, necessita di un orologio esterno che ha il
compito di fornire un segnale rettangolare (Clock) la cui
frequenza per i moderni microprocessori è dell’ordine di 3
GHz.
Nel 2007 si prevede di utilizzare Clock di 104 Hz.
Oltre al Clock un importante elemento che evidenzia la
potenza di un microprocessore è il MIPS (Milioni di istruzioni
al secondo). Il processore AMD Athlon FX-60 (Dual Core)
Tipi di chip
esegue 22.150 MIPS con un clock di 2,6 GHz.
Ed infine, in riferimento al FLOPS (FLoating point Operations
Per Second), ossia il numero di operazioni in virgola mobile al secondo, esistono oggi
elaboratori, nei centri di ricerca, che hanno rendimenti di 70 Teraflops, mentre in commercio
l’ordine di grandezza è di 0,5-1,5 Teraflops.
Nel 2010, è previsto un elaboratore con una potenza di 330 Teraflops.
I BUS DI SISTEMA
E’ il mezzo fisico che consente la comunicazione tra di l’ unità di elaborazione,la memoria e le
varie interfacce di ingresso/uscita.
Dispositivi di Input/Output
CPU
Memoria
principale
I/O
I/O
I/O
BUS
Indirizzi
Dati
Controllo
5
I trasferimenti sono gestiti dalla CPU e le singole operazioni vengono gestite all’interno del
Bus Cycle.
Vi sono tre tipi di bus:
• BUS INDIRIZZI = o Address Bus, è il bus che consente al microprocessore di
selezionare la cella specifica di memoria od il registro con cui comunicare. La
comunicazione avviene in un intervallo temporale successivo che vede coinvolto il bus
dati per trasmettere o ricevere i dati dall’unità periferica precedentemente
indirizzata. Il bus indirizzi è monodirezionale: ossia l’origine è sempre il
microprocessore e l’indirizzo è sempre nella direzione microprocessore
unità
periferica. Un microprocessore con 32 BIT di indirizzo consente una capacità di
indirizzamento diretto pari a 232 locazioni.
• BUS DATI = Data Bus, è il bus destinato al trasporto dei dati per le operazioni di
scrittura (dal microprocessore all’ unità indirizzata) e per le operazioni di lettura
(dall’unità indirizzata al microprocessore). Il bus dati per questi motivi è bidirezionale.
Un microprocessore a 64 bit denota che il BUS DATI è composto da 64 bit.
• BUS di CONTROLLO = Control Bus, è il bus che contiene i segnali di controllo
necessari alle corrette abilitazioni, al dialogo con le periferiche ed al corretto
funzionamento delle diverse parti del sistema.
In un Bus Cycle il microprocessore effettua una operazione, sincronizzata dal clock, per
interfacciare in modo diretto memoria oppure registri. La durata del Bus Cycle varia in
funzione del tipo di unità indirizzata (per i registri è di circa 1 nsec, per la memoria cache di
circa 10 nsec, per la RAM di circa 100 nsec, e per la memoria di massa di circa 10 msec).
LA MEMORIA CENTRALE (elettronica)
•
•
•
•
•
•
•
•
•
•
Contiene i dati e i programmi di dimensioni ridotte(all’
ordine di Megabyte)
Tempi di accesso: dell’ ordine di decine di nanosecondi
L’ informazione prima di essere elaborata deve essere
acquisita dalla memoria centrale e caricata in uno dei
registri della CPU
Può essere definita come un insieme di ordinato di celle contenenti istruzioni e dati
Una parola = è una stringa costituita da 0, 8, 16, 32, o 64 bit.
La posizione di ogni parola è identificata da un indirizzo
Normalmente l’accesso da parte del microprocessore è diretto (una sola operazione)
La capacità di indirizzamento in memoria è definita dalle dimensioni del bus indirizzi e
del registro indirizzi
L’ unità minima di indirizzamento è il BYTE (8 Bit)
L’ unità massima di indirizzamento è la WORD composta da tanti “bit” quanti ne può
contenere il bus dati (8-16-32-64 Bit)
Esempi:
1) uP a 8 bit:
D.B composto da 8 Bit
A.B composto da 8 Bit (28 indirizzi)
6
Calcolare il numero di Byte accessibili in modo diretto.
28 = 256 indirizzi
256 × 8 Bit → 256 Byte = 0,25 KByte
2) uP a 16 bit:
D.B composto da 16 Bit
A.B composto da 20 Bit (220 indirizzi)
Calcolare il numero di Byte accessibili in modo diretto.
220 = 1M indirizzi (1.048.576 indirizzi)
1M × 8 bit = 1 MB = 0,5 MWord
1 W = 2 Byte
3) uP a 32 bit:
D.B composto da 32 BIT
A.B composto da 32 Bit (232 indirizzi)
Calcolare il numero di Byte accessibili in modo diretto.
232 = 22 × 230 = 4 × 1.073.741.824 =
= 4 G indirizzi (4.073.741.824)
4 G × 8 bit = 4 GB
= 1 GWord
1 W = 4 Byte
Struttura della memoria
0
Indirizzi
1
cella
2
bit
X
0
1
1
0
1
0
0
1
parola
N
Dati
7
LE PERIFERICHE DI UN SISTEMA DI ELABORAZIONE
Monitor
Output
Stampante
Output
Tastiera
Input
Mouse
Input
Modem
Input/Output
Floppy disk
Input/Output
Hard disk
Input/Output
8