Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso...

25
Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C

Transcript of Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso...

Page 1: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Fondamenti di informaticaLinguaggio C

Main Program:

Architettura di un PCDiagrammi di flussoLinguaggio C

Page 2: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Il Transistore

La carica elettrica

Capacità di conservare un informazione

Sistema Binario

Il bit e il byte

Page 3: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Porta Logica

Tipi di porte logiche

La matematica modulare(cenni)

Leggi di De Morgan

Page 4: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Architettura di un PC

CPU

Memoria RAM(tipi di memoria)

Periferiche Hardware

Page 5: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Ambiente di sviluppo

Windows

Osx

Linux

I compilatori(e gli editor)

Page 6: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Il linguaggio C

Programmazione strutturata

Teorema di Jacopini-Boem

Astrazione di un linguaggio

Page 7: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Algoritmi e Programmi

Comando

Espressione(blocco)

Funzione

Page 8: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Variabili 1

Varibili “intere”

Variabili reali

Con segno o senza

Page 9: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Variabili 2

Range

Costanti

Dichiarazione/assegnazione

Page 10: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Assegnatori

Corrispondenza con le variabili

Corrispondenza con le stringhe

Funzione “sizeoff”

Page 11: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Regole di priorità e sintassi

Verso il linguaggio umano

Il più basso dei linguaggi di alto livello

Linguaggo Imperativo

Esattezza della sintassi

Page 12: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Debug

Errore Warning

Errore Error(e di over-flow)

Errori di concetto

Page 13: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Funzioni 1

Dichiarazione

Prototipo

Chiamata

Page 14: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Funzioni 2

Record di attivazione

Uso dello “Stack”

Passaggio dei parametri per valore

Page 15: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Scope e tempo di vita

Variabili all’interno di un “blocco”

Variabili nel blocco Main()

Variabili dichiarate all’esterno di funzioni

Page 16: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Tipi di Dato

Logico

Reale

Carattere

Page 17: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Dati Strutturati 1

Vettori

Array

Matrici

Page 18: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Dati Strutturati 2

Stringa

“Vettore Stringa”

Sintassi Stringa

Page 19: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Puntutatori 1

&/*

Visibilità della “macchina reale”

Operatori su indirizzi

Page 20: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Puntatori 2

Tipo di dato puntatori

Compatibilità di tipo

Aritmetica dei puntatori

Puntatori e Vettori

Page 21: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Ancora Funzioni

Passaggio dei parametri

Limite passaggio per valori

Passaggio di parametri per riferimento

Passaggio di Vettori come parametri

Page 22: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Strutture dinamiche

Strutture Dati

Allocazione dinamica delle variabili

Funzione Malloc()

Allocazione stringa dinamica

Page 23: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Liste

Realizzazione della lista

Liste lineari mediante puntatori

Scansione

Concatenazione

Eliminazione

Page 24: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

Tipo di dato astratto (cenni)

Tipo di dato astratto “lista”

Realizzazzione liste lineari mediante vettori

Impelmentazioni di liste

Insieme

Page 25: Fondamenti di informatica Linguaggio C Main Program: Architettura di un PC Diagrammi di flusso Linguaggio C.

I File (cenni)

Memorie a confronto

Concetto di File

Funzionamento

File in C

Creazione/Apertura/Chiusura