Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO. 01/04/03 G. Bucci - Calcolatori Elettoronici 1

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO. 01/04/03 G. Bucci - Calcolatori Elettoronici 1"

Transcript

1 Questi trasparenti sono una versione estesa di quelli prodotti per il consorzio NETTUNO 01/04/03 G. Bucci - Calcolatori Elettoronici 1

2 Giugno 1978: piedini transistori f = 5 Mhz CPI = 15 01/04/03 G. Bucci - Calcolatori Elettoronici 2

3 8086 tempo medio per istruzione: 15 * 200 ns = 3 micro secondi equivalenti a 0,33 MIPS Spazio memoria: 1 Mbyte Parallelismo: 16 bit, interno (registri) ed esterno (bus dati) L 8088 differiva solo per il bus dati a 8 bit 01/04/03 G. Bucci - Calcolatori Elettoronici 3

4 Modello di Programmazione 8 registri di uso generale 4 registri di segmento 1 registro di stato (FLAGS) 1 instruction pointer (IP) 01/04/03 G. Bucci - Calcolatori Elettoronici 4

5 Modello di Programmazione 01/04/03 G. Bucci - Calcolatori Elettoronici 5

6 Registri dati (Quasi) intercambiabili Ma hanno anche ruoli specifici: AX: accumulatore BX: base CX: contatore DX: indirizzamento I/O 01/04/03 G. Bucci - Calcolatori Elettoronici 6

7 Registri puntatori SP: Stack Pointer BP: Base Pointer per puntare entro entro lo stack SI: Source Index DI: Destination Index 01/04/03 G. Bucci - Calcolatori Elettoronici 7

8 Altri registri REGISTRI DI SEGMENTO CS SS DS ES IP FLAGS 01/04/03 G. Bucci - Calcolatori Elettoronici 8

9 IP Instruction Pointer in accoppiamento con CS ha la funzione di puntatore di programma CS IP MEM 01/04/03 G. Bucci - Calcolatori Elettoronici 9

10 FLAGS (8086) 16 bit di stato e di controllo Stato: CF, AF, OF, SF, ZF, PF Controllo: DF, IF, TF 7 0 OF DF IF TF SF ZF AF PF CF 01/04/03 G. Bucci - Calcolatori Elettoronici 10

11 Evoluzione Con l (1985): I registri di uso generale (GPR), IP e FLAGS diventano a 32 bit (EAX, EBX, ECX,., EIP, EFLAGS) Tutti GPR sono usabili per indirizzare 01/04/03 G. Bucci - Calcolatori Elettoronici 11

12 Modello a 32 bit Dal 386 in poi A 16 bit 01/04/03 G. Bucci - Calcolatori Elettoronici 12

13 Organizzazione della memoria e segmentazione (8086) 01/04/03 G. Bucci - Calcolatori Elettoronici 13

14 Organizzazione della memoria Lo spazio di memoria è logicamente diviso in segmenti Segmento: unità di memoria con estensione massima di 2 16 =64 K Un segmento può essere sistemato in qualunque posizione di memoria I segmenti possono essere adiacenti, disgiunti, parzialmente o totalmente sovrapposti 01/04/03 G. Bucci - Calcolatori Elettoronici 14

15 Segmentazione CS, DS, SS, ES contengono l indirizzo di partenza dei segmenti correnti CS -> segmento di codice DS -> segmento dati SS -> segmento stack ES -> segmento extra 01/04/03 G. Bucci - Calcolatori Elettoronici 15

16 Indirizzo logico: SR:OFFSET 0 <= indirizzo fisico < 1 M SR 0 base Memoria OFFSET indirizzo fisico 1M 01/04/03 G. Bucci - Calcolatori Elettoronici 16

17 Calcolo dell indirizzo 01/04/03 G. Bucci - Calcolatori Elettoronici 17

18 Esempio 01/04/03 G. Bucci - Calcolatori Elettoronici 18

19 La segmentazione I segmenti di codice, dati e stack rappresentano tre spazi logici associabili in modo naturale alla struttura dei programmi Programma: Codice, Dati, Var. temporanee 01/04/03 G. Bucci - Calcolatori Elettoronici 19

20 La segmentazione Tende a oscurarne la leggibilità rispetto a uno spazio di indirizzi piatto Semplifica la rilocazione (basta aggiustare i registri di segmento) 01/04/03 G. Bucci - Calcolatori Elettoronici 20

21 Indirizzi logici (composizione) Reg normale Reg alternativo OFFSET Fetch CS --- IP Stack SS --- SP Variabili DS CS,ES,SS EA Str. Sorg DS CS,ES,SS SI Str.. Dest ES --- DI BP (base) SS CS,DS,SS EA 01/04/03 G. Bucci - Calcolatori Elettoronici 21

22 Evoluzione I registri di segmento restano a 16 bit Con il 286 il contenuto dei registri di segmento viene interpretato come selettore di segmento (modo virtuale protetto) Col 386 i registri di segmento diventano 6 e i segmenti possono arrivare fino a 1 Mbyte o 4 Gbyte (a seconda della granularità) 01/04/03 G. Bucci - Calcolatori Elettoronici 22

23 Osservazioni L 8086 è stato progettato a metà anni 70 All epoca la densità di integrazione era (relativamente) bassa: solo transistori Non esistevano integrati commerciali con più di 40 piedini I progettisti hanno dovuto bilanciare le differenti esigenze Trade-off tra: obiettivi, costi (col vincolo della tecnologia) 01/04/03 G. Bucci - Calcolatori Elettoronici 23

24 Conseguenze Numero limitato di registri di CPU Registri e percorsi interni a 16 bit Indirizzo (fisico) a 20 bit solo in uscita dalla CPU Segmentazione della memoria Bus multiplexed (indirizzi e dati) Previsione di componenti di corredo (coprocessore) Tipica CPU microprogrammata: : repertorio di istruzioni complesso e disordinato 01/04/03 G. Bucci - Calcolatori Elettoronici 24

25 01/04/03 G. Bucci - Calcolatori Elettoronici 25

26 L integrato 01/04/03 G. Bucci - Calcolatori Elettoronici 26

27 L integrato: Alimentazione e Clock 01/04/03 G. Bucci - Calcolatori Elettoronici 27

28 RESET e READY Quando RESET è asserito: CS viene posto a FFFF (hex( hex) IP viene posto a 0 la prima istruzione eseguita è quella alla locazione FFFF0 Ready: : se non asserito determina cicli di wait 01/04/03 G. Bucci - Calcolatori Elettoronici 28

29 Modo Minimo/Massimo Selezionato attraverso il piedino MIN/MAX Il modo massimo prevede l uso del coprocessore esterno o di un eventuale processore di I/O 01/04/03 G. Bucci - Calcolatori Elettoronici 29

30 Bus 8086 Bus dati e indirizzi su linee condivise AD15-0 (più A19-16A 19-16) Occorrono: Latch per il bus indirizzi Transceiver per il bus dati ALE: Address Latch Enable 01/04/03 G. Bucci - Calcolatori Elettoronici 30

31 L integrato 8086 Linee Indirizzi e Dati 01/04/03 G. Bucci - Calcolatori Elettoronici 31

32 L integrato 8086 Modo minimo Vcc 01/04/03 G. Bucci - Calcolatori Elettoronici 32

33 Ricostruzione bus (in modo Minimo) 01/04/03 G. Bucci - Calcolatori Elettoronici 33

34 Ciclo di lettura A partire dal 286 (1982) bus dati e indirizzi sono separati 01/04/03 G. Bucci - Calcolatori Elettoronici 34

35 L integrato 8086 Modo massimo GND 01/04/03 G. Bucci - Calcolatori Elettoronici 35

36 Ricostruzione bus (in modo Massimo) 01/04/03 G. Bucci - Calcolatori Elettoronici 36

37 Schema di riferimento ABUS (20 bit) CPU DBUS (16 bit) Linee di controllo 01/04/03 G. Bucci - Calcolatori Elettoronici 37

38 01/04/03 G. Bucci - Calcolatori Elettoronici 38

39 Accesso alla memoria l 8086 può leggere/scrivere 16 bit (word) o 8 bit (byte) l 8088 legge/scrive sempre un byte Organizzazione Little endian Parola MSB I+1 LSB I 01/04/03 G. Bucci - Calcolatori Elettoronici 39

40 La memoria Parola a indirizzo pari FFFFF FFFFE 01/04/03 G. Bucci - Calcolatori Elettoronici 40

41 La memoria Parola a indirizzo dispari FFFFF FFFFE 01/04/03 G. Bucci - Calcolatori Elettoronici 41

42 Accesso alla memoria lettura/scrittura a 16 bit (8086): parola allineata ad indirizzo pari: : 1 ciclo di lettura/scrittura parola allineata agli indirizzi dispari: : 2 cicli di lettura/scrittura 01/04/03 G. Bucci - Calcolatori Elettoronici 42

43 Accesso alla memoria 01/04/03 G. Bucci - Calcolatori Elettoronici 43

44 Selezione BHE A0 0 0 Parola 1 0 Byte a indirizzo pari 0 1 Byte a indirizzo dispari 1 1 N. A. 01/04/03 G. Bucci - Calcolatori Elettoronici 44

45 Evoluzione Quando l architettura diventa a 32 bit (80386) la lettura è sempre per parole allineate a indirizzi multipli di 4 Dal Pentium il bus dati diventa a 64 bit: lette sempre due parole allineate 01/04/03 G. Bucci - Calcolatori Elettoronici 45

46 01/04/03 G. Bucci - Calcolatori Elettoronici 46

47 Struttura interna 01/04/03 G. Bucci - Calcolatori Elettoronici 47

48 Perché due unità? BIU ed EU possono lavorare in parallelo Quando EU è impegnata e non sta indirizzando la memoria, BIU può leggere dalla memoria la prossima istruzione in sequenza 01/04/03 G. Bucci - Calcolatori Elettoronici 48

49 La coda E una memoria di passaggio (buffer) per le istruzioni E una forma elementare di pipeline Dimensione: 6 6 byte nell byte nell /04/03 G. Bucci - Calcolatori Elettoronici 49

50 Gestione della coda (8086) Per ottimizzare l uso del bus esterno è bene che la lettura sia a 16 bit Se un istruzione di salto porta ad un indirizzo dispari, viene letto un solo byte, in modo che le successive letture siano a 2 byte alla volta Nell immagine seguente si suppone che la lettura sia ad un indirizzo pari 01/04/03 G. Bucci - Calcolatori Elettoronici 50

51 Stato iniziale (coda vuota) 01/04/03 G. Bucci - Calcolatori Elettoronici 51

52 Primo fetch Istr. 1 01/04/03 G. Bucci - Calcolatori Elettoronici 52

53 Secondo fetch Istr. 2 Istr. 1 01/04/03 G. Bucci - Calcolatori Elettoronici 53

54 Terzo fetch Istr. 3 Istr. 2 Istr. 1 01/04/03 G. Bucci - Calcolatori Elettoronici 54

55 Prelievo Istr.1 Istr. 3 Istr. 2 01/04/03 G. Bucci - Calcolatori Elettoronici 55

56 Prelievo Istr.2 Istr. 3 01/04/03 G. Bucci - Calcolatori Elettoronici 56

57 Quarto fetch Istr. 4 Istr. 3 01/04/03 G. Bucci - Calcolatori Elettoronici 57

58 Prelievo Istr. 3 Istr. 4 01/04/03 G. Bucci - Calcolatori Elettoronici 58

59 Quinto fetch Istr. 5 Istr. 4 01/04/03 G. Bucci - Calcolatori Elettoronici 59

60 Sesto fetch Istr. 6 Istr. 5 Istr. 4 01/04/03 G. Bucci - Calcolatori Elettoronici 60

61 Evoluzione Nella versione attuale (P6) La CPU ha una cache istruzioni interna Dalla cache vengono prelevati 32 byte alla volta 01/04/03 G. Bucci - Calcolatori Elettoronici 61

62 DBUS (64 bit) Cache Istruzioni (linee di 32 byte) Marcamento Decodificatore 01/04/03 G. Bucci - Calcolatori Elettoronici 62

63 DBUS (64 bit) EIP Cache Istruzioni (linee di 32 byte) Marcamento Decodificatore 01/04/03 G. Bucci - Calcolatori Elettoronici 63

64 DBUS (64 bit) EIP Cache Istruzioni (linee di 32 byte) Marcamento 32 byte Decodificatore 01/04/03 G. Bucci - Calcolatori Elettoronici 64

65 DBUS (64 bit) EIP Cache Istruzioni Marcamento Decodifica 16 byte 01/04/03 G. Bucci - Calcolatori Elettoronici 65

66 DBUS (64 bit) EIP Cache Istruzioni Marcamento 01/04/03 G. Bucci - Calcolatori Elettoronici 66

67 DBUS (64 bit) EIP Cache Istruzioni Decodifica 01/04/03 G. Bucci - Calcolatori Elettoronici 67

68 DBUS (64 bit) EIP Cache Istruzioni Marcamento 01/04/03 G. Bucci - Calcolatori Elettoronici 68

69 01/04/03 G. Bucci - Calcolatori Elettoronici 69

70 Repertorio Istruzioni Molto ampio tipico di CPU microprogrammate Istruzioni di dimensione variabile, in base al codice di operazione e alla modalità di indirizzamento L istruzione MOV ha circa 30 variazioni 01/04/03 G. Bucci - Calcolatori Elettoronici 70

71 Trasferimento dell informazione MOV destination,source PUSH source POPF OUT port, accumulator.. 01/04/03 G. Bucci - Calcolatori Elettoronici 71

72 Aritmetiche e logiche ADD destination,source DEC destination IDIV source CBW SHR destination,count 01/04/03 G. Bucci - Calcolatori Elettoronici 72

73 Trasferimento del controllo JMP target CALL procedure JZ short-label LOOP short-label RET IP /04/03 G. Bucci - Calcolatori Elettoronici 73

74 Formato Istruzioni di dimensione variabile, in base al codice di operazione e alla modalità di indirizzamento Almeno 1 byte per il codice di istruzione Da 0 a 5 byte aggiuntivi 01/04/03 G. Bucci - Calcolatori Elettoronici 74

75 Nei byte aggiuntivi Il tipo di indirizzamento Gli eventuali registri implicati Uno scostamento Un dato immediato Uno scostamento e un dato immediato 01/04/03 G. Bucci - Calcolatori Elettoronici 75

76 Istruzioni di 1 byte Operandi impliciti OP CLI Con registro PUSH AX OP R 01/04/03 G. Bucci - Calcolatori Elettoronici 76

77 Istruzioni di 2 byte Registro-registro MOV AL,BL OP R 11 R/M Registro-memoria OP m R R/M MOV AX,[BX] 01/04/03 G. Bucci - Calcolatori Elettoronici 77

78 Istruzioni di 4 byte Reg-mem con scostamento OP m R R/M Offset VAR ADD AL,VAR[BX] 01/04/03 G. Bucci - Calcolatori Elettoronici 78

79 Fetch istruzioni La decodifica delle istruzioni è basata su OP, m, R/M La loro combinazione determina il numero dei byte da estrarre dalla coda istruzioni. 01/04/03 G. Bucci - Calcolatori Elettoronici 79

80 Esempi di istruzioni PUSH AX 50 MOV AL,BL 8A C3 MOV AL,BL?????? B /04/03 G. Bucci - Calcolatori Elettoronici 80

81 Esempi di istruzioni MOV AL, VAR A0 Offset VAR MOV AL,VAR[BX] 8A 87 Offset VAR MOV AL,VAR[BX][SI+3] 8A 80 Offset VAR +3 01/04/03 G. Bucci - Calcolatori Elettoronici 81

82 Esempi di istruzioni MOV VAR[BX],077FFH C7 87 Offset VAR 77FF 01/04/03 G. Bucci - Calcolatori Elettoronici 82

83 01/04/03 G. Bucci - Calcolatori Elettoronici 83

84 Indirizzamento Tra registri MOV AL, BL MOV CX, DX ;AL := BL ;CX := DX Immediato MOV AL, 27 ;AL := 27 MOV BX, 0A1C0H ;BX; := A1C0 ( BX := A1C0 (hex) 01/04/03 G. Bucci - Calcolatori Elettoronici 84

85 Riferimento alla memoria Il normale reg di segmento è DS MOV AX, VAR ; AX<- M[DS:offset(VAR)] Registro alternativo a DS MOV AX, ES:VAR ; ES in luogo di DS ; AX <- M[ES:offset(VAR)] 01/04/03 G. Bucci - Calcolatori Elettoronici 85

86 Indirizzamento in memoria Diretto MOV VAR,AX ; M[Offset(VAR)]:= AX Indiretto attraverso registri MOV [BX],AX ;M[BX] := AX 01/04/03 G. Bucci - Calcolatori Elettoronici 86

87 Indirizzamento in memoria Relativo MOV AX,VAR[BX] ;AX := M[Offset(VAR) + BX] Indiretto e indiciato MOV AX,[BX] [SI] ;AX := M[BX + SI] 01/04/03 G. Bucci - Calcolatori Elettoronici 87

88 Indirizzamento in memoria Forma generale MOV AX,V [BX] [SI] ;EA = Offset(V) + BX + SI ;AX := M[DS:EA] 01/04/03 G. Bucci - Calcolatori Elettoronici 88

89 Riferimento allo stack Le istruzioni PUSH e POP depositano e prelevano un dato a 16 bit dalla testa dello stack (e aggiornano SP) PUSH CX POP SI 01/04/03 G. Bucci - Calcolatori Elettoronici 89

90 Stack 01/04/03 G. Bucci - Calcolatori Elettoronici 90

91 Riferimento allo stack Entro lo stack si indirizza con BP MOV [BP][DI+40], AL ;EA= BP+DI+40 ; M[SS:EA]:= AL 01/04/03 G. Bucci - Calcolatori Elettoronici 91

92 Calcolo ind di memoria 01/04/03 G. Bucci - Calcolatori Elettoronici 92

93 Evoluzione Col 386 tutti i GPR diventano utilizzabili come puntatori Viene introdotto il fattore di scala Lo scostamento è a 8, 16 o 32 bit 01/04/03 G. Bucci - Calcolatori Elettoronici 93

94 Evoluzione SEG+BASE+(INDEX*SCALE)+DISPL CS DS SS ES FS GS EAX EBX ECX EAX EBX ECX EDX EBP ESI EDI + EDX + * EBP ESI EDI NO D 8b D 32b D 01/04/03 G. Bucci - Calcolatori Elettoronici 94

95 Indirizzamento porte di I/O Diretto (256 porte IN e 256 OUT ) IN OUT AL,PORTA PORTA,AX Attraverso DX (64 K porte) IN OUT AX,DX DX,AL 01/04/03 G. Bucci - Calcolatori Elettoronici 95

96 Indirizzamento istruzioni il contatore di programma è sempre dato dalla coppia CS:IP (equivalente all usuale Program Counter) salti/chiamate di soubroutine: Intrasegmento - modificano solo IP Intersegmento - modificano sia CS che IP 01/04/03 G. Bucci - Calcolatori Elettoronici 96

97 Trasferimento del controllo Intrasegmento: sostituisce IP Diretto: : IP:= IP + SCOST SCOST: 16/8 bit codificati nell istruzione Nei salti condizionati SCOST è sempre di 8 bit CALL NEAR_Proc JMP NEL_Segmento JNE NOT_Equal 01/04/03 G. Bucci - Calcolatori Elettoronici 97

98 Trasferimento del controllo Intrasegmento: sostituisce IP Indiretto: IP viene sostituito con il contenuto di un registro o di una parola di memoria JMP CX JMP [BX].TARGET 01/04/03 G. Bucci - Calcolatori Elettoronici 98

99 Trasferimento del controllo Intersegmento: sostituisce CS,IP Diretto: : (CS,IP):= SCOST H + SCOST L SCOST: 32 bit codificati nell istruzione JMP FAR_LABEL CALL FAR_PROC 01/04/03 G. Bucci - Calcolatori Elettoronici 99

100 Trasferimento del controllo Intersegmento: sostituisce CS,IP Indiretto: CS,IP vengono sostituiti con il contenuto di due parole consecutive di memoria JMP DWORD PTR[BX] CALL [BX].TASK[SI] 01/04/03 G. Bucci - Calcolatori Elettoronici 100

101 Salti condizionati JNE NOT_Equal JZ IS_0 Massimo scostamento: In avanti di 127 posizioni Indietro di /04/03 G. Bucci - Calcolatori Elettoronici 101

102 Modello di programmazione attuale 01/04/03 G. Bucci - Calcolatori Elettoronici 102

103 Aritmetica Floating L 8086 non aveva istruzioni in virgola Il coprocessore 8087: Concepito per lavorare in parallelo e in collaborazione con la CPU Estende il repertorio istruzioni Estende il modello di programmaz.. con 8 registri da 80 bit 01/04/03 G. Bucci - Calcolatori Elettoronici 103

104 Il coprocessore x87 Aritmetica floating velocizzata di un fattore 2. Esempio: FADD 1,6 ms solo micro s con /04/03 G. Bucci - Calcolatori Elettoronici 104

105 Modello CPU-Coprocessore CPU NPX Numeric Processor Extension Bus esterno Il risultato è un processore con repertorio esteso 01/04/03 G. Bucci - Calcolatori Elettoronici 105

106 Modello esteso 01/04/03 G. Bucci - Calcolatori Elettoronici 106

107 Estensione repertorio Attraverso il codice (prefisso) di escape ESC 01/04/03 G. Bucci - Calcolatori Elettoronici 107

108 Collegamenti 01/04/03 G. Bucci - Calcolatori Elettoronici 108

109 Interazione 01/04/03 G. Bucci - Calcolatori Elettoronici 109

110 Interazione 01/04/03 G. Bucci - Calcolatori Elettoronici 110

111 Interazioni Interazione Sincronizzazione 01/04/03 G. Bucci - Calcolatori Elettoronici 111

112 Esecuzione istruzione Esempio: FADD Num CPU esegue il fetch 8087 riconosce ESC, preleva codice e indirizzo istruzione CPU legge alla prima posizione del dato (dummy read) 8087 preleva indirizzo del dato 8087 legge il resto del dato contendendo il bus alla CPU 8087 completa l istruzione 01/04/03 G. Bucci - Calcolatori Elettoronici 112

113 Controllo condivisione bus Controllo Bus locale 01/04/03 G. Bucci - Calcolatori Elettoronici 113

114 Protocollo Request/Grant 01/04/03 G. Bucci - Calcolatori Elettoronici 114

115 Integrazione Con il 486 (1989) il coprocessore è stato integrato nella CPU Il 486 integrava 1,2 M transistori 01/04/03 G. Bucci - Calcolatori Elettoronici 115

116 MMX: Multimedia Extension Col Pentium MMX (1997) è stato aggiunto un insieme di registri e di istruzioni per la multimedialità SIMD: Single Instruction Multiple Data model 01/04/03 G. Bucci - Calcolatori Elettoronici 116

117 MMX 8 nuovi registri da 64 bit (MM0, MM1,.. MM7) 57 istruzioni SIMD Esempio: packed byte integers /04/03 G. Bucci - Calcolatori Elettoronici 117

118 Streaming SIMD Extensions Introdotte col Pentium III (1999) 8 nuovi registri da 128 bit (XMM0, XMM1,.. XMM7) Istruzioni per packed and scalar single-precision floating-point 01/04/03 G. Bucci - Calcolatori Elettoronici 118

119 SSE Esempio: 128-Bit Packed Single-Precision Floating-Point (4 valori Floating singola precisione) /04/03 G. Bucci - Calcolatori Elettoronici 119

120 Prestazioni in MIPS delle CPU Intel dall'8086 al Pentium (1979) MHz 0, MHz 0,75 (1982) MHz 1, MHz 2,66 (1985) 386DX 16MHz 3,6 (1989) 386DX 33MHz 11,4 (1989) 486DX 25MHz DX2 50MHz DX4 100MHz 70,7 (1993) PENTIUM 60MHz 100 PENTIUM 133MHz 218, /04/03 G. Bucci - Calcolatori Elettoronici 120

121 Prestazioni Spec95 delle CPU Intel a partire dal Pentium Pentium 75MHz (Ott 1994) Pentium 100MHz (Mar 1994) 2,02 2,31 2,39 2,74 SPECfpP95 SPECint95 Pentium 200MHz (Giu 1996) 4,32 5,17 Pentium MMX 166MHz (Gen 1997) 4,34 5,6 Pentium MMX 233MHz (Giu 1997) 5,21 7,12 Pentium PRO 150MHz, 256K L2 (Nov 1995) 5,42 6,08 Pentium PRO 200MHz, 1MB L2 (Ago 1997) 6,8 8,66 Pentium II 233MHz (Mag 1997) 7,04 9,47 Pentium II 333MHz (Gen 1998) 9,14 12,8 01/04/03 G. Bucci - Calcolatori Elettoronici

Assembly. Modello x86

Assembly. Modello x86 Assembly Modello x86 1 Il microprocessore Un MICROPROCESSORE è un circuito integrato dotato di una struttura circuitale in grado di attuare un prefissato SET di ISTRUZIONI 2 Caratteristiche del microprocessore

Dettagli

Famiglia dei processori INTEL

Famiglia dei processori INTEL Famiglia dei processori INTEL 1975 2002 8080-8086 - 80286-80386 - 80486 - Pentium - Pentium II-III-IV - Itanium Compatibilità del SW (assemby) 8086 80286 80386 80486 Pentium Pentium III Perché studiare

Dettagli

Calcolatori Elettronici Lezione A2 Architettura i8086

Calcolatori Elettronici Lezione A2 Architettura i8086 Calcolatori Elettronici Lezione A2 Architettura i8086 Ing. Gestionale e delle Telecomunicazioni A.A. 2007/08 Gabriele Cecchetti Architettura i8086 Sommario: L i8086 Registri Accesso alla memoria: indirizzi

Dettagli

L insieme delle istruzioni (6)

L insieme delle istruzioni (6) L insieme delle istruzioni (6) Architetture dei Calcolatori (lettere A-I) Alcune note conclusive I due principi dell architettura a programma memorizzato Uso di istruzioni indistinguibili dai dati Uso

Dettagli

Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin

Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin Linguaggio Assembler Intel -cenni - Calcolatori Elettronici B a.a. 2005/2006 Massimiliano Giacomin 1 Un po di storia 1978: architettura 8086, a 16 bit, con registri dati a 16 bit e spazio di indirizzamento

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Corso di Laurea Triennale in Informatica Università degli Studi di Bari Laboratorio lez1: il processore 8086/88 Prof. S.Pizzutilo Microprocessori INTEL per il PC 8080 (1974)

Dettagli

Architettura degli Elaboratori

Architettura degli Elaboratori Architettura degli Elaboratori Corso di Laurea Triennale in Informatica Università degli Studi di Bari Anno Accademico 2009-2010 Laboratorio lez1: il processore 8086/88 Prof. S.Pizzutilo I processori Intel

Dettagli

Architettura degli elaboratori (A)

Architettura degli elaboratori (A) Laurea in Informatica a.a. 2010-2011 Laboratorio del corso di Architettura degli elaboratori (A) Modulo 1: l Architettura dell 8086 Valeria Carofiglio Linguaggi a vari livelli e loro relazioni Programma

Dettagli

Nel microprocessore 8086 abbiamo una gran quantità di registri

Nel microprocessore 8086 abbiamo una gran quantità di registri I registri del microprocessore 8086 Nel microprocessore 8086 abbiamo una gran quantità di registri AH AL AX 1 1 1 1 1 1 1 0 0 1 0 1 1 1 0 1 B H B L BX 1 0 1 0 1 0 0 1 1 1 0 1 1 0 1 0 C H C L CX 1 0 1 1

Dettagli

L architettura Intel

L architettura Intel Architettura degli Elaboratori e delle Reti Lezione 33 L architettura Intel Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 33 1/30 Le prime

Dettagli

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10)

ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) ARCHITETTURA DEL MICROPROCESSORE INTEL 8086 (iapx86/10) Chip con 40 piedini e 29000 transistori Progettato a metà degli anni 70, periodo in cui la densità di integrazione era relativamente bassa ( solo

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: motivi didattici: l architettura dei processori Intel

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel della terza generazione progetto del 1978/79 address bus: 20 bit Ä 1M byte data bus: 8 bit per l 8088, 16 bit per l 8086 identico

Dettagli

Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086.

Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086. I processori Intel Tutta la famiglia dei processori Intel (x86) si basa ed e' compatibile con il primo processore di questo tipo: l'8086. L'8086 e' un processore a 16 bit quindi i suoi registri potranno

Dettagli

Architettura 8086/8088

Architettura 8086/8088 Architettura 8086/8088 M. Rebaudengo - M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica 1 M. Sonza Reorda, M. Rebaudengo - a.a. 2007/08 Caratteristiche generali dell'8086 Usa la tecnologia

Dettagli

Architettura di una CPU

Architettura di una CPU Massimo VIOLANTE Politecnico di Torino Dipartimento di Automatica e Informatica Sommario Organizzazione di un processore Linguaggio macchina Modi di indirizzamento Tipi di istruzioni 2 M. Violante 1.1

Dettagli

Linguaggio Assembler Intel 80x86. Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin

Linguaggio Assembler Intel 80x86. Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin Linguaggio Assembler Intel 80x86 Calcolatori Elettronici B a.a. 2004/2005 Massimiliano Giacomin 1 Scopi principali Studiare un ulteriore esempio di linguaggio assembler Saper svolgere semplici programmi

Dettagli

Memoria e altro. Contenuto della lezione. Richiami Evoluzione Gerarchia Organizzazione Allineamento Indirizzamento Ecc

Memoria e altro. Contenuto della lezione. Richiami Evoluzione Gerarchia Organizzazione Allineamento Indirizzamento Ecc Memoria e altro Contenuto della lezione Richiami Evoluzione Gerarchia Organizzazione Allineamento Indirizzamento Ecc Prima di tutto un ripasso di elettronica. Logica TTL ¼ di 7400 Soglia di rumore Registro

Dettagli

Il microprocessore 8086

Il microprocessore 8086 1 Il microprocessore 8086 LA CPU 8086 Il microprocessore 8086 fa parte della famiglia 80xxx della INTEL. Il capostipite di questa famiglia è stato l 8080, un microprocessore ad 8 bit che ha riscosso un

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: motivi didattici: l architettura dei processori Intel

Dettagli

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088

ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 ARCHITETTURA DEI MICROPROCESSORI INTEL 8086/8088 microprocessori Intel di terza generazione progetto originario del 1979, ancora oggi interessanti per: 1. motivi didattici: l architettura dei processori

Dettagli

Sottosistemi ed Architetture Memorie

Sottosistemi ed Architetture Memorie Sottosistemi ed Architetture Memorie CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II La memoria centrale Memoria centrale: array di

Dettagli

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011

Sistemi Operativi. Introduzione all architettura IA-32 Lez. 16. Corso: Sistemi Operativi Danilo Bruschi A.A. 2010/2011 Sistemi Operativi Introduzione all architettura IA-32 Lez. 16 1 Microprocessori Intel Nel 1979 Intel introduce la famiglia dei microprocessore 8086 8086, 8087, 8088, e 80186 Processori a 16-bit con registri

Dettagli

Pinout PD32. Memoria di lavoro esterna. tramite l indirizzo ad esse associato. e possono essere lette o scritte: Le singole celle sono distinguibili

Pinout PD32. Memoria di lavoro esterna. tramite l indirizzo ad esse associato. e possono essere lette o scritte: Le singole celle sono distinguibili PD-32,prima parte Struttura a blocchi del sistema di calcolo MEMORIA KB Memory Address Bus Memory Data Bus Memory Control Bus PD32 I/O Address Bus I/O Data Bus I/O Control Bus IACK Device Device 7 Pinout

Dettagli

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A.

Accesso a memoria. Accesso a memoria. Accesso a memoria. Modalità di indirizzamento. Lezione 5 e 6. Architettura degli Elaboratori A. < < } } Lezione 5 e 6 Accesso a memoria A questo livello di astrazione, la memoria viene vista come un array di byte Per ogni richiesta di un dato ad un certo indirizzo, la CPU ottiene un numero di byte

Dettagli

iafelice at cs(dot)unibo(dot)it

iafelice at cs(dot)unibo(dot)it Corso di Archite@ura degli Elaboratori Modulo di Assembly ASSEMBLY 8088 Bruno Iafelice Università di Bologna iafelice at cs(dot)unibo(dot)it 1 ArgomenE Formato delle istruzioni Indirizzamento Istruzioni

Dettagli

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2

La CPU e la Memoria. Sistemi e Tecnologie Informatiche 1. Struttura del computer. Sistemi e Tecnologie Informatiche 2 La CPU e la Memoria Sistemi e Tecnologie Informatiche 1 Struttura del computer Sistemi e Tecnologie Informatiche 2 1 I registri La memoria contiene sia i dati che le istruzioni Il contenuto dei registri

Dettagli

Capitolo 10 La memoria

Capitolo 10 La memoria Capitolo 10 La memoria Memoria - classificazione Funzionalità Memoria di sola lettura (ROM): per contenere i programmi che inizializzano la macchina all accensione + il kernel del OS Memoria di lettura/scrittura

Dettagli

Architettura di un calcolatore: Introduzione parte 2

Architettura di un calcolatore: Introduzione parte 2 Corso di Calcolatori Elettronici I Architettura di un calcolatore: Introduzione parte 2 Prof. Roberto Canonico Università degli Studi di Napoli Federico II Dipartimento di Ingegneria Elettrica e delle

Dettagli

Il processore Pentium

Il processore Pentium Caratteristiche principali (I) Architettura interna a 32 bit Address bus a 32 bit: si possono indirizzare fino a 4 GB di memoria fisica Data bus a 64 bit (si tratta in pratica di 2 data bus a 32 bit in

Dettagli

Modi di indirizzamento

Modi di indirizzamento Vari modi di specificare l indirizzo degli operandi Modi di indirizzamento Capitolo 11 Immediato Diretto Indiretto Registro Registro indiretto Spiazzamento Pila 1 2 Indirizzamento immediato L operando

Dettagli

Il livello architettura e set di istruzioni

Il livello architettura e set di istruzioni Corso di Informatica 2 Prof. Sciuto Il livello architettura e set di istruzioni Daniele Paolo Scarpazza Dipartimento di Elettronica e Informazione Politecnico di Milano 7 Giugno 2004 Daniele Paolo Scarpazza

Dettagli

Architettura dei Calcolatori elettronici

Architettura dei Calcolatori elettronici Architettura dei Calcolatori elettronici CORSO DI CALCOLATORI ELETTRONICI I CdL Ingegneria Biomedica (A-I) DIS - Università degli Studi di Napoli Federico II Dal punto di vista architetturale un calcolatore

Dettagli

Il processore Pentium (G. Manduchi - M. Moro - 2001)

Il processore Pentium (G. Manduchi - M. Moro - 2001) Il processore Pentium (G. Manduchi - M. Moro - 2001) Il processore Pentium (introdotto nel 1993) rappresenta l evoluzione della linea di processori Intel formata dalla serie 8086/88, 80286, Intel386 DX

Dettagli

iafelice at cs(dot)unibo(dot)it

iafelice at cs(dot)unibo(dot)it Corso di Archite?ura degli Elaboratori Modulo di Assembly ARCHITETTURA 8088 Bruno Iafelice Università di Bologna iafelice at cs(dot)unibo(dot)it 1 Evoluzione: crescente integrazione ~7% growth per year

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Cos'è un calcolatore? Architettura dei calcolatori Esecutore automatico di algoritmi Macchina universale Elementi di Informatica Docente: Giorgio Fumera Corso di Laurea in Edilizia Facoltà di Architettura

Dettagli

Macchina di Riferimento: argomenti

Macchina di Riferimento: argomenti Macchina di Riferimento: argomenti L'architettura di una macchina MIPS Organizzazione della memoria I registri della CPU L'esecuzione dei programmi Il ciclo fetch-execute Il simulatore SPIM 1 Architettura

Dettagli

L'architettura del processore MIPS

L'architettura del processore MIPS L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento

Dettagli

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU:

Struttura CPU. Struttura e Funzione del Processore. Capitolo 12. Compiti CPU: Struttura e Funzione del Processore Capitolo 12 Struttura CPU Compiti CPU: Prelevare istruzioni Interpretare istruzioni Prelevare dati Elaborare dati Scrivere (memorizzare) dati 1 CPU con bus di sistema

Dettagli

Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086)

Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086) PROF. CARMELO CALARCO Breve guida AL LINGUAGGIO ASSEMBLY (emulatore EMU8086) 1 IL LINGUAGGIO ASSEMBLY Il linguaggio assembly è un linguaggio di programmazione a basso livello. Per linguaggi di basso livello

Dettagli

Componenti di un processore

Componenti di un processore Componenti di un processore Unità di Controllo Bus Interno REGISTRI Program Counter (PC) Registro di Stato (SR) Registro Istruzioni (IR) Registri Generali Unità Aritmetico- Logica Registro Indirizzi Memoria

Dettagli

Parte V. Il Livello delle Istruzioni Macchina

Parte V. Il Livello delle Istruzioni Macchina Parte V Il Livello delle Istruzioni Macchina V.1 Instruction Set Architecture Il livello ISA è l interfaccia tra HW e SW È il livello più basso a cui il processore è programmabile Criteri di scelta: Semplicità

Dettagli

Il processore. Istituzionii di Informatica -- Rossano Gaeta

Il processore. Istituzionii di Informatica -- Rossano Gaeta Il processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

Parte VI. Istruzioni ed indirizzamento

Parte VI. Istruzioni ed indirizzamento Parte VI Istruzioni ed indirizzamento VI.1 Instruction Set Architecture Il livello ISA è l interfaccia tra HW e SW È il livello più basso a cui il processore è programmabile Criteri di scelta: Semplicità

Dettagli

Sistemi x86 CALCOLATORI ELETTRONICI LM

Sistemi x86 CALCOLATORI ELETTRONICI LM Sistemi x86 CALCOLATORI ELETTRONICI LM 1 Registri x86 31 15 8 7 AH AX AL EAX 31 IP BH BX BL EBX CH CX DH DX CL DL ECX EDX 31 FLAGS EF SI ESI DI EDI BP EBP 15 8 7 SP CS SS DS ESP Sono presenti anche i registri

Dettagli

Cenni ad Assembly Intel

Cenni ad Assembly Intel Cenni ad Assembly Intel Luca Abeni April 17, 2015 Architerrura Intel Utilizzata sulla maggior parte dei laptop, desktop e server moderni Lunga storia Dagli anni 70 (Intel 8080-8 bit!)......fino ad oggi

Dettagli

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini

Il set istruzioni di MIPS Modalità di indirizzamento. Proff. A. Borghese, F. Pedersini Architettura degli Elaboratori e delle Reti Il set istruzioni di MIPS Modalità di indirizzamento Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Istruzioni di modifica della sequenza di elaborazione

Istruzioni di modifica della sequenza di elaborazione Istruzioni di modifica della sequenza di elaborazione Permettono di modificare la sequenza di esecuzione delle istruzioni di un programma, normalmente controllata dal meccanismo automatico di avanzamento

Dettagli

Prefazione Unit`a di misura xiii La memoria cache

Prefazione Unit`a di misura xiii La memoria cache Indice Prefazione Unità di misura xi xiii 1 La memoria cache 1 1.1 Tempo di accesso........................... 1 1.1.1 Funzionamento........................ 2 1.2 Organizzazione............................

Dettagli

Il Processore: l unità di controllo

Il Processore: l unità di controllo Il Processore: l unità di controllo La frequenza con cui vengono eseguiti i cicli di esecuzione è scandita da una componente detta clock Ad ogni impulso di clock la UC esegue un ciclo di esecuzione di

Dettagli

Architettura degli elaboratori

Architettura degli elaboratori I blocchi fondamentali dell elaboratore Architettura degli elaboratori ingresso Memoria uscita elaborazione I blocchi fondamentali dell elaboratore I blocchi fondamentali Memoria centrale (RAM) Memoria

Dettagli

Capitolo 5 Elementi architetturali di base

Capitolo 5 Elementi architetturali di base Capitolo 5 Elementi architetturali di base Giuseppe Lami Istituto di Scienza e Tecnologie dell Informazione CNR Via Moruzzi, 1 - Pisa giuseppe.lami@isti.cnr.it Struttura - Unità di elaborazione e controllo

Dettagli

Architettura x86 a 64 bit

Architettura x86 a 64 bit Architettura x86 a 64 bit Ovvero come l architettura x86 a 32 bit è stata portata a 64 bit 1 Per cominciare Contenuto Storia L architettura a 32 bit L architettura a 64 bit Avvertenza Per abitudine ci

Dettagli

Numeri Reali. Sottoinsieme discreto dei Numeri Razionali. Sequenze di bit. Underflow. Densità che dipende dal numero di bit usati

Numeri Reali. Sottoinsieme discreto dei Numeri Razionali. Sequenze di bit. Underflow. Densità che dipende dal numero di bit usati Numeri Reali Sottoinsieme discreto dei Numeri Razionali Sequenze di bit Overflow Underflow Overflow 0 Densità che dipende dal numero di bit usati 1 Numeri Reali Virgola fissa (1/5) Si usa un numero fisso

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

1 Esercizi con architettura a 1 bus

1 Esercizi con architettura a 1 bus 1 Esercizi con architettura a 1 bus 1.1 Fetch dell istruzione NOTA: l istruzione ClearY azzera il registro Y mentre l istruzione CB imposta a 1 il bit di riporto/prestito in modo da sommare/sottrarre 1.

Dettagli

Ing. Gabriele MONTI

Ing. Gabriele MONTI Ing. Gabriele MONTI 1999-2005 8086 www.ingmonti.it 1 Architettura 8086 L'8086, capostipite della famiglia 80X86, fu una dei primi microprocessori a 16 bit. In un 8086 sia il bus dati che la ALU erano a

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC

Dettagli

Architettura hardware

Architettura hardware Architettura hardware la parte che si può prendere a calci Architettura dell elaboratore Sistema composto da un numero elevato di componenti, in cui ogni componente svolge una sua funzione elaborazione

Dettagli

Architettura dei calcolatori

Architettura dei calcolatori Università degli Studi di Palermo Dipartimento di Ingegneria Informatica Elaborazione di Immagini e Suoni / Riconoscimento e Visioni Artificiali 12 c.f.u. Anno Accademico 2009/2010 Docente: ing. Salvatore

Dettagli

Sistemi e reti CPU Concetti di base

Sistemi e reti CPU Concetti di base Sistemi e reti CPU Concetti di base A cura dell Ing. Claudio Traini Cenni Storici 1971 il primo processore mai realizzato : Intel 4004 Progettato dal vicentino Federico Faggin 1 Cenni Storici 1976 Faggin

Dettagli

Esercizi su microistruzioni. 1 Esercizi con architettura a 1 bus

Esercizi su microistruzioni. 1 Esercizi con architettura a 1 bus Esercizi su microistruzioni Ogni riga elenca i segnali che vengono attivati nello stesso ciclo di clock. Si assume che lettura e scrittura dei registri avvengano all inizio e alla fine del ciclo di clock,

Dettagli

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE

ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE ARCHITETTURA DI UN SISTEMA DI ELABORAZIONE Il computer o elaboratore è una macchina altamente organizzata capace di immagazzinare, elaborare e trasmettere dati con notevole precisione e rapidità. Schematicamente

Dettagli

Architettura del Set di Istruzioni (ISA)

Architettura del Set di Istruzioni (ISA) Architettura del Set di Istruzioni (ISA) Maurizio Palesi Maurizio Palesi 1 Instruction Set Architecture (ISA) Software instruction set Hardware Maurizio Palesi 2 1 Instruction Set Architecture (ISA) Applicazioni

Dettagli

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004

SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI. NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 SOLUZIONI DELLA PROVA SCRITTA DEL CORSO DI NUOVO E VECCHIO ORDINAMENTO DIDATTICO 13 Luglio 2004 MOTIVARE IN MANIERA CHIARA LE SOLUZIONI PROPOSTE A CIASCUNO DEGLI ESERCIZI SVOLTI ESERCIZIO 1 (9 punti) Si

Dettagli

Lezione 15. L elaboratore Elettronico

Lezione 15. L elaboratore Elettronico Lezione 15 Architettura di un calcolatore L elaboratore Elettronico Un elaboratore elettronico è una macchina elettronica in grado di elaborare dati secondo le specifiche fornite da un algoritmo Internamente

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Classificazione delle memorie Funzionalità Memoria di sola lettura (ROM) Memoria di lettura/scrittura Tecnologia Memoria a semiconduttori Memoria magnetica Memoria ottica Modalità

Dettagli

DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria:

DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria: DIAGRAMMI TEMPORALI relativi all'esecuzione di una istruzione e agli accessi alla memoria: 1 Memoria centrale: è costituita da una sequenza ordinata di registri; ciascun registro è individuato da un indirizzo;

Dettagli

Sistema Operativo - Gestione della Memoria lista argomenti di studio

Sistema Operativo - Gestione della Memoria lista argomenti di studio Sistema Operativo - Gestione della Memoria lista argomenti di studio Istruzioni assembly salti assoluti salti relativi Linking Rilocazione Statica Istruzioni rilocabili (salti relativi) Istruzioni Non

Dettagli

Modi di indirizzamento del processore MC68000 (parte prima)

Modi di indirizzamento del processore MC68000 (parte prima) Corso di Calcolatori Elettronici I A.A. 2011-2012 Modi di indirizzamento del processore MC68000 (parte prima) Lezione 21 Prof. Antonio Pescapè Università degli Studi di Napoli Federico II Facoltà di Ingegneria

Dettagli

Il Sottosistema di Memoria

Il Sottosistema di Memoria Il Sottosistema di Memoria Calcolatori Elettronici 1 Memoria RAM RAM: Random Access Memory Tempi di accesso indipendenti dalla posizione Statica o Dinamica Valutata in termini di Dimensione (di solito

Dettagli

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI PROGETTO DELLA CPU MEMORIZZAZIONE DEGLI OPERANDI DOVE SONO MEMORIZZATI GLI OPERANDI NELLA CPU? ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI SCELTE PROGETTUALI: 1. DOVE SONO MEMORIZZATI

Dettagli

Elementi di Architettura

Elementi di Architettura Elementi di Architettura Fondamenti di Informatica Roberto BASILI Marzo, 2007 Classi di Istruzioni Istruzioni di assegnamento/modifica Istruzioni di controllo delle sequenze Istruzioni di I/O Classi di

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come

Dettagli

Note sull architettura del calcolatore

Note sull architettura del calcolatore Note sull architettura del calcolatore 1 Algoritmo Problema Preparazione di una torta Programmazione del VCR MCD tra due numeri Algoritmo Sequenza ordinata di istruzioni che risolve il problema specifico

Dettagli

CLASSIFICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INFORMAZIONE

CLASSIFICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INFORMAZIONE APPUNTI DI SISTEMI rancesco Longo 4 ISC CLASSIICAZIONE DEI SISTEMI DI ELABORAZIONE AUTOMATICA DELL INORMAZIONE 1 SISTEMI CONVENZIONALI (Von Neumann) Sistemi che eseguono un programma già memorizzato nella

Dettagli

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA

Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina. Linguaggio Macchina ADD A,B ISTRUZIONE SUCCESSIVA Lezione n.11 n.11 Lezione n. 11 ARCHITETTURA INTERNA ARCHITETTURA ESTERNA CODICE MACCHINA MODI DI INDIRIZZAMENTO ARCHITETTURE A PIU' INDIRIZZI In questa lezione verranno introdotti i concetti di base relativi

Dettagli

ARCHITETTURA elementi di base

ARCHITETTURA elementi di base ARCHITETTURA elementi di base Contenuto della lezione Esame preliminare della struttura del calcolatore, con particolare riferimento all unità di elaborazione e controllo (CPU) Repertorio istruzioni (RISC/CISC)

Dettagli

Indirettezza. Fetch/Execute. Fetch/Execute. Introduzione della Indirettezza (indirect)

Indirettezza. Fetch/Execute. Fetch/Execute. Introduzione della Indirettezza (indirect) Ciclo esecutivo delle istruzioni: Fetch/Execute Lo avete visto nel corso di Introduzione alle Architetture degli Elaboratori Stallings, Capitolo 3 Ne vediamo una versione revisionata Indirettezza Per recuperare

Dettagli

Programmazione Assembly Note su Microsoft Assembler

Programmazione Assembly Note su Microsoft Assembler Programmazione Assembly Note su Microsoft Assembler Giacomo Fiumara giacomo.fiumara@unime.it Anno Accademico 2012-2013 1 / 254 Microsoft Assembler Masm32.com installare configurare path perchè contenga

Dettagli

Il Processore. Informatica di Base -- R.Gaeta 27

Il Processore. Informatica di Base -- R.Gaeta 27 Il Processore Il processore (detto anche CPU, ovvero, Central Processing Unit) è la componente dell unità centrale che fornisce la capacità di elaborazione delle informazioni contenute nella memoria principale

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

Il Linguaggio Assembly: Gestione della memoria e controllo

Il Linguaggio Assembly: Gestione della memoria e controllo Il Linguaggio Assembly: Gestione della memoria e controllo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/42 Sommario L organizzazione

Dettagli

Corso di Calcolatori Elettronici I Istruzioni macchina ing. Alessandro Cilardo

Corso di Calcolatori Elettronici I Istruzioni macchina ing. Alessandro Cilardo Corso di Calcolatori Elettronici I Istruzioni macchina ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Istruzioni del processore Abbiamo visto in precedenza alcuni esempi di istruzioni

Dettagli

Pipeline Problemi 1. Pipeline Problemi 2

Pipeline Problemi 1. Pipeline Problemi 2 Problemi 1 Vari fenomeni pregiudicano il raggiungimento del massimo di parallelismo teorico (stallo) Sbilanciamento delle fasi Durata diversa per fase e per istruzione Problemi strutturali La sovrapposizione

Dettagli

L Assembler 8086. Istruzioni Aritmetiche. M. Rebaudengo - M. Sonza Reorda. Politecnico di Torino Dip. di Automatica e Informatica

L Assembler 8086. Istruzioni Aritmetiche. M. Rebaudengo - M. Sonza Reorda. Politecnico di Torino Dip. di Automatica e Informatica L Assembler 8086 M. Rebaudengo - M. Sonza Reorda Politecnico di Torino Dip. di Automatica e Informatica 1 M. Rebaudengo, M. Sonza Reorda Si suddividono in: istruzioni per il calcolo binario istruzioni

Dettagli

Parte IV Architettura della CPU Central Processing Unit

Parte IV Architettura della CPU Central Processing Unit Parte IV Architettura della CPU Central Processing Unit IV.1 Struttura della CPU All interno di un processore si identificano in genere due parti principali: l unità di controllo e il data path (percorso

Dettagli

Linguaggio Assembly e linguaggio macchina

Linguaggio Assembly e linguaggio macchina Architettura degli Elaboratori e delle Reti Lezione 11 Linguaggio Assembly e linguaggio macchina Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano

Dettagli

PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO

PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO PASSI DI SVILUPPO DI UN PROGRAMMA: ESEMPIO Programma diviso in due moduli: MA.ASM: programma pricipale e funzioni di utilità MB.ASM: sottoprogramma di elaborazione Primo modulo: MA.ASM EXTRN alfa: BYTE

Dettagli

Hardware di un Computer

Hardware di un Computer Hardware di un Computer Monitor Mouse Tastiera Printer Disk CPU Graphics Adapter USB Controller Parallel Port Disk Controller BUS Memoria RAM Memoria ROM (BIOS) DMA CPU esegue istruzioni, effettua calcoli,

Dettagli

Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti

Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti Calcolatori Elettronici II parte (CdL Ingegneria Informatica) Esame del 22 settembre 2011 tempo a disposizione: 1 ora e 30 minuti Compito Num. 1 COGNOME:...NOME:... 1) (20%) Si vuole realizzare una CPU

Dettagli

Richiami sull architettura del processore MIPS a 32 bit

Richiami sull architettura del processore MIPS a 32 bit Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC

Dettagli

L unità di controllo di CPU a singolo ciclo

L unità di controllo di CPU a singolo ciclo L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,

Dettagli

Processore M68000: organizzazione della memoria

Processore M68000: organizzazione della memoria Corso di Calcolatori Elettronici I Processore M68000: organizzazione della memoria ing. Alessandro Cilardo Corso di Laurea in Ingegneria Biomedica Collegamento CPU-memoria Interfacciamento fisico tra processore

Dettagli

Programmazione dello Z80

Programmazione dello Z80 Il microprocessore si incarica di: gestire il programma e i suoi dati di eseguire i calcoli richiesti. Le azioni appena elencate rendono necessario che il microprocessore abbia da qualche parte, al suo

Dettagli

Calcolatori Elettronici A a.a. 2008/2009

Calcolatori Elettronici A a.a. 2008/2009 Calcolatori Elettronici A a.a. 2008/2009 Instruction Set Architecture: nozioni generali Massimiliano Giacomin 1 DOVE CI TROVIAMO Livello del linguaggio specializzato Traduzione (compilatore) o interpretazione

Dettagli

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI

ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI PROGETTO DELLA CPU ARCHITETTURA DELLE CPU come ARCHITETTURA DEL SET DI ISTRUZIONI SCELTE PROGETTUALI: 1. DOVE SONO MEMORIZZATI GLI ERANDI NELLA CPU? 2 QUANTI ERANDI SONO CHIAMATI IN MODO ESPLICITO 3. DOVE

Dettagli

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1)

Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) Architettura dei sistemi di elaborazione: La CPU: Architettura (parte1) La CPU Architettura L organizzazione interna di una CPU è caratterizzata dal data path, che è costituito da una serie di componenti,

Dettagli

ELETTRONICA II. Prof. Dante Del Corso - Politecnico di Torino

ELETTRONICA II. Prof. Dante Del Corso - Politecnico di Torino ELETTRONICA II Prof. Dante Del Corso - Politecnico di Torino Gruppo H: Sistemi Elettronici Lezione n. 36 - H -1: Piastra di memoria statica Interfaccia con registri di I/O Interconnessioni e sistemi Protocolli

Dettagli

Elementi di informatica

Elementi di informatica Elementi di informatica Architetture degli elaboratori Il calcolatore Un calcolatore è sistema composto da un elevato numero di componenti Il suo funzionamento può essere descritto se lo si considera come

Dettagli