Table of Contents Table of Contents
Previous Page  8 / 36 Next Page
Basic version Information
Show Menu
Previous Page 8 / 36 Next Page
Page Background

Capitolo 2

 - Programmazione e linguaggi

2.1 Il computer e i numeri...................................................................................... 75

2.2 Rappresentazione binaria dei numeri............................................................. 76

2.2.1 Numeri interi......................................................................................... 76

2.3 Rappresentazione dei numeri reali.................................................................. 79

2.3.1 Rappresentazione in virgola fissa.......................................................... 79

2.3.2 Rappresentazione in virgola mobile..................................................... 80

2.3.3 La rappresentazione dell’informazione............................................... 83

2.4 Dati, informazioni e codici............................................................................... 84

2.4.1 I codici numerici.................................................................................... 86

2.4.2 I codici alfanumerici.............................................................................. 90

2.4.3 I codici a controllo di errore................................................................. 93

2.5 Il linguaggio: linguaggi naturali e linguaggi formali...................................... 98

2.5.1 I linguaggi naturali................................................................................ 98

2.5.2 I linguaggi formali............................................................................... 100

2.5.3 Classificazione dei linguaggi di programmazione............................. 100

2.5.4 Caratteristiche dei linguaggi............................................................... 103

2.5.5 Linguaggi imperativi. .......................................................................... 104

2.5.6 I linguaggi funzionali. ......................................................................... 107

2.5.7 I linguaggi basati sulla logica.............................................................. 110

2.5.8 I linguaggi orientati a oggetti. ............................................................ 114

2.6 Fondamenti di ingegneria del software......................................................... 116

2.6.1 L’ingegneria del software.................................................................... 116

2.6.2 Le qualità del software......................................................................... 118

2.6.3 Principi dell’ingegneria del software.................................................. 124

2.6.4 Lo sviluppo di un sistema complesso inizia dal progetto.................. 128

2.6.5 Modelli di ciclo di vita del software.................................................... 129

2.6.6 I modelli a processo evolutivo............................................................. 133

Capitolo 3

 - Architettura degli elaborati

3.1 Sistemi digitali................................................................................................. 137

3.1.1 Introduzione........................................................................................ 137

3.1.2 Storia degli elaboratori da Pascal a von Neumann............................ 139

3.1.3 L’era elettronica: ENIAC, EDVAC. ..................................................... 141

3.1.4 John von Neumann e la prima generazione...................................... 142

3.1.5 Le cinque generazioni......................................................................... 142

3.2 Architettura dell’elaboratore.......................................................................... 144

3.2.1 Circuiti di temporizzazioni (clock). ................................................... 144

3.2.2 Macchina di von Neumann................................................................. 145

3.2.3 Processore............................................................................................ 147

3.2.4 Registri interni..................................................................................... 151

3.2.5 Gestione delle istruzioni...................................................................... 153

3.2.6 Floating Point Unit.............................................................................. 155

3.2.7 Cache.................................................................................................... 155

3.2.8 Pipeline. ............................................................................................... 157

3.2.9 Memory Management Unit................................................................. 158

VI

Indice