23
L’architettura di Von Neumann CPU RAM Mem second I/O bus

Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Embed Size (px)

Citation preview

Page 1: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

L’architettura di Von Neumann

CPU RAMMem

secondI/O

bus

Page 2: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

RAM = Random Access Memory memoria ad accesso casuale

Nella RAM, come ovunque in un computer, le informazioni sono rappresentate con sequenze di 0 e di 1. Numeri binari.

La RAM quindi è fatta per contenere tali numeri.

•un bit può contenere o 0 o 1

•un byte è una sequenza di 8 bits

•una parola consiste di 4 bytes

Page 3: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

quindi la RAM è

una sequenza di bytesbyte

da cui si leggono ed in cui si scrivono singoli byte o blocchi di 4 bytes consecutivi: le parole.

bit

parola

Page 4: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

0

1

2

3

4

5

6

7

8

9

10

11

Indirizzamento di byte e parolebyte

0

1

2

parola00000000

00000001

00000010

00000011

00000100

00000101

00000110

00000111

00001000

00001001

00001010

00001011

in binario

Page 5: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

unità di misura della RAM

1 Kilo byte: 210 = 1024 bytes, 1000

1 Mega byte: 220 = 1.048.576 bytes, 1000000

1 Giga byte 230 = 1.073.741.824 bytes, 109

1 Tera byte 240 = 1.099.511.627.776 bytes, 1012

Page 6: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

• RAM accedere ad ogni byte ha la stessa durata (10-7 sec): non dipende da quale byte è stato acceduto prima

• è volatile: se tolgo la spina l’informazione è persa (c’è anche la ROM)

• ogni byte ha un indirizzo 0,1,2......

• il byte è la minima quantità accessibile (attraverso il suo indirizzo)

Caratteristiche della RAM

Page 7: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

La CPU: unità centrale di calcolo:

bus

RAM

ALU

CI1 CI2 CIk

P

IP

RC

CPU

R0

Rn

registri di calcolo

esegue programmi che sono nella RAM

Page 8: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

La CPU esegue continuamente il ciclo ADE=Access/Decode/Execute

• Access: preleva dalla RAM la prossima istruzione da eseguire (l’indirizzo è in P, l’istruzione viene messa in IP)

• Decode: decifra il codice dell’istruzione I che si trova memorizzata in IP

• Execute: la esegue attivando il circuito CI

Page 9: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Memoria Secondaria:

• è permanente

• dischi fissi, floppy, nastri magnetici, CD

• accesso sequenziale o misto (il tempo varia a seconda dell’accesso precedente)

• è adatta per leggere/scrivere grandi quantità di dati (in posizioni contigue)

Page 10: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

I/O = Input/Output

Dispositivi di comunicazione utente computer. In un personal computer:

• Input = tastiera

• output = video / stampanti

• velocità diverse e molto minori delle altre parti del computer (decimi di sec)

Page 11: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

I dati fondamentali sono:INTERI, REALI e CARATTERI

Il computer ha memoria finita e quindi l’insieme dei numeri interi rappresentabili, quello dei numeri reali rappresentabili e quello dei caratteri rappresentabili sono necessariamente finiti.

Rappresentazione dei dati nella RAM

Page 12: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Gli interi nel computer

e i negativi ?

Generalmente gli interi occupano una parola di 32 bit: in tutto 232 numeri distinti.

0201

0min

n

i

ix

12211

0max

nn

i

ix

1

0

00

11

11 2222

n

i

ii

nn bbbbx

Con n bit bn-1…b1b0 si rappresentano interi positivi da 0 a 2n-1:

Page 13: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Riserviamo il primo bit per il segno:0 = positivo 1 = negativo.

I numeri positivi rappresentabili sono quelli compresi tra 0 e 2n-1-1

Vi sono due modi per rappresentare i numeri negativi detti rispettivamente rappresentazione con complemento a 1 e con complemento a 2.

Page 14: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Complemento a uno

Si complementa a 2n-1 il valore assoluto del numero.

Esempio con n = 6 bit: la rappresentazione di –10 è:

63- 10=--- 53

111111- 001010=------- 110101

in binario

Page 15: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Problemi:• 2 rappresentazioni per lo 0: +0 e –0

63- 0=--- 63

111111- 000000=------- 111111

in binario

• complicata realizzazione delle operazioni aritmetiche

Concludendo: con n = 6 si rappresentano i numeri:

0 1 ... 31 32 ... 63

0 1 ... 31 -31 ... -0 positivi negativi

Rappr.

Numero

Page 16: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Complemento a due

Si complementa il valore assoluto del numero a 2n invece che a 2n-1.

Esempio con n = 6 bit: la rappresentazione di –10 è:

64- 10=--- 54

1000000- 001010=-------0110110

in binario

Page 17: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Complementando 0 si ottiene ancora 0

64- 0=--- 64 ha gli ultimi 6 bit uguali a 0

in binario 1000000- 000000=-------1000000

Complementando 54 (che rappresenta –10) si ottiene 64- 54=--- 10 ha il bit 5 uguale a 0(positivo)

in binario 1000000- 110110=-------0001010

Page 18: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Complementando 32 (che rappresenta –32) si ottiene

64- 32=--- 32 ha il bit 5 uguale a 1(negativo)

in binario 1000000- 100000=-------0100000

Concludendo: con n = 6 si rappresentano i numeri:

0 1 ... 31 32 ... 63

0 1 ... 31 -32 ... -1 positivi negativi

Rappr.

Numero

Page 19: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

In generale: con n bits

positivi 0 .... 2n-1-1

negativi -2n-1 .... -1

Page 20: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

La somma è semplice (n = 6)

10+ 12=--- 22

Somma di numeri positivi: 10+12

in binario 001010+ 001100=-------0010110

001000riporto

I due ultimi riporti sono uguali

Page 21: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

Somma di numeri negativi: (-10)+(-12)

-10 64-10 = 54 -12 64-12 = 52

106-64=42

bit di overflow

54+ 52=---106

complemento

64-42 = 22

verifica

-22 64-22= 42

in binario 110110+ 110100=-------1101010

110100riporto

I due ultimi riporti sono uguali

Page 22: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

54+ 12=--- 66

Somma con un numero negativo (-10)+12

-10 64-10 = 54

66-64 = 2

in binario 110110+ 001100=-------1000010

111100riporto

I due ultimi riporti sono uguali

Page 23: Larchitettura di Von Neumann CPU RAM Mem second I/O bus

27+ 12=--- 39

Risultato troppo grande 27+12

64-39 = 25 -25 64-25= 39

= -25 errore di overflow

in binario 011011+ 001100=-------0100111

011000riporto

I due ultimi riporti sono diversi