Estratto del documento

Johnvan7 appunti di architettura dei calcolatori

Sommario

Sommario

Capitolo 1: Il calcolatore: astrazione e tecnologia___________________________________________________ 1

Le prestazioni di un programma______________________________________________________________________________ 1

  • Algoritmi ______________________________________________________________________________________________ 1
  • Linguaggi di programmazione, compilatori e architetture ________________________________________ 1
  • Processore e sistemi di memoria ____________________________________________________________________ 1
  • Sistema di I/O _________________________________________________________________________________________ 1

Otto grandi idee innovative sull’architettura dei calcolatori _______________________________________________ 1

Legge di Moore ______________________________________________________________________________________________ 1

Astrazione ___________________________________________________________________________________________________ 1

Situazioni comuni ___________________________________________________________________________________________ 1

Parallelismo _________________________________________________________________________________________________ 1

Pipeline ______________________________________________________________________________________________________ 1

Predizione ___________________________________________________________________________________________________ 1

Gerarchia ____________________________________________________________________________________________________ 1

Affidabilità ___________________________________________________________________________________________________ 1

Dietro il programma ___________________________________________________________________________________________ 1

Software di sistema _________________________________________________________________________________________ 1

Sistema operativo ___________________________________________________________________________________________ 1

Compilatore _________________________________________________________________________________________________ 2

Binary digit __________________________________________________________________________________________________ 2

Assembler ___________________________________________________________________________________________________ 2

Linguaggio di programmazione ad alto livello ____________________________________________________________ 2

Componenti di un calcolatore _________________________________________________________________________________ 2

I cinque componenti classici di un calcolatore ___________________________________________________________ 2

Display LCD _________________________________________________________________________________________________ 2

Touchscreen _________________________________________________________________________________________________ 2

Processore ___________________________________________________________________________________________________ 2

Memoria _____________________________________________________________________________________________________ 3

Memoria cache ______________________________________________________________________________________________ 3

Architettura dell’insieme di istruzioni ____________________________________________________________________ 3

Sommario

Memoria di massa __________________________________________________________________________________________ 3

Disco magnetico (HDD) ____________________________________________________________________________________ 3

Memoria flash _______________________________________________________________________________________________ 3

Comunicazione con altri calcolatori _______________________________________________________________________ 3

Tecnologie per la produzione di processori e memorie ___________________________________________________ 3

Transistor ___________________________________________________________________________________________________ 3

Circuito integrato ___________________________________________________________________________________________ 3

Come vengono fabbricati i circuiti integrati ______________________________________________________________ 3

Costo per die ________________________________________________________________________________________________ 4

Die per wafer ________________________________________________________________________________________________ 4

Rendimento (resa) __________________________________________________________________________________________ 4

Le prestazioni __________________________________________________________________________________________________ 4

Tempo di risposta ___________________________________________________________________________________________ 4

Throughput __________________________________________________________________________________________________ 4

Misurare le prestazioni _____________________________________________________________________________________ 4

Tempo assoluto _____________________________________________________________________________________________ 4

Tempo di CPU _______________________________________________________________________________________________ 4

Tempo di CPU utente _______________________________________________________________________________________ 4

Tempo di CPU di sistema ___________________________________________________________________________________ 4

Ciclo di clock ________________________________________________________________________________________________ 5

Periodo di clock _____________________________________________________________________________________________ 5

Frequenza di clock __________________________________________________________________________________________ 5

Tempo di CPU relativo a un programma __________________________________________________________________ 5

CPI (Cicli di clock Per Istruzione) __________________________________________________________________________ 5

Cicli di clock della CPU _____________________________________________________________________________________ 5

Formula generale tempo di CPU ___________________________________________________________________________ 5

Prestazioni di un programma ______________________________________________________________________________ 5

La barriera dell’energia _______________________________________________________________________________________ 6

CMOS ________________________________________________________________________________________________________ 6

Passaggio a sistemi multiprocessore _________________________________________________________________________ 6

Benchmark SPEC per la CPU __________________________________________________________________________________ 6

Carico di lavoro (workload) ________________________________________________________________________________ 6

Sommario

Benchmark __________________________________________________________________________________________________ 6

SPEC (System Performance Evaluation Cooperative) ____________________________________________________ 6

SPECratio ____________________________________________________________________________________________________ 6

Benchmark SPEC sull’assorbimento di potenza __________________________________________________________ 7

Conclusioni _____________________________________________________________________________________________________ 7

Legge di Amdahl ____________________________________________________________________________________________ 7

Efficienza energetica _______________________________________________________________________________________ 7

MIPS (Million Instruction Per Second) ____________________________________________________________________ 7

Domande frequenti Capitolo 1 ________________________________________________________________________ 8

Power wall _______________________________________________________________________________________________ 8

Benchmark ________________________________________________________________________________________________ 8

Capitolo 2: Le istruzioni: il linguaggio del calcolatore ______________________________________________ 9

Insieme delle istruzioni ____________________________________________________________________________________ 9

Operazioni svolte dall’hardware del calcolatore _____________________________________________________________ 9

Operazione di somma ______________________________________________________________________________________ 9

Commenti ___________________________________________________________________________________________________ 9

Principio di progettazione numero 1 ______________________________________________________________________ 9

Esempio calcolo aritmetico ________________________________________________________________________________ 9

Operandi di registro ___________________________________________________________________________________________ 9

Principio di progettazione numero 2 ______________________________________________________________________ 9

Operandi allocati in memoria ____________________________________________________________________________ 10

Istruzioni di trasferimento dati __________________________________________________________________________ 10

Indirizzo ___________________________________________________________________________________________________ 10

Caricare dalla memoria in un registro ___________________________________________________________________ 10

Vincolo di allineamento __________________________________________________________________________________ 10

Big endian _________________________________________________________________________________________________ 10

Little endian _______________________________________________________________________________________________ 10

Salvare da un registro alla memoria _____________________________________________________________________ 10

Register spilling (versamento nei registri) _____________________________________________________________ 11

Operandi immediati e costanti ___________________________________________________________________________ 11

Costante zero ______________________________________________________________________________________________ 11

Numeri con e senza segno __________________________________________________________________________________ 11

Sommario

Overflow ___________________________________________________________________________________________________ 11

Rappresentazione modulo e segno ______________________________________________________________________ 11

Rappresentazione complemento a due _________________________________________________________________ 11

Most Neg e Most Positive _________________________________________________________________________________ 11

Estensione del segno _____________________________________________________________________________________ 11

Caricamento di byte ______________________________________________________________________________________ 11

Complemento a 1 _________________________________________________________________________________________ 12

Notazione polarizzata ____________________________________________________________________________________ 12

Rappresentazione delle istruzioni __________________________________________________________________________ 12

Istruzioni formato tipo-R (registro) _____________________________________________________________________ 12

Principio di progettazione numero 3 ____________________________________________________________________ 12

Esadecimale _______________________________________________________________________________________________ 12

Istruzioni formato tipo-I (immediato) __________________________________________________________________ 13

Le operazioni logiche ________________________________________________________________________________________ 13

Shift (scorrimento) _______________________________________________________________________________________ 13

AND ________________________________________________________________________________________________________ 13

OR __________________________________________________________________________________________________________ 13

NOT -> NOR _______________________________________________________________________________________________ 13

XOR ________________________________________________________________________________________________________ 14

Istruzioni per prendere decisioni __________________________________________________________________________ 14

Branch if equal (salto condizionato) ____________________________________________________________________ 14

Branch if not equal (salto condizionato) ________________________________________________________________ 14

Jump (salto incondizionato) _____________________________________________________________________________ 14

Ciclo while _________________________________________________________________________________________________ 14

Blocco base ________________________________________________________________________________________________ 14

Set on less than ___________________________________________________________________________________________ 14

Set on less than immediate _______________________________________________________________________________ 14

Set less than unsigned / immediate _____________________________________________________________________ 15

Costrutto case/switch ____________________________________________________________________________________ 15

Tabella degli indirizzi di salto ____________________________________________________________________________ 15

Il supporto hardware alle procedure _______________________________________________________________________ 15

Procedura (funzione) _____________________________________________________________________________________ 15

Sommario

Jump and link _____________________________________________________________________________________________ 15

Programma chiamante ___________________________________________________________________________________ 15

Procedura chiamata ______________________________________________________________________________________ 15

Program Counter (PC) ____________________________________________________________________________________ 16

Stack _______________________________________________________________________________________________________ 16

Stack pointer ______________________________________________________________________________________________ 16

Push ________________________________________________________________________________________________________ 16

Pop _________________________________________________________________________________________________________ 16

Procedure foglia___________________________________________________________________________________________ 16

Procedura non foglia _____________________________________________________________________________________ 16

Variabili automatiche e statiche in C ____________________________________________________________________ 16

Global pointer ($gp) ______________________________________________________________________________________ 16

Allocazione dello spazio nello stack per i nuovi dati ___________________________________________________ 16

Record di attivazione _____________________________________________________________________________________ 16

Frame pointer _____________________________________________________________________________________________ 16

Allocazione dello spazio nello heap per i nuovi dati ___________________________________________________ 17

Stack _______________________________________________________________________________________________________ 17

Segmento di testo _________________________________________________________________________________________ 17

Segmento dati statici _____________________________________________________________________________________ 17

Heap (Dynamic Data) _____________________________________________________________________________________ 17

Caratteri ______________________________________________________________________________________________________ 17

Load byte __________________________________________________________________________________________________ 17

Store byte __________________________________________________________________________________________________ 17

Load halfword _____________________________________________________________________________________________ 17

Load byte/halfword unsigned ___________________________________________________________________________ 17

Store halfword ____________________________________________________________________________________________ 18

Copia di una stringa ______________________________________________________________________________________ 18

Indirizzi di tipo immediato su 32 bit _______________________________________________________________________ 18

Load upper immediate ___________________________________________________________________________________ 18

Registro $at ________________________________________________________________________________________________ 18

Indirizzamento nei salti _____________________________________________________________________________________ 18

Indirizzamento relativo al Program Counter ___________________________________________________________ 19

Sommario

Salto a indirizzi lontani (branching far away) __________________________________________________________ 19

Riassunto modalità di indirizzamento __________________________________________________________________ 19

Tradurre e avviare un programma _________________________________________________________________________ 19

Compilatore _______________________________________________________________________________________________ 19

Assemblatore ______________________________________________________________________________________________ 20

File oggetto ________________________________________________________________________________________________ 20

Linker ______________________________________________________________________________________________________ 20

Loader _____________________________________________________________________________________________________ 20

Librerie a caricamento statico (tradizionale) ___________________________________________________________ 20

Librerie a caricamento dinamico (DLL, Dynamically Linked Libraries) _______________________________ 20

Lazy linkage _______________________________________________________________________________________________ 21

Eseguire programmi Java

Anteprima
Vedrai una selezione di 10 pagine su 152
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 1 Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 2
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 6
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 11
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 16
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 21
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 26
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 31
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 36
Anteprima di 10 pagg. su 152.
Scarica il documento per vederlo tutto.
Appunti completi di Architettura dei calcolatori e sistemi operativi Pag. 41
1 su 152
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 johnvan7 di informazioni apprese con la frequenza delle lezioni di Architettura dei calcolatori 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 del Sannio o del prof Villano Umberto.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community