Estratto del documento

1

16

Introduzione al corso di Architettura

degli Elaboratori

A. Rodà

(adattamento da G. Chiola)

Architettura degli Elaboratori © 2013

Elaboratore elettronico 2

16

• Un elaboratore elettronico è una macchina

automatizzata per l’elaborazione di dati, numerici o

di altro tipo

• Macchina di tipo «universale», capace cioè di

eseguire diversi programmi per la risoluzione di

una grande varietà di problemi

Architettura degli Elaboratori © 2013

Un primo esempio di macchina... 3

• Si adatta a differenti tipi di 16

bucato.

programmata mediante un

• Viene

linguaggio fatto da singole parole

- "Cotone", "Colorati", "Sintetici", "Lana".

• Non esegue controlli

- è compito dell’utente impartire ordini

corretti leggendo prima il manuale d’uso.

• Anche impartendo ordini corretti

la macchina potrebbe non dare i

risultati aspettati -> guasto.

Architettura degli Elaboratori © 2013

Un primo esempio di macchina... 4

• Se la macchina si guasta, il tecnico della manutenzione userà

descrizioni dello stesso elettrodomestico diverse dal manuale 16

d'uso

- schemi elettrici, catalogo delle parti, ecc.

• Utilizzerà quindi un modo diverso di osservare e manipolare la

stessa macchina -> un diverso livello di astrazione.

Architettura degli Elaboratori © 2013

Preparare una pizza... 5

• Per cucinare una pizza occorre procurarsi gli 16

ingredienti, la ricetta, ed una serie di

attrezzi.

• La ricetta farà uso di un linguaggio che

dobbiamo essere in grado di comprendere e

dovrà descrivere il procedimento in termini di

passi elementari che dobbiamo essere in grado

di realizzare.

• In termini informatici, la realizzazione di una

pizza seguendo passo passo le indicazioni di

una ricetta costituisce una attività detta

interpretazione da parte di una macchina

virtuale (noi stessi nella fattispecie).

Architettura degli Elaboratori © 2013

Preparare una pizza... 6

• Talvolta potremmo aver bisogno di istruzioni più dettagliate 16

per portare a termine un’operazione (ad es. “scaldare il

forno”).

• L'eventuale interruzione della interpretazione della ricetta

per leggere su un altro manuale le istruzioni dettagliate di

accensione e regolazione della temperatura, in termini

estensione procedurale, per

informatici costituisce una

sopperire ad una mancanza di corrispondenza tra le

istruzioni contenute nella ricetta (programma da eseguire)

e l'insieme delle istruzioni che la macchina virtuale (noi

stessi) conosce ed é in grado di eseguire direttamente.

• Al termine dell'interpretazione della procedura "scaldare il

forno" la macchina virtuale può tornare all'interpretazione

del programma principale, dal punto in cui l'aveva

interrotto.

Architettura degli Elaboratori © 2013

In pizzeria... 7

• In pizzeria l'interazione avviene con un 16

cameriere, il quale assume agli occhi del

macchina virtuale

cliente il ruolo di

• Il linguaggio usato per la comunicazione

cliente-cameriere sarà quello dei nomi delle

linguaggio ad alto

pizze scritte sul menù ->

livello

• Ordinando al cameriere una “quattro

stagioni" comandiamo alla macchina virtuale

pizzeria l'esecuzione di una attività

complessa, il cui risultato é quello di far

arrivare al tavolo la pizza desiderata,

disinteressandosi dei dettagli

Architettura degli Elaboratori © 2013

In pizzeria... 8

16

• Il cameriere scriverà l'ordine su un pezzo di carta

codificare in forma

usando delle convenzioni per

abbreviata l'ordine.

• Il cameriere, passato l’ordine, può dedicarsi a

servire un altro tavolo, demandando quindi il

completamento dell'esecuzione dell'istruzione ad

un'altra macchina virtuale (il pizzaiolo) -> catena di

pipeline.

montaggio, che gli informatici chiamano

Architettura degli Elaboratori © 2013

In pizzeria... 9

• La macchina virtuale pizzaiolo interpreta gli ordini ricevuti dal cameriere 16

applicando una serie di passi elementari che ha imparato ad eseguire una

volta per tutte e che ricorda in permanenza (stendere la pasta, aggiungere

la passata di pomodoro, aggiungere la mozzarella, ecc.).

• In termini informatici, il pizzaiolo esegue una istruzione della sua macchina

micro istruzioni presenti in una sua

virtuale interpretando una sequenza di

memoria permanente (firmware) ed univocamente associate a ciascun codice

che il cameriere scrive sull'ordine.

• L'esecuzione delle micro istruzioni può essere interrotta solo nel caso si

manifestino delle eccezioni (o trap), ad esempio per esaurimento degli

ingredienti o per mancato riconoscimento del codice di un comando.

• Il trattamento di una eccezione può comportare un ritardo nel

completamento dell'esecuzione del comando (per esempio chiedendo a voce

al cameriere di chiarire cosa c’era scritto nella comanda) o l'aborto (col

cameriere che torna dal cliente e si scusa di non poter soddisfare l'ordine a

causa dell'esaurimento dei carciofini).

Architettura degli Elaboratori © 2013

Stratificazione a livelli 10

• Storicamente si é venuta consolidando una 16

stratificazione dei livelli di astrazione utilizzati

per progettare e per descrivere un sistema di

calcolo

- L 5 Linguaggi di alto livello

- L 4 Assembler

- L 3 Nucleo del Sistema Operativo

- L 2 Macchina convenzionale

- L 1 Micro Architettura o Trasferimento tra Registri

- L 0 Logica Circuitale

- L-1 Elettronica Circuitale e/o Fotonica

- L-2 Fisica dello stato solido

Architettura degli Elaboratori © 2013

Stratificazione a livelli 11

• L 5 Linguaggi di alto livello 16

- Il livello di macchina virtuale normalmente usato dal programmatore di

applicazioni eseguite dal sistema di calcolo;

• L 4 Assembler

- Il livello di macchina virtuale più basso utilizzabile dal programmatore

di applicazioni eseguite dal sistema di calcolo;

• L 3 Nucleo del Sistema Operativo

- Il livello di macchina virtuale che permette l'attivazione di programmi

indipendenti (processi) e l'uso delle risorse fisiche del sistema da

parte di questi programmi, senza interazioni logiche tra loro;

• L 2 Macchina convenzionale

- Il livello di definizione delle istruzioni base del computer e degli altri

dispositivi fisici che compongono il sistema;

Architettura degli Elaboratori © 2013

Stratificazione a livelli 12

• L 1 Micro Architettura o Trasferimento tra Registri 16

- Il livello di definizione del funzionamento dei singoli componenti

fisici del sistema in termini di interconnessione e spostamento di

informazioni tra circuiti logici elementari;

• L 0 Logica Circuitale

- Il livello di realizzazione dei circuiti logici elementari basato sulla

logica Booleana;

• L-1 Elettronica Circuitale e/o Fotonica

- Il livello di progettazione dei circuiti logici elementari in termini di

transistor o dispositivi optoelettronici;

• L-2 Fisica dello stato solido

- Il livello di progettazione dei dispositivi elettronici integrati sulla

base delle caratteristiche fisiche dei semiconduttori.

Architettura degli Elaboratori © 2013

Stratificazione a livelli 13

Fondamenti di informatica

L 5 Linguaggi di alto livello 16

L 4 Assembler Sistemi operativi

L 3 Nucleo del Sistema Operativo

L 2 Macchina convenzionale

L 1 Micro Architettura o Trasferimento tra Registri

L 0 Logica Circuitale

L-1 Elettronica Circuitale e/o Fotonica

L-2 Fisica dello stato solido Corsi di elettronica

Architettura degli Elaboratori © 2013

Corso di Architettura degli elaboratori 14

L 5 Linguaggi di alto livello 16

L 4 Assembler

L 3 Nucleo del Sistema Operativo

L 2 Macchina convenzionale

L 1 Micro Architettura o Trasferimento tra Registri

L 0 Logica Circuitale

L-1 Elettronica Circuitale e/o Fotonica

L-2 Fisica dello stato solido

Architettura degli Elaboratori © 2013

Programma del corso 15

• Reti logiche (combinatorie e sequenziali) -> L0 16

• Architettura ed organizzazione degli elaboratori -> L1

• Istruzioni di macchina -> L2

- PD32

• Introduzione al linguaggio assembly -> L4

- Il processore ARM:

- Samsung S3C2440

- Attività di laboratorio: uso del linguaggio assembly

Architettura degli Elaboratori © 2013

16

16

Fine

Introduzione al corso di

Architettura degli Elaboratori

Architettura degli Elaboratori © 2013

Testo di rif.to:

[Congiu] - 1.1 (pg. 1–17)

Rappresentazione delle informazioni

-1.g Informazioni numeriche

Rappresentazione delle informazioni 1

Stringa di 32 bit nella memoria di un elaboratore:

11100000100000010010000000000000

Cosa rappresenta? Dipende ... 40

32

certamente una di 2 =4294967296 (4G) possibili cose diverse:

un’istruzione ARM:

• add r2, r1, r0

un numero naturale (in base 2):

• 4034994176

10

un numero intero (complemento a 2):

• -259973120

10

un numero razionale (floating point):

• 66

-74435494641179600000 (-1,0087890625 )

×2

10 10

una stringa di 4 caratteri (ASCII):

• ‘<SOH> <NUL>

una stringa di 4 caratteri (ASCII estesa):

• ü <NUL>

a

uno di 4G possibili colori diversi di un pixel

• . . .

• © 2017

Architettura degli Elaboratori

Cosa vedremo 2

1. I sistemi di numerazione

• Decimale, binario, esadecimale… 40

• Conversioni di base

2. Le informazioni numeriche

• Numeri naturali (senza segno o “unsigned”)

• Numeri interi (con segno o “signed”)

• Numeri non interi (Þ fixed-/floating-point)

3. Le informazioni non numeriche

• Testi, immagini, suoni, video… © 2017

Architettura degli Elaboratori

Il sistema posizionale 3

(… .a =

a a a a …) b

2 1 0 -1 -2 40

2 1 0 -1 -2

= + + + + +…

…+ a ·b a ·b a ·b a ·b a ·b

2 1 0 -1 -2

i

= a ·b

S i i

• è la base del sistema di numerazione

b

• Gli sono le cifre del numero

a i

• Il valore di una cifra dipende

dalla sua posizione © 2017

Architettura degli Elaboratori

Sistema decimale 4

• b=10 40

• Possibili cifre: {0;1;2;3;4;5;6;7;8;9}

3

2095.42 = 2 · 10 +

10 2 +

0 · 10

9 · 10 +

5 +

4 / 10 +

2

2 / 10 © 2017

Architettura degli Elaboratori

Sistema binario 5

• b=2 40

• Possibili cifre: {0;1} 4

= 1 · 2 +

11011.101

2 3

1 · 2 +

2

0 · 2 +

1 · 2 +

1 +

1 / 2 +

2 +

0 / 2 3 = 27.625

1 / 2 10 © 2017

Architettura degli Elaboratori

Sistema ottale 6

• b=8

• Possibili cifre: {0;1;2;3;4;5;6;7} 40

2

= · 8 +

3

375.1

8 · 8 +

7 +

5 / 8 =

1 253.125

10

Una cifra ottale può rappresentare 3 cifre binarie:

110 011 101 001 110011101001 = 6351

2 8

6 3 5 1 © 2017

Architettura degli Elaboratori

Sistema esadecimale 7

• b=16

• Possibili cifre: {0;1;2;3;4;5;6;7;8;9;A;B;C;D;E;F} 40

2

= · 16 +

7B9.1 7

16 · 16 +

11

+

9 / 16 =

1 1977.0625

10

Una cifra esadecimale può rappresentare 4 cifre binarie:

1100 1110 1001 110011101001 = CE9

2 16

C E 9 © 2017

Architettura degli Elaboratori

Conversioni di base (1 di 4) 8

• Da ottale/esadecimale a binario: 40

espansione di ogni cifra in una terna/quaterna di

cifre binarie.

• Da binario a ottale/esadecimale:

raggruppamento in terne/quaterne di cifre e

sostituzione di ciascuna terna/quaterna con

l’opportuna cifra ottale/esadecimale.

• Da qualsiasi base a decimale:

applicando la definizione di notazione posizionale.

© 2017

Architettura degli Elaboratori

Conversioni di base (2 di 4) 9

Da decimale a qualsiasi altra base b

si prendono i resti

Parte intera: 40

delle divisioni successive per b

Esempio: 2009 = 7D9

10 16

2009/16 = 125 resto: 9

125/16 = 7 resto: 13=D L’ultima cifra

16 è la più

7/16 = 0 resto: 7 significativa

Il procedimento si arresta © 2017

Architettura degli Elaboratori

Conversioni di base (3 di 4) 10

Da decimale a qualsiasi altra base b

si prendono le parti intere

Parte frazionaria: 40

delle moltiplicazioni successive per b

Esempio: 0.6875 = 0.1011

10 2

0.6875·2 = 1.375 parte intera: 1 La prima cifra

0.375·2 = 0.75 parte intera: 0 è la più

significativa

0.75·2 = 1.5 parte intera: 1

0.5·2 = 1 parte intera: 1

Il procedimento si arresta © 2017

Architettura degli Elaboratori

Conversioni di base (4 di 4) 11

Da decimale a qualsiasi altra base b

Parte frazionaria 40

Il procedimento può anche essere infinito!

= 0. …

Esempio: 0.3 01001

10 2

0.3·2 = 0.6 parte intera: 0

0.6·2 = 1.2 parte intera: 1

0.2·2 = 0.4 parte intera: 0

0.4·2 = 0.8 parte intera: 0

0.8·2 = 1.6 parte intera: 1

0.6·2 = 1.2 parte intera: 1

… … … © 2017

Architettura degli Elaboratori

Rappresentazione negli elaboratori 12

Negli elaboratori, l’elemento base

per la rappresentazione delle 40

informazioni è il BInary digiT o più

semplicemente BIT (Tukey, 1947).

Può essere realizzato in molti modi

diversi (carica elettrica, campo

magnetico, ecc.), ma in tutti i casi può

assumere esattamente 2 valori e

corrisponde quindi a una cifra binaria.

Qualsiasi informazione in un

elaboratore è rappresentata tramite un

numero finito di bit. © 2017

Architettura degli Elaboratori

Rappresentazione finita: osservazione 13

Utilizzando un numero di cifre finito si può

rappresentare solo una quantità finita di numeri. 40

Esempio per i numeri naturali:

base n. di cifre quantità min max

M M

10 M 10 0 10 -1

4

10 4 10 0 9999

M M

0 2 -1

2 M 2 4

2 4 2 0 15

10

2 10 2 0 1023

20

2 20 2 0 1048575

30

2 30 2 0 1073741823 © 2017

Architettura degli Elaboratori

Potenze di 2 14

Quando il numero di bit è elevato, si usano delle

abbreviazioni analoghe a quelle delle unità di misura 40

Prefisso Nome Pot. di 2 Valore

10

1Ki

1K kibi-

kilo- 2 1.024

20

1Mi

1M mega-

mebi- 2 1.048.576

30 1.073.741.824

1Gi gibi-

1G giga- 2 40 12

1T tera- 2 ~1.1 x 10

1Ti tebi-

IEC

60027 50 15

1P peta- 2 ~1.1 x 10

1Pi pebi- 60 18

1Ei

1E exbi-

exa- 2 ~1.2 x 10

70 21

1Z zeta- 2 ~1.2 x 10

1Zi zebi- 80 24

1Y yotta- 2 ~1.2 x 10

1Yi yobi- © 2017

Architettura degli Elaboratori

Numeri naturali 15

Esempio di rappresentazione con M=4 cifre (bit): 40

0000 = 0

2 10

0001 = 1

2 10

0010 = 2

2 10

0011 = 3

2 10

0100 = 4

2 10

1110 = 14

2 10

1111 = 15

2 10

I numeri maggiori di 15 non sono rappresentabili. © 2017

Architettura degli Elaboratori

Numeri interi: ampiezza e segno 16

Il primo bit (quello più significativo) viene utilizzato

per indicare il segno: 40

1111 -7

«

2 10

1110 -6

«

2 10

1101 -5

«

2 10

1001 -1

«

2 10

1000 -0

«

2 rappresentazioni 2 10

dello 0 0000 = +0

10

2

0001 = +1

2 10 Si riduce il numero

… di interi positivi

rappresentabili

0110 = +6

2 10

0111 = +7

2 10 © 2017

Architettura degli Elaboratori

Numeri interi: eccesso P 17

Il valore rappresentato si ottiene sottraendo P

al valore calcolato secondo la notazione posizionale. 40

M-1

Esempio con M=4 e P=8 (di solito P=2 ):

0000 -8 = 0 -8

«

2 10 10 10

0001 -7 = 1 -8

«

Dissimmetria 2 10 10 10

0010 -6 = 2 -8

«

2 10 10 10

… -1

0111 «

2 10 Una sola

1000 0 rappresentazione

«

2 10 dello 0

1001 1

«

2 10

1110 6

«

2 10

1111 7

«

2 10 © 2017

Architettura degli Elaboratori

Numeri interi: complemento a 1 18

La rappresentazione di un intero positivo coincide con

quella del corrispondente numero naturale. 40

La rappresentazione di un intero negativo si ottiene

complementando bit a bit quella del suo opposto.

1000 -7

«

2 10

1001 -6

«

2 10

1110 -1

«

2 10

1111 -0

«

2 rappresentazioni 2 10

dello 0 0000 = +0

2 10

0001 = +1

2 10

0110 = +6

2 10

0111 = +7

2 10 © 2017

Architettura degli Elaboratori

Numeri interi: complemento a 2 19

La rappresentazione di un intero positivo coincide con

quella del corrispondente numero naturale. 40

La rappresentazione di un intero negativo si ottiene

aggiungendo una unità al complemento a 1.

1000 -8

«

2 10

1001 -7

«

2 10

1111 -1

«

2 10

0000 = 0

2 10

0001 = +1

2 10

= +6

0110

2 10

<
Anteprima
Vedrai una selezione di 10 pagine su 629
Appunti Architettura ed Elaboratori Pag. 1 Appunti Architettura ed Elaboratori Pag. 2
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 6
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 11
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 16
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 21
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 26
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 31
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 36
Anteprima di 10 pagg. su 629.
Scarica il documento per vederlo tutto.
Appunti Architettura ed Elaboratori Pag. 41
1 su 629
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 miro.1998 di informazioni apprese con la frequenza delle lezioni di Architettura ed Elaboratori 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 Padova o del prof Silvestri Francesco.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community