I N F O R M A T I C A

 

 

 

 Marco Somalvico

 

 

 

§1) NATURA DELLA DISCIPLINA

 

 

Vediamo di inquadrare, innanzitutto, il termine INFORMATICA in modo semplice ma esatto.

Come è noto una disciplina è una strutturata ed armoniosa presentazione di un COMPLESSO DI VERITA’ che vengono presentate, descritte ed illustrate con il FINE di aiutare l’uomo al DISCERE, cioè all’apprendere, al comprendere, al padroneggiare tali verità.

L’informatica si occupa della concezione, progettazione, realizzazione ed applicazione di particolari MACCHINE, dette MACCHINE DELL’INFORMATICA (ELABORATORI).

L’informatica si considera, opportunamente, come strettamente collegata alla ROBOTICA, che si occupa della concezione, progettazione, realizzazione ed applicazione di particolari MACCHINE, dette MACCHINE DELLA ROBOTICA (ROBOT (INTERATTORI ED ELABORATORI O INTERELABORATORI)).

Si ricorda che una MACCHINA è intesa come un ARTEFATTO, cioè un’ENTITA, FATTA DALL’UOMO AD ARTE, CHE REIFICA (cioè descrive mediante un’entità materiale, una cosa (“res” in latino)) UN MODELLO DI UN FENOMENO DELLA NATURA.

E’ utile ricordare che il REALE è concepito come dato dall’unione del NATURALE (che comprende l’UOMO ed il MONDO esterno all’uomo) con l’ARTIFICIALE (che comprende l’insieme degli artefatti, cioè delle entità che l’uomo ha realizzato, utilizzando dei componenti, sia presenti nel naturale, sia già presenti nell’artificiale, per comporli in un composito, l’artefatto, secondo un’architettura concepita ispirandosi ad un disegno artistico).

L’uomo, quando conosce un FENOMENO del naturale, può proporre la propria conoscenza di tale fenomeno, oltre che con varie modalità individuali, come, ad esempio, mediante una poesia, anche con un approccio, basato sul cosiddetto metodo empirico sperimentale galileiano.

Tale metodo porta a formulare la conoscenza del fenomeno (si osservi che tale conoscenza è causata nell’uomo dalla percezione del fenomeno che accade nel naturale, ma essendone l’effetto, non deve essere, né confusa, né identificata con la causa: un’entità è dunque il fenomeno, ed una diversa, anche se correlata, entità è la conoscenza del fenomeno) secondo una modalità denominata MODELLO, che, secondo l’insegnamento galileiano, è basata sulle proprietà di:

 

1.      FINITEZZA: la quantità di conoscenza descritta dal modello è finita, a differenza della poesia che può attivare illimitate personali interpretazioni nel lettore;

 

2.      OGGETTIVITA’: il significato che si dà alla descrizione della conoscenza espressa nel modello è unico, non esistendo ambiguità o polivalenza nell’interpretazione del linguaggio con il quale il modello viene formulato, il che non avviene nel caso di una conoscenza descritta in una poesia od anche in un brano di prosa basato su un’individuale adozione del linguaggio descrittivo;

 

3.      REPLICABILITA’: l’effetto che si ha della conoscenza acquisita, apprendendo il modello, permette di effettuare una replica della sperimentazione del fenomeno che porta alle stesse conclusioni (da parte dell’UOMO SECONDO REPLICANTE, colui che ha appreso il modello) che erano state formulate, la prima volta (da parte dell’UOMO PRIMO proponente, colui che, conoscendo sperimentalmente il fenomeno, ne ha formulato il modello).

 

Dunque ogni macchina reifica un modello di un fenomeno del naturale, nel senso che una macchina è un caso particolare di artefatto, che contiene, nella propria architettura, la descrizione di un modello di un fenomeno della natura.

L’informatica si occupa di macchine dell’informazione, cioè di quelle macchine che sono intese come OPERATORI artificiali che svolgono delle OPERAZIONI su un OPERANDO denominato INFORMAZIONE.

Così come un motore è quell’operatore artificiale che opera producendo la forza, che è l’operando, così come un refrigeratore è quell’operatore artificiale che opera producendo il freddo, che è l’operando, la macchina dell’informazione è quell’operatore artificiale che svolge una determinata operazione accettando IN INGRESSO come operando l’INFORMAZIONE DA MODIFICARE sulla quale la macchina dell’informazione effettua, al proprio interno, un’operazione, per poi fornire IN USCITA come operando l’INFORMAZIONE MODIFICATA sulla quale tale operazione è stata effettuata.

Cosa è, allora, questo operando, denominato informazione, che è suscettibile di essere sottoposto a delle operazioni effettuate su di esso da quell’operatore che è chiamato macchina dell’informazione?

L’informazione è il termine tecnico che viene dato ad UNA CATEGORIA PARTICOLARE DI MODELLI che hanno la caratteristica di essere operandi di macchine, cioè sottoponibili a quelle operazioni che possono essere effettuate su di essi da quegli operatori artificiali che sono quel particolare tipo di macchine che vengono chiamate macchine dell’informazione.

Si faccia dunque attenzione al fatto che mentre, come detto prima, ogni macchina, intesa come operatore, è la reificazione di un modello, solamente le macchine dell’informazione, oltre che essere dei modelli reificati, in quanto operatori, accettano degli operandi che sono anch’essi dei modelli.

In questa frase sta tutta la potenzialità dell’informatica: tale disciplina deve essere considerata come uno strumento molto efficace che è posto al servizio dell’uomo.

Le macchine dell’informazione sono dunque le reificazioni di modelli di quei particolari fenomeni del naturale che riguardano l’operare su modelli!

Dove si osservano in natura i fenomeni che riguardano l’effettuazione di operazioni su modelli?

Ma nell’uomo, naturalmente!

Infatti, in base alla definizione di modello è l’uomo il soggetto che è capace di concepire, di ideare e di inventare, quel tipo di conoscenza del naturale, caratterizzato dal metodo empirico sperimentale galileiano, che chiamiamo modello.

L’uomo dunque è il soggetto che inventa i modelli, ed è anche il soggetto che inventa le macchine, che sono modelli descritti tramite l’architettura della macchina artefatto.

E quali sono allora le attività, svolte dall’uomo, sui modelli, inventati dall’uomo stesso?

Si noti che tali attività, intese come fenomeni della natura, sono osservate dall’uomo nel momento in cui l’uomo osserva in se stesso tali fenomeni.

Si noti, inoltre, che la conoscenza, formulata dall’uomo, di tali attività ovvero di tali fenomeni dell’uomo, può dunque consistere nella formulazione di modelli che, oltre che rappresentare la conoscenza galileiana di tali attività, possono portare, attraverso la loro reificazione in macchine dell’informazione, alla concezione di artefatti capaci di effettuare tali attività sotto forma di un’operazione denominata ELABORAZIONE DELL’INFORMAZIONE.

L’INFORMATICA è basata sull’impiego dell’ELABORATORE (e la ROBOTICA, strettamente collegata all’informatica, è basata sull’impiego del ROBOT (INTERELABORATORE)), che sono la reificazione del modello del fenomeno della natura che l’uomo osserva in se stesso, conoscendolo come modello, quando si autopercepisce nell’atto di elaborare (e anche di interagire con il mondo esterno all’uomo, nel caso della robotica) i modelli che egli ha precedentemente inventato.

 

Occorre, a questo punto, procedere in modo sintetico e semplice, anche se serio ed approfondito, ad un breve richiamo circa la natura delle attività che le macchine della telematica svolgono al servizio dell’uomo, esaminando, in particolare, sia le attività di elaborazione, svolte dall’elaboratore, sia le attività di interazione ed elaborazione (o di interelaborazione), svolte dal robot o interelaboratore.

Tali attività si accompagnano, ovviamente, alle attività di comunicazione, specialmente a distanza o telecomunicazione, svolte dal telefono, dalla radio e dal televisore.

Si ricorda ancora, innanzitutto, che per informazione (categoria di modello di un fenomeno del naturale), si intende l’operando sul quale l’operatore, che nel caso dell’informatica è l’elaboratore ed il robot o interelaboratore, svolgono, rispettivamente, l’operazione di elaborazione e di interelaborazione.

Di regola, quando si considera l’operazione di elaborazione, l'informazione viene distinta in tre tipi (corrispondenti dunque a tre sottoclassi di modelli), al fine di distinguere utilmente tre corrispondenti diversi tipi di elaborazione dell'informazione.

 

I tre tipi di informazione sono:

 

1.      il PROGRAMMA, spesso aggregato strutturalmente in un SISTEMA DI PROGRAMMI;

 

2.      il DATO, spesso aggregato strutturalmente in una BASE DI DATI;

 

3.      il PROBLEMA (si noti che quando, in informatica, si utilizza il termine tecnico informazione, per indicare solamente il modello di un problema, allora si utilizza anche il più specifico termine tecnico CONOSCENZA), spesso aggregato strutturalmente in un SISTEMA DI PROBLEMI, chiamato anche BASE DI CONOSCENZA.

 

I tre corrispondenti tipi di elaborazione dell'informazione sono:

 

1.      l’ESECUZIONE dei PROGRAMMI (si parla in tal caso di ELABORATORE ESECUTORIO e di INFORMATICA ESECUTORIA);

 

2.      la GESTIONE (termine composito che include la scrittura, la memorizzazione, la modifica e la lettura) dei DATI (si parla in tal caso di ELABORATORE GESTIONALE e DI INFORMATICA GESTIONALE);

 

3.      la RISOLUZIONE DEI PROBLEMI (si parla in tal caso di ELABORATORE RISOLUTORIO e di INFORMATICA RISOLUTORIA); una dizione, equivalente a risoluzione dei problemi, è quella di INFERENZA sulla CONOSCENZA (si parla in tal caso di ELABORATORE INFERENZIALE e di INFORMATICA INFERENZIALE).

 

Esaminiamo ora la natura dell’interelaborazione (cioè dell’aggiunta, all’elaborazione dell’informazione, dell’interazione con la realtà fenomenologica) che è l’operazione effettuata dal robot o interelaboratore.

L’attività di interazione può essere di due tipi:

 

1.      PRODUZIONE DI FENOMENI conformi con un loro opportuno modello (l’informazione) predeterminato nell’architettura del robot o interelaboratore, che esplica tale operazione tramite il SISTEMA DEGLI ATTUATORI, cioè delle interfacce di USCITA dal robot verso la realtà fenomenologica);

 

2.      PERCEZIONE DI FENOMENI descritti da un loro opportuno modello (l'informazione) predeterminato nell’architettura del robot o interelaboratore, che esplica tale operazione tramite IL SISTEMA DEI SENSORI, cioè delle interfacce di ENTRATA nel robot dalla realtà fenomenologica).

 

Il robot o interelaboratore può dunque essere contrapposto all'elaboratore, per la sua distintiva capacità di interagire con la realtà fenomenologica, tramite il sistema degli attuatori, atto a produrre fenomeni, determinati in base ad un loro modello (interfaccia di uscita dal robot nella realtà fenomenologica) e tramite il sistema dei sensori, atto a percepire fenomeni, definiti in base ad un loro modello (interfaccia di entrata nel robot dalla realtà fenomenologica).

 

Pertanto è anche opportuno classificare il robot o interelaboratore, nelle tre seguenti distinte categorie:

 

1.      ROBOT NERO, perché privo di percezione, cosÏ come i ciechi sono privi di percezione visiva, sprovvisto di sistema dei sensori e provvisto di sistema degli attuatori (si ha, quindi, interazione monodirezionale in uscita);

 

2.      ROBOT BLU, perché svolge le attività di produzione svolte tipicamente, nel settore secondario dell’economia di uno stato, dall'operaio in tuta blu), provvisto di sistema dei sensori e provvisto di sistema degli attuatori (si ha, quindi, interazione bidirezionale in entrata ed in uscita);

 

3.      ROBOT BIANCO, perché svolge le attività di servizio svolte tipicamente, nel settore terziario dell’economia di uno stato, dall'impiegato in colletto bianco), provvisto di sistema dei sensori e sprovvisto di sistema degli attuatori (si ha, quindi, interazione monodirezionale in entrata).

 

Si osservi ora che:

 

1.      tanto l'elaboratore (macchina che esegue sistemi di programmi, che gestisce basi di dati e che risolve sistemi di problemi o inferisce su basi di conoscenza),

 

2.      quanto il robot o interelaboratore (che esegue sistemi di programmi, che gestisce basi di dati, che risolve sistemi di problemi o inferisce su basi di conoscenza e che, inoltre, percepisce fenomeni, secondo modelli prefissati, e che produce fenomeni, secondo modelli prefissati),

 

si presentano alla nostra considerazione come delle macchine, degli artefatti, che l’uomo, inventore dei modelli dei fenomeni dell’elaborare e dell’interelaborare (reificati perciò nelle architetture di tali macchine è quindi l’inventore di tali macchine ed è perciò il SOGGETTO (potemmo dire meglio che è il “DOMINUS”) che:

 

1.      FA LA MACCHINA,

 

2.      FA FARE ALLA MACCHINA.

 

Occorre sapere cogliere, da parte di ogni uomo, la novità della dimensione antropologica che viene indotta dal fatto che l’uomo può servirsi delle macchine della telematica, dell’informatica e della robotica, per aumentare la propria efficacia cognitiva e comunicativa.

 

L’uomo, infatti:

 

1.      non solo deve utilizzare la telematica come STRUMENTO di intensificazione dell’efficace irradiazione del pensiero e dell’azione umana, nei confronti dell’intera società,

 

2.      ma sa anche adattarsi alla MUTAZIONE ANTROPOLOGICA, sia dell’uomo, sia, quindi, della complessiva società umana.

 

Ciò richiede, sempre a livello STRUMENTALE, un’attenta riconfigurazione, nella forma di prospettazione, dei contenuti del pensiero e dell’azione umana che rimangono peraltro immutati dal punto di vista STRATEGICO E TELEOLOGICO.

 

Vediamo, pertanto, di presentare, sinteticamente, il quadro di riferimento di questa mutazione antropologica, che incardineremo intorno alla nozione di bipolo informatico e robotico.

La società di uomini e di macchine della telematica, integrati gli uni con le altre, in una fruttuosa sinergia, tanto più efficace, quanto più spinte sono le tecniche interattive tra UOMO e MACCHINA, è sempre più destinata a presentare anche nuove modalità nell'interazione uomo - uomo.

Infatti ogni uomo, inteso come individuo, si baserà sempre più, nel suo operare intellettualmente ed interattivamente, sull'impiego della macchina alla quale egli delegherà alcune attività operative secondo lo schema gnoseologico, proposto, tra gli altri, dal noto filosofo gnoseologo francese Henry Bergson, che suddivide le ATTIVITÀ INTELLETTIVE ED INTERATTIVE in due categorie: quelle CREATIVE (esplicate dalla INTELLIGENZA CREATIVA od INVENTIVA), che l'uomo adotta quando inventa un nuovo modello interpretativo del reale, e quelle FABBRICATIVE (esplicate dalla INTELLIGENZA FABBRICATIVA od INFERENZA) che l'uomo impiega nel valutare le conseguenze inducibili e deducibili all'interno di un modello da lui inventato.

Si può infatti argomentare, con solide considerazioni epistemologiche e gnoseologiche, che, si può adottare (con approccio popperiano) il termine INTELLIGENZA A per individuare l'attività intellettiva che l'UOMO UNITARIO (che denomineremo, nel seguito, UOMO - INTELLETTO, esplica, DIRETTAMENTE ED IMMEDIATAMENTE, in un primo polo, denominato UOMO - CORPO), ed il termine INTELLIGENZA B per individuare l’attività intellettiva che l’uomo unitario (l’uomo - intelletto) può esplicare, se lo desidera, INDIRETTAMENTE E MEDIATAMENTE, in un secondo polo, denominato UOMO - MACCHINA

 

Quindi l'uomo si presenterà sotto l'aspetto di un BIPOLO INFORMATICO, associato all'uomo unitario, cioè all’uomo - intelletto, che si articola in due poli, un primo costituito dal polo uomo - corpo, ed un secondo costituito dal polo uomo - macchina.

Si faccia attenzione al fatto che qui la dizione, quasi provocatoria, uomo - macchina, dizione che individua la macchina, cioè l'elaboratore e il robot, si propone di accentuare volutamente il fatto che la macchina non opera autonomamente, ma opera all'interno dei modelli progettuali che l'uomo, progettista della macchina (l'uomo che fa la macchina), ha inventato ed ha determinato.

La macchina dunque opera secondo le funzionalità che l'uomo, artefice dell’attività effettuata dalla macchina (l'uomo che fa fare alla macchina) ha intenzionalmente causato.

Si richiama cioè l'attenzione sulla profonda implicazione della frase: l'uomo fa la macchina e fa fare alla macchina.

 

Si noti come in tale bipolo informatico, l'uomo e la macchina (l'elaboratore e il robot) si ripartiscono tra di loro l'attività dell’INTELLIGENZA CREATIVA, esclusivamente svolta nel polo uomo - corpo, e l'attività dell’INTELLIGENZA FABBRICATIVA, svolta in modo distribuito in entrambi i due poli, ma con tendenza ad uno spostamento sempre più massiccio dal polo uomo - corpo al polo uomo - macchina.

 

 

 

§2) STRATEGIA DELLA PROPOSTA DIDATTICA

 

 

La strategia che ha guidato la formulazione della proposta didattica inerente la disciplina informatica si articola nei seguenti punti essenziali:

 

  1. necessità di recuperare funzioni essenziali della scuola, come la formazione dell’uomo (sviluppo delle capacità di conoscere la realtà, sia negli aspetti primitivi della realtà naturale, sia negli aspetti, derivati dal protagonista della natura, l’uomo (homo sapiens sapiens);

 

  1. opportunità di incardinare la molteplice conoscenza dei fenomeni della natura, come la concatenazione tra il passaggio dal fenomeno (phainomenon), tramite la techne (arte), all’idea (eidein), intesa come conoscenza interiore della natura, e, successivamente, con il passaggio dall’idea (eidein), tramite la creazione (poiesis), alla visione (eidolon), intesa come conoscenza esteriore della natura;

 

  1. utilità di illustrare gli artefatti, che con la natura completano la realtà, come espressioni (pensieri pensati reificati dalle architetture degli artefatti) dell’abduzione (concatenazione arte - creazione (techne – poiesis)), cioè dell’intelligenza creativa (intelligenza dell’“homo creator”, Bergson, Intelligenza A (Popper));

 

  1. interpretazione degli artefatti, anche nel caso delle macchine dell’informatica (e della robotica), cioè l’elaboratore (ed il robot (interelaboratore)), alla luce della visione “l’uomo fa e fa fare”, innanzitutto come espressione dell’intelligenza creativa che permette all’uomo – architetto di concepire questi artefatti – macchine dell’informatica;

 

  1. considerazione dell’elaboratore (e del robot) mai come un soggetto, poiché l’unico soggetto è l’uomo (l’io – mente creativa), ma solo come “luogo” che l’uomo può scegliere, talvolta e quando gli è utile, in alternativa al proprio corpo, come sede dove l’uomo fa svolgere, in modo mediato, la funzione di emulare (e mai simulare) il fenomeno naturale, normalmente svolto, in modo immediato, nel proprio corpo, dell’inferenza (concatenazione deduzione e induzione),  cioè dell’intelligenza fabbricativa (intelligenza dell’“homo faber”, Bergson, Intelligenza B (Popper));

 

  1. necessità di adeguare la scuola “media” al bisogno di orientamento degli alunni, orientamento che è effettivo solo se gli studi sono adeguati alle predette considerazioni strategiche, in modo da esaltare, innanzitutto la libertà e la capacità critica, sperimentate e sviluppate mediante lo sviluppo di un serio percorso di studio, anche composto di scelte individualmente elette, che permettano di misurare le loro abilità  e di acquisire il senso delle proprie capacità e dei propri limiti;

 

  1. funzione educativa della scuola “media”, intesa come  promozione dell’intelligenza, dello spirito critico e della personalità;

 

  1. triplice dimensione del processo educativo (memoria storica, conservazione  dell’identità culturale; comprensione razionale del presente; costruzione responsabile della società futura).

 

 

 

§3) OBIETTIVI E CONTENUTI

 

 

 

§3.1) Obiettivi generali

 

 

1)         Contribuire all’orientamento ed alla graduale comprensione e progressiva padronanza delle funzioni dell’elaboratore e del robot e delle modalità di loro accrescimento.

 

2)         Inquadrare il ruolo dell’informatica, centrata sul “fare e far fare” dell’uomo nell’elaboratore e nel robot, intesi come degli artefatti, in generale, e come delle macchine, in particolare, che sono delle sedi, progettate, realizzate ed impiegate dall’uomo, dell’emulazione dell’attività intellettuale raziocinante che viene sviluppata dalla mente dell’uomo, in modo mediato, nella macchina, invece che in modo immediato nel corpo, sotto la guida dell’attività intellettuale inventiva che viene sviluppata dalla mente dell’uomo, in modo immediato (l’unico modo possibile), nel corpo.

 

3)         Illustrare come la macchina dell’informatica, l’elaboratore, e la simile macchina della robotica, il robot, sono degli operatori che svolgono le operazioni di elaborazione (l’elaboratore), le operazioni di elaborazione ed interazione con il mondo esterno all’uomo (il robot), osservando che l’operando sul quale tali operazioni sono svolte, denominato informazione (i programmi, le basi di dati, le basi di conoscenza), è la descrizione di un modello di un fenomeno della realtà, modello che l’uomo ha concepito, in modo inventivo, ed ha descritto, con un linguaggio artificiale, in modo da sottoporlo alle operazioni che su di esso l’elaboratore ed il robot svolgono.

 

 

§3.2) Contenuti: scansione temporale e livelli di complessità

 

Dal punto di vista temporale i programmi (cfr. §4) sono articolati secondo la seguente scansione:

 

1.      Biennio, Parte A;

 

2.      Triennio, Parte B e Parte C.

 

 

Dal punto di vista dei livelli di complessità l’articolazione dei programmi (cfr. §4) è la seguente:

 

Livello 1

 

1.1  Parte A, Capitoli 1, 2, 3, 4, 9,

 

1.2  Parte B, Capitoli 1, 7,

 

1.3  Parte C, Capitoli 1, 2, 3, 4, 5, 6, 9;

 

Livello 2

 

1.4  Parte A, Capitoli 1, 2, 3, 4, 5, 6, 9,

 

1.5  Parte B, Capitoli 1, 2, 3, 7,

 

1.6  Parte C, Capitoli 1, 2, 3, 4, 5, 6, 7, 9;

 

Livello 3

 

1.7  Parte A, Capitoli 1, 2, 3, 4, 5, 6, 7, 8, 9,

 

1.8  Parte B, Capitoli 1, 2, 3, 4, 5, 6, 7,

 

1.9  Parte C, Capitoli 1, 2, 3, 4, 5, 6, 7, 8, 9.

 

 

 

 

§3.3) Obiettivi specifici

 

 

Parte A

 

-                   Presentare allo studente gli aspetti fondamentali dell’informatica (algoritmi, programmi, struttura di massima degli elaboratori e dei sistemi informatici).

 

-                   Impartire nozioni basilari sulla programmazione degli elaboratori (linguaggi di programmazione, tecniche di astrazione, tipi di dati fondamentali e strutture di controllo, sottoprogrammi e ricorsione, cenni sulle strutture dati dinamiche, cenni sulla programmazione modulare) approfondendone in uguale misura gli aspetti concettuali e sperimentali.

 

Parte B

 

-                   Ampliare la conoscenza della programmazione che lo studente dovrebbe avere acquisito nella Parte A, portandolo a scrivere programmi che operano in rete e che utilizzano i servizi messi a disposizione dal sistema operativo, in particolare i servizi che permettono di realizzare il parallelismo.

 

-                   Comprendere come è realizzato un elaboratore seguendo un percorso di approfondimento “per livelli”, scendendo dal livello della programmazione, studiato nella Parte A fino al livello delle porte logiche, che costituiscono l’astrazione del funzionamento dell’architettura dell’elaboratore.

 

 


Parte C

 

-                   Considerare le diverse tipologie di sistemi informatici, affrontando l’esame delle molteplici applicazioni che si possono affrontare mediante l’impiego di opportuni sistemi di sviluppo disponibili.

 

-                   Sperimentare direttamente le fasi e le modalità della concezione, sviluppo e valutazione delle prestazioni sperimentali

 

 

 

 

 

§4) PROGRAMMI

 

 

 

PARTE A

 

PROGRAMMAZIONE DEI SISTEMI INFORMATICI

 

 

1.      Concetti introduttivi

1.1.   Algoritmi, programmi, linguaggi

1.2.   Struttura di massima di un elaboratore e di un sistema informatico: hardware, software, struttura e finalità del sistema operativo, applicazioni

1.3.   Catena di programmazione

1.4.   Reti di calcolatori, elaborazione distribuita

2.      Logica e codifica binaria dell’informazione

2.1.   Logica proposizionale, operatori logici AND, OR, NOT, leggi di De Morgan

2.2.   Rappresentazione dei numeri interi in forma binaria, ottale, esadecimale, codifica dei numeri reali in virgola fissa e mobile

2.3.   Codifica del caratteri

3.      Aspetti fondamentali della programmazione (con riferimento al linguaggio C)

3.1.   Il linguaggio di programmazione e le esigenze di astrazione

3.2.   La sintassi dei linguaggi

3.3.   Struttura di un programma monomodulo

3.4.   Astrazione sui dati: concetto di tipo e tipi base del linguaggio, operatori e compatibilità

3.5.   Astrazione sui dati: i costruttori di tipo array, struct, puntatori

3.6.   Astrazione sul controllo dell’esecuzione: strutture di controllo condizionali, di selezione, iterative

4.      Programmazione e sistema operativo

4.1.   Sviluppo, esecuzione ed archiviazione dei sistemi di programmi

4.2.   Il sistema operativo Windows

5.      Sottoprogrammi e ricorsione

5.1.   Programmazione in piccolo e in grande, sottoprogrammi come astrazione sul controllo a livello di unità

5.2.   Passaggio dei parametri

5.3.   Dati locali, regole di visibilità

5.4.   Sviluppo top down per raffinamento

5.5.   Ricorsione, record di attivazione, pila

6.      Strutture dati dinamiche

6.1.   Liste collegate a puntatori

7.      Moduli

7.1.   Programmazione in grande, moduli interfaccia (header file) e implementazione

7.2.   Classi di variabili e visibilità

7.3.   Compilazione separata

8.      Strutture dati persistenti

8.1.   I file: concetti, operazioni, organizzazione logica

8.2.      Integrazione tra strutture dati in memoria centrale e su file

9.      Attività di laboratorio

Bibliografia consigliata

1.      Testo di riferimento: Ceri, Mandrioli, Sbattella: Informatica: programmazione, McGraw-Hill, 2000.

 

2.      Testo aggiuntivo (per approfondimenti sul linguaggio C, complementi, ulteriori esempi ed esericizi): J. R. Hanly, E. B. Koffman: Problem solving & program design in C, 3rd edition, Addison Wesley, 1999.

 

3.      Altro materiale relativo alle lezioni potrà essere reso disponibile dai docenti durante lo svolgimento del corso.

 

 

 

PARTE B

 

ARCHITETTURA DEI SISTEMI INFORMATICI

 

 

1.      Programmazione di rete e di sistema

1.1  Programmazione di rete

1.2  Programmazione del File System

1.3  Programmazione dei processi

2.      Istruzioni macchina, assemblaggio e collegamento

2.1  Tipi di dato, formato delle istruzioni, modalità di indirizzamento

2.2  La pila di sistema e la macchina JVM

2.3  La realizzazione di procedure ricorsive

2.4  Assemblaggio e collegamento

3.      Il livello dei circuiti logici

3.1  Porte logiche fondamentali e algebra di Boole

3.2  Mintermini e realizzazione di funzioni combinatorie

3.3  Principali circuiti combinatori e ALU

3.4  Funzionamento della memoria

3.5  Aspetti di sincronizzazione

4.      Sottosistemi funzionali, Bus, Ingresso/Uscita e Interrupt

4.1  Processore, memoria, periferiche

4.2  Funzionamento del Bus

4.3  Ingresso/Uscita a livello assemblatore

4.4  Meccanismo di Interrupt

5.      Microarchitettura

5.1  Esempio di microarchitettura per la macchina JVM

5.2  Tecniche di pipelining

5.3  Funzionamento delle memoria Cache

6.      Struttura del Sistema Operativo

6.1  La gestione dei processi

6.2  La memoria virtuale

6.3  Ingresso/Uscita virtuale e Gestori delle Periferiche

7.      Attività di laboratorio

 

Bibliografia consigliata

 

1.      A.S. Tanenbaum, J.R.Goodman, “Architettura dei computer – Un approccio strutturato”, 4° edizione, UTET libreria, Torino, 2000.

 

2.      Altro materiale relativo alle lezioni potrà essere reso disponibile dai docenti durante lo svolgimento del corso.

 

 

 

PARTE C

 

TIPOLOGIE ED APPLICAZIONI DEI SISTEMI INFORMATICI

 

 

1.      Sistemi informativi

1.1  Basi di dati

1.2  Sistemi di basi di dati

1.3  Ambiente di sviluppo Excel

2.      Sistemi intelligenti

2.1  Basi di conoscenza

2.2  Sistemi esperti

2.3  Ambiente di sviluppo Clips

3.      Sistemi testuali, grafici e multimediali

3.1  Elaborazione dei testi

3.2  Ambiente di sviluppo Word

4.      Sistemi grafici e multimediali

4.1  Elaborazione grafica e multimediale

4.2  Ambiente di sviluppo Powerpoint

5.      Sistemi telematici

5.1  Sistemi di posta elettronica

5.2  L’ambiente di sviluppo Outlook

5.3  Sistemi di navigazione in Internet

5.4  L’ambiente di sviluppo Explorer

6.      Applicazioni dei Sistemi Informatici

6.1  Applicazioni per l’automazione e la gestione dell’organizzazione aziendale

6.2  Applicazioni per l’automazione della produzione industriale

6.3  Applicazioni per l’automazione e la gestione degli edifici e delle città

6.4  Applicazioni per l’automazione del territorio e dell’ambiente

7.      Architetture dei sistemi informatici

7.1  Architetture dei sistemi informativi

7.2  Architettura dei sistemi intelligenti

7.3  Architettura dei sistemi testuali

7.4  Architettura dei sistemi grafici e multimediali

7.5  Architettura dei sistemi telematici

8.      Progettazione dei sistemi informatici

8.1  Progettazione dei sistemi informativi

8.2  Progettazione dei sistemi intelligenti

8.3  Progettazione dei sistemi testuali

8.4  Progettazione dei sistemi grafici e multimediali

8.5  Progettazione dei sistemi telematici

9.      Attività di laboratorio

 

Bibliografia consigliata

 

Materiale relativo alle lezioni che dovrà essere reso disponibile dai docenti durante lo svolgimento del corso.