Linguaggio C Struttura dei programmi
|
|
- Lorenza Franchi
- 7 anni fa
- Visualizzazioni
Transcript
1 FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Struttura dei programmi 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 1
2 Nota di Copyright Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul copyright e dalle disposizioni dei trattati internazionali. Il titolo ed i copyright relativi alle slides (ivi inclusi, ma non limitatamente, ogni immagine, fotografia, animazione, video, audio, musica e testo) sono di proprietà degli autori prof. Pier Luca Montessoro e ing. Davide Pierattoni, Università degli Studi di Udine. Le slide possono essere riprodotte ed utilizzate liberamente dagli istituti di ricerca, scolastici ed universitari afferenti al Ministero della Pubblica Istruzione e al Ministero dell Università e Ricerca Scientifica e Tecnologica, per scopi istituzionali, non a fine di lucro. In tal caso non è richiesta alcuna autorizzazione. Ogni altro utilizzo o riproduzione (ivi incluse, ma non limitatamente, le riproduzioni su supporti magnetici, su reti di calcolatori e stampe) in toto o in parte è vietata, se non esplicitamente autorizzata per iscritto, a priori, da parte degli autori. L informazione contenuta in queste slide è ritenuta essere accurata alla data della pubblicazione. Essa è fornita per scopi meramente didattici e non per essere utilizzata in progetti di impianti, prodotti, reti, ecc. In ogni caso essa è soggetta a cambiamenti senza preavviso. Gli autori non assumono alcuna responsabilità per il contenuto di queste slide (ivi incluse, ma non limitatamente, la correttezza, completezza, applicabilità, aggiornamento dell informazione). In ogni caso non può essere dichiarata conformità all informazione contenuta in queste slide. In ogni caso questa nota di copyright e il suo richiamo in calce ad ogni slide non devono mai essere rimossi e devono essere riportati anche in utilizzi parziali Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 2
3 Lessico, sintassi, semantica Un programma è costituito da uno o più file di testo (o file sorgenti) contenenti un insieme di caratteri Come nel linguaggio naturale, in ogni linguaggio di programmazione si possono distinguere: il lessico, insieme dei simboli con cui è possibile scrivere un programma la sintassi, insieme delle regole di combinazione dei simboli la semantica, insieme delle regole di interpretazione dei costrutti sintattici 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 3
4 Linguaggio e token Le parole del linguaggio naturale corrispondono ai token del linguaggio C Esistono sei classi di token: identificatori parole chiave costanti letterali stringhe letterali operatori separatori Gli spazi bianchi, i caratteri di tabulazione, i new line, i salti di pagina ed i commenti sono tutti dei separatori di token Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 4
5 Il compilatore e i token Quando il compilatore effettua l analisi lessicale di un file sorgente, cerca sempre di individuare token di lunghezza massima A partire da ogni separatore, il token successivo è quindi la più lunga sequenza di caratteri che può costituire un token; ogni ambiguità può essere evitata utilizzando gli spazi bianchi Esempio: l espressione con operatori aritmetici x=y---z; sarà interpretata dal compilatore come... x = (y--) - z; 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 5
6 Formato del linguaggio Il C è un linguaggio a formato libero La separazione tra gli elementi sintattici si basa sulla presenza di parole chiave e simboli separatori Il cambio di riga è equiparato ad uno spazio versatilità di scrittura e leggibilità dei programmi #include <stdio.h> #include <stdlib.h> /* programma principale */ int main() { printf ("Ciao, mondo!"); return EXIT_SUCCESS; } /* fine del programma */ #include <stdio.h> #include <stdlib.h> /* programma principale */ int main(){printf ( "Ciao, mondo!"); return EXIT_SUCCESS;}/* fine del programma */ Il programma è ugualmente corretto, ma risulta illeggibile! 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 6
7 Stile di programmazione In C non viene imposto alcuno stile di programmazione È compito del programmatore adottare uno stile chiaro, in modo da rendere comprensibile a sé e agli altri il codice prodotto È buona norma: scrivere una sola istruzione per ciascuna riga usare spazi per separare anche visivamente i token indentare i blocchi di codice mediante 3 spazi (evitare il carattere di tabulazione) utilizzare dei commenti a corredo delle istruzioni più difficilmente comprensibili 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 7
8 Indentazione L indentazione è una tecnica di scrittura molto utile nel caso di programmi dalla struttura complessa Fa uso di spazi di rientro per isolare gruppi di istruzioni in sottolivelli logici: { istruzione_1 istruzione_2 istruzione_14 { Annidamento dei blocchi di codice Standard proposto: 3 spazi istruzione_15 { istruzione_16 istruzione_32 } istruzione_33 istruzione_34 } istruzione_35 istruzione_ Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 8 }
9 Commenti I caratteri /* introducono una o più righe di commento, terminato con i caratteri */ Il compilatore ignora tutti i caratteri compresi tra i delimitatori /* e */ printf ("Ciao, mondo!"); /* questo è un commento: stampa sullo standard output la stringa "Ciao, mondo!" */ I commenti non possono essere annidati; non è lecito quindi scrivere: /* questo è un primo commento /* questo è un secondo commento */ e questa è la continuazione del primo */ 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 9
10 Identificatori Gli identificatori sono delle sequenze di caratteri che rappresentano genericamente degli elementi Un identificatore può contenere lettere (maiuscole e minuscole), cifre e il carattere "_" (underscore) Non può contenere spazi, simboli separatori, simboli di operatori (es. +, -, %, &,. (punto),, (virgola) ) Deve iniziare con una lettera oppure con l underscore Pippo1, pippo_e_pluto e _pippo sono validi b 52, acme&c, Donald.Duck non sono validi Normalmente i compilatori ammettono una lunghezza massima per un identificatore di 32 caratteri 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 10
11 Identificatori Il linguaggio C è case sensitive lettere maiuscole e lettere minuscole sono interpretate come codici diversi anche negli identificatori Gli identificatori: Pippo pippo pippo PIPPO sono interpretati come diversi fra loro Questo aspetto consente di combinare più parole in un solo identificatore, per facilitare la lettura del codice: DonaldDuck NumeroDiElementi 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 11
12 Struttura di un programma Un programma C è un insieme di funzioni Ogni funzione è un blocco di codice contenente un insieme di istruzioni racchiuse tra le parentesi graffe, { e }, a cui è associato un nome, nella forma: nomefunzione ( ) { istruzione_1; istruzione_2; istruzione_n; } Ciascun blocco di codice è sintatticamente equivalente a una singola istruzione 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 12
13 Struttura di un programma La definizione int main () individua la funzione principale di un programma La dichiarazione della funzione main consiste poi in una serie di istruzioni (o statement) racchiuse in un blocco di codice interno, costituente il corpo del programma int main () { } printf ("Ciao, mondo!"); return EXIT_SUCCESS; La forma minima di un programma C è dunque: int main () {} 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 13
14 Struttura di un programma Il corpo del programma è l insieme delle istruzioni che il programma deve eseguire Questo blocco consta di due parti: un primo set di istruzioni dichiarative, che determinano variabili e tipi di dati una sequenza di istruzioni operative, ovvero le azioni svolte di fatto dal programma (input/output, assegnazioni di valori, valutazione di espressioni) Ogni istruzione è terminata dal carattere punto e virgola ; 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 14
15 Struttura di un programma Il seguente programma definisce una variabile intera i, visualizza un messaggio operativo per l utente, legge un numero da tastiera e ne stampa il valore sullo schermo: #include <stdio.h> #include <stdlib.h> int main() { /* istruzione dichiarativa */ int i; } /* istruzioni operative */ printf ("Digita il numero: "); scanf ("%d", &i); printf ("Valore digitato: %d\n", i); return EXIT_SUCCESS; 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 15
16 Funzioni di input/output Nel programma compaiono alcune funzioni, dette funzioni di libreria, che eseguono operazioni di input/output scanf è una funzione che legge un carattere da tastiera (lo standard input), ne converte il valore secondo il formato specificato e lo attribuisce ad una variabile scanf ("%d", &i); Interpreta il dato letto da tastiera come un intero ("%d"), un numero reale ("%f"), un carattere ("%c")... Indirizzo della variabile i in memoria (operatore &) 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 16
17 Funzioni di input/output printf è una funzione di libreria che stampa sul monitor (lo standard output) una stringa costante: printf ("Hello world!"); oppure il valore di una variabile di tipo specificato: printf ("%d", i); Interpreta il dato contenuto nella variabile come un intero ("%d"), un numero reale ("%f"), un carattere ("%c")... Nome della variabile 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 17
18 Comandi del preprocessor I programmi C più semplici sono organizzati secondo lo schema: <direttive del preprocessor> int main() { <istruzioni dichiarative> <istruzioni operative> } Il preprocessor costituisce la prima fase di analisi del codice sorgente, e precede l attività di compilazione vera e propria Il preprocessor elimina anche i commenti 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 18
19 Comandi del preprocessor Tutte le direttive destinate al preprocessor sono denotate dal simbolo # come primo carattere di una riga L istruzione #include <nomefile.h> comanda l inclusione di un file di libreria (header file) nel codice sorgente Il file stdio.h è un file di libreria necessario per poter utilizzare le funzioni di I/O Il file stdlib.h è un file di libreria necessario per utilizzare alcune funzioni e per definire alcune costanti di sistema (tra cui EXIT_SUCCESS) Non contiene istruzioni esecutive, ma solo dichiarazioni di funzioni, costanti tipi di dato e macroistruzioni 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 19
20 Analisi lessicale di un programma Consideriamo un semplice programma che somma due numeri e scrive il risultato sullo standard output (il monitor); proviamo ora ad analizzarlo secondo la prassi del compilatore... Il significato delle indicazioni è il seguente: identificatori parole chiave costanti letterali stringhe letterali operatori separatori commenti e direttive al preprocessor 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 20
21 Analisi lessicale di un programma #include <stdio.h> #include <stdlib.h> /* programma principale */ int main() { int a, b; scanf ("%d %d", &a, &b); /* legge a e b */ printf ("a+b=%d\n", a + b); /* istruzione di ritorno al sistema operativo */ return EXIT_SUCCESS; } /* fine del programma */ 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 21
22 Analisi lessicale di un programma #include <stdio.h> #include <stdlib.h> /* programma principale */ int main() { int a, b; scanf ("%d %d", &a, &b); /* legge a e b */ printf ("a+b=%d\n", a + b); /* istruzione di ritorno al sistema operativo */ return EXIT_SUCCESS; } /* fine del programma */ 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota di copyright a pag. 2) 22
Strumenti per la programmazione. Strumenti per la programmazione. Strumenti per la programmazione. Strumenti per la programmazione
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine La zione in linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliLinguaggio C Strutture di controllo
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Strutture di controllo 2001 Pier Luca Montessoro - Davide
DettagliLinguaggio C I puntatori
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C I puntatori 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliLa programmazione in linguaggio C
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine La programmazione in linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliInput/output in C e in C++
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Input/output in C e in C++ 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliLinguaggio C e sistema operativo
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C e sistema operativo 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliFONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI. Facoltà di Ingegneria Università degli Studi di Udine
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C I file 2001 Pier Luca Montessoro - Davide Pierattoni (vedere
DettagliLinguaggio C Debugging
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni (vedere nota
DettagliIntroduzione alla programmazione strutturata
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Prof. ELIO TOPPANO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio
DettagliSommario. Lessico, Sintassi e Semantica. Principi Fondamentali. Introduzione e Fondamenti del Linguaggio C
Introduzione e Fondamenti del Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario
DettagliIntroduzione e Fondamenti del Linguaggio C
Introduzione e Fondamenti del Corso di Laurea in Ingegneria Civile Politecnico di Bari Sede di Foggia Fondamenti di Informatica Anno Accademico 2011/2012 docente: Prof. Ing. Michele Salvemini Sommario
DettagliScrivere il software. Scrivere il software. Interprete. Compilatore e linker. Fondamenti di Informatica
FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Prof. ELIO TOPPAO Facoltà di Ingegneria Università degli Studi di Udine Introduzione alla programmazione strutturata 2001 Pier Luca Montessoro, Elio Toppano
DettagliDal linguaggio macchina al linguaggio C
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Dal linguaggio macchina al linguaggio C 2000 Pier Luca Montessoro (si veda la nota di copyright
DettagliLinguaggio C Struct e union
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Struct e union 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliProgramma sorgente, compilatore, file oggetto, file eseguibile. Traduzione effettuata dal compilatore. Dichiarazione di variabili (esempi)
FODAMETI DI IFORMATICA Prof. PIER LUCA MOTESSORO Facoltà di Ingegneria Università degli Studi di Udine Dal linguaggio macchina al linguaggio C 2000 Pier Luca Montessoro (si veda la nota di copyright alla
DettagliCodifiche Binary Coded Decimal (BCD) e Gray
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Codifiche Binary Coded Decimal (BCD) e Gray 28 Pier Luca Montessoro (si veda la nota di copyright
DettagliCodifica dei numeri interi positivi e negativi
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Codifica dei numeri interi positivi e negativi 2000 Pier Luca Montessoro (si veda la nota di copyright
DettagliRETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE
RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliArchitettura del processore. Modello di calcolatore. Caratteristiche del processore. Caratteristiche del processore. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architettura e funzionamento del calcolatore 20 Pier Luca Montessoro (si veda la nota di copyright
DettagliArchitettura e funzionamento del calcolatore
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Architettura e funzionamento del calcolatore 2000 Pier Luca Montessoro (si veda la nota di copyright
DettagliFONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Codifica del video
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Codifica del video 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
DettagliRETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE
RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
Dettagli2001 Pier Luca Montessoro, Davide Pierattoni (si veda la nota di copyright alla slide n. 2) Fondamenti di Informatica.
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Le trappole del linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliControllo e correzione degli errori
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Controllo e correzione degli errori 2000 Pier Luca Montessoro si veda la nota di copyright alla
DettagliLe trappole del linguaggio C
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Le trappole del linguaggio C 2001 Pier Luca Montessoro - Davide Pierattoni
DettagliFONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Codifica dei testi
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Codifica dei testi 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
DettagliCodifica dei segnali audio
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Codifica dei segnali audio 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliLinguaggio C: introduzione
Dipartimento di Elettronica ed Informazione Politecnico di Milano Informatica e CAD (c.i.) - ICA Prof. Pierluigi Plebani A.A. 2008/2009 Linguaggio C: introduzione La presente dispensa e da utilizzarsi
DettagliRETI DI CALCOLATORI II
RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2010 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliElementi di crittografia
Nota di Copyright RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi
DettagliAutenticazione, firme digitali e certificati digitali
Nota di Copyright ETI DI CALCOLATOI II Prof. PIE LUCA MONTESSOO Ing. DAVIDE PIEATTONI Facoltà di Ingegneria Università degli Studi di Udine Questo insieme di trasparenze (detto nel seguito slide) è protetto
DettagliTecniche di compressione senza perdita
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Tecniche di compressione senza perdita 2000 Pier Luca Montessoro (si veda la nota di copyright
DettagliPier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
Le tecnologie alla base del World Wide RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 2001-2007 Pier Luca Montessoro (si veda la nota a pagina 2) 1
DettagliNota di Copyright RETI DI CALCOLATORI. Lezione 28: indice degli argomenti. Lezione 28. Il collegamento agli Internet Service Provider
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2001-2007 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliGestione della memoria di massa e file system
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Gestione della memoria di massa e file system 2000 Pier Luca Montessoro (si veda la nota di copyright
DettagliMemoria cache. Memoria cache. Miss e Hit. Problemi. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Memoria cache, interrupt e DMA 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliIntroduzione al C. Introduzione. Linguaggio ad alto livello. Struttura di un programma C
Introduzione 2 Introduzione al C Linguaggio di programmazione ad alto livello (HLL) Sviluppato negli anni 70 (C standard ANSI) Molto diffuso e adatto ad un ampio spettro di applicazioni: Scientifiche Gestionali
DettagliFONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Compressione JPEG
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Compressione JPEG 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1 Nota
DettagliRETI DI CALCOLATORI. Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI. Facoltà di Ingegneria Università degli Studi di Udine
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2001-2007 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliIl cablaggio strutturato degli edifici: cosa c e` ` di nuovo?
Il cablaggio strutturato degli edifici: cosa c e` ` di nuovo? Pier Luca Montessoro Università degli Studi di Udine Dip. di Ing. Elettrica, Gestionale e Meccanica e-mail: montessoro@uniud.it www: http://www.uniud.it/montessoro
DettagliElementi di crittografia
Nota di Copyright RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Questo insieme di trasparenze (detto nel seguito slide)
Dettagli2001 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 2001 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright Questo insieme di trasparenze
DettagliFONDAMENTI DI INFORMATICA. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine. Compressione audio
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Compressione audio 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
DettagliRETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE
RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliLinguaggio C Variabili e tipi di dato
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Variabili e tipi di dato 2001 Pier Luca Montessoro - Davide
DettagliPrimo: eliminare la confusione
E.M.I. Shield e Grounding: analisi applicata ai sistemi di cablaggio strutturato Primo: eliminare la confusione Pier Luca Montessoro pierluca.montessoro@diegm.uniud.it DEF - 1 Copyright: si veda nota a
DettagliIl linguaggio C. Prof. E. Occhiuto INFORMATICA 242AA a.a. 2010/11 pag. 1
Il linguaggio C I linguaggi di programmazione ad alto livello sono linguaggi formali ( sintassi e semantica formalmente definite) però sono compatti e comprensibili. Le tipologie di linguaggi sono: procedurali
Dettagli2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
Le tecnologie alla base del World Wide (II RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si
DettagliIL CABLAGGIO STRUTTURATO DI CATEGORIA 6
IL CABLAGGIO STRUTTURATO DI CATEGORIA 6 21 maggio 2002 PIER LUCA MONTESSORO Dip. di Ingegneria Elettrica Gestionale e Meccanica Università degli Studi di Udine in collaborazione con 2002 Pier Luca Montessoro
Dettagli1999 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2) 1
RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro ( si veda la nota a pagina 2) 1 Nota di Copyright
DettagliNota di Copyright RETI DI CALCOLATORI. Lezione 2: indice degli argomenti. Lezione 2. I servizi offerti dalle reti di calcolatori
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1 Nota di Copyright Questo insieme di trasparenze (detto nel seguito slide) è protetto dalle leggi sul
DettagliRETI DI CALCOLATORI. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 2001 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright Questo insieme di trasparenze
DettagliDati due punti sul piano calcolare la loro distanza
Introduzione al C Primo esempio in C Dati due punti sul piano calcolare la loro distanza Soluzione: la distanza fra due punti si calcola secondo il teorema di Pitagora, con la formula: y Distanza = (lato12
DettagliProf. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Nota di Copyright Questo insieme di trasparenze (detto nel seguito slide) è protetto
DettagliTrasmissione bilanciata e amplificatore differenziale
E.M.I. Shield e Grounding: analisi applicata ai sistemi di cablaggio strutturato Trasmissione bilanciata e amplificatore differenziale Pier Luca Montessoro pierluca.montessoro@diegm.uniud.it DIFFAMP -
DettagliArgomenti della lezione
Nota di Copyright RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO acoltà di Ingegneria Università degli Studi di Udine Prof. MARIO BALDI acoltà di Ingegneria Politecnico di Torino Questo insieme di trasparenze
DettagliLaboratorio di Informatica I
Struttura della lezione Lezione : Elementi lessicali del C Vittorio Scarano Corso di Laurea in Informatica Elementi lessicali e token Costanti Identificatori Operatori operatori di incremento/decremento
DettagliElementi lessicali. Lezione 4. La parole chiave. Elementi lessicali. Elementi lessicali e espressioni logiche. Linguaggi di Programmazione I
Lezione 4 Elementi lessicali e espressioni logiche Matricole 2-3 Elementi lessicali il linguaggio C ha un suo vocabolario di base i cui elementi sono detti token esistono 6 tipi di token: parole chiave
Dettagli#include <stdio.h> /* l esecuzione comincia dalla funzione main */ int main()
Primi passi Il mio primo programma #include /* l esecuzione comincia dalla funzione main */ int main() { printf( Hello World!\n" ); return 0; /* il programma termina con successo */ } /* fine
DettagliLinguaggio C Espressioni e operatori
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Ing.DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine Linguaggio C Espressioni e operatori 2001 Pier Luca Montessoro - Davide
DettagliLinguaggio di Riferimento: C
Programmazione procedurale Linguaggio di Riferimento: C 1 Linguaggio macchina Il linguaggio macchina costituisce la forma espressiva atta a descrivere programmi e ad essere direttamente interpretata dall
DettagliStruttura dei programmi e Variabili
Linguaggio C Struttura dei programmi e Variabili 1 La struttura generale dei programmi! Struttura del programma: Direttive Funzioni Dichiarazioni Istruzioni Di assegnamento direttive Di ingresso e uscita
DettagliRETI DI CALCOLATORI II
RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2003 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliSicurezza applicata in rete
Nota di Copyright RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI acoltà di Ingegneria Università degli Studi di Udine Questo insieme di trasparenze (detto nel seguito slide) è
DettagliESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2008/2009. formalizzazione degli algoritmi in linguaggio C
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliNota di Copyright. Interfaccia audio. Libreria portaudio. Callback function. Un piccolo problema. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Libreria in linguaggio C per elaborazione audio in real time 2010 Pier Luca Montessoro (si veda
DettagliLa voce di Elvis Presley, la chitarra di David Gilmour e le funzioni di callback in linguaggio C
La voce di Elvis Presley, la chitarra di David Gilmour e le funzioni di callback in linguaggio C l ingegneria elettronica nella musica moderna Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università
DettagliLinguaggi di Programmazione
Linguaggi di Programmazione 1 C-Introduzione.tex: Versione 1.0, aa 2005-2006 Linguaggi di programmazione (1) Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili, direttamente
DettagliL AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma #include main() { printf("ciao Mondo!"); } Il file deve essere salvato con estensione.c Il primo programma in C++ #include using
DettagliLibreria in linguaggio C per elaborazione audio in real time
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Libreria in linguaggio C per elaborazione audio in real time 2010 Pier Luca Montessoro (si veda
DettagliStruttura di un. Struttura dei programmi C
Parte 4 Struttura di un Programma Struttura dei programmi C Un programma C deve essere contenuto in uno o più file (salvo diversa specifica, per ora si assume in un file): 1. Una parte contenente direttive
DettagliL AMBIENTE CODE BLOCKS E L IO
L AMBIENTE CODE BLOCKS E L IO Il primo programma in C++ #include using namespace std; main() { cout
DettagliESECUZIONE DI PROGRAMMI C SU MACCHINE REALI. Docente: Giorgio Giacinto AA 2009/2010
Università degli Studi di Cagliari Corso di Laurea Specialistica in Ingegneria per l Ambiente ed il Territorio Corso di Laurea Specialistica in Ingegneria Civile - Strutture FONDAMENTI DI INFORMATICA 2
DettagliProf. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C
Prof. Pagani Corrado INTRODUZIONE AL LINGUAGGIO C IL LINGUAGGIO C Nel 1972 Dennis Ritchie nei Bell Laboratories progettò il linguaggio C Il linguaggio possiede tutti i costrutti di controllo dei linguaggi
DettagliI Fondamenti del Linguaggio
Linguaggio C I Fondamenti del Linguaggio Linguaggio di Programmazione Linguaggio formale per la descrizione di programmi per calcolatori Sintassi vicina al linguaggio umano Se non ci fossero, bisognerebbe
DettagliIntroduzione al C. Informatica Generale - Introduzione al C Versione 1.0, aa p.1/17
Introduzione al C Informatica Generale - Introduzione al C Versione 1.0, aa 2005-2006 p.1/17 Linguaggi di programmazione Sono linguaggi che permettono la codifica di algoritmi in modo da renderli eseguibili,
DettagliMetro VLAN Switch e standard 802.1ad
Metro VLAN Switch e standard 802.1ad Pietro Nicoletti piero[]studioreti.it VLAN-Metro-802.1ad - 1 P. Nicoletti: si veda nota a pag. 2 Nota di Copyright Questo insieme di trasparenze (detto nel seguito
DettagliRETI DI CALCOLATORI II
RETI DI CALCOLATORI II Prof. PIER LUCA MONTESSORO Ing. DAVIDE PIERATTONI Facoltà di Ingegneria Università degli Studi di Udine 2010 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliGestione dei processi
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Gestione dei processi 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide n. 2)
DettagliCorso sul linguaggio C
Corso sul linguaggio C Modulo 1 1.1 Istruzioni semplici 1 Prerequisiti Saper progettare algoritmi Saper descrivere algoritmi (NLS, ddf) Conoscere il concetto di espressione 2 1 Introduzione In questa lezione
DettagliIntroduzione al linguaggio C
Introduzione al linguaggio C Abbiamo già visto come un programma non sia altro che un algoritmo codificato in un linguaggio di programmazione. Problema: quale linguaggio scegliere per la codifica di un
DettagliShielding. E.M.I. Shield e Grounding: analisi applicata ai sistemi di cablaggio strutturato. Pier Luca Montessoro.
E.M.I. Shield e Grounding: analisi applicata ai sistemi di cablaggio strutturato Shielding Pier Luca Montessoro pierluca.montessoro@diegm.uniud.it SHIELD - 1 Copyright: si veda nota a pag. 2 Nota di Copyright
DettagliGestione della memoria per sistemi multiprogrammati. Obiettivi. Partizioni fisse. Partizioni fisse. Fondamenti di Informatica
FONDAMENTI DI INFORMATICA Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine Gestione della memoria centrale 2000 Pier Luca Montessoro (si veda la nota di copyright alla slide
DettagliRETI DI CALCOLATORI. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 2001-2007 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright Questo insieme di trasparenze
DettagliRETI DI CALCOLATORI. Prof. PIER LUCA MONTESSORO. Facoltà di Ingegneria Università degli Studi di Udine
RETI DI CALCOLATORI Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 2001 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright Questo insieme di trasparenze
DettagliLaboratorio di Programmazione 1. Docente: dr. Damiano Macedonio Lezione 4 24/10/2013
Laboratorio di Programmazione 1 1 Docente: dr. Damiano Macedonio Lezione 4 24/10/2013 Original work Copyright Sara Migliorini, University of Verona Modifications Copyright Damiano Macedonio, University
DettagliIntroduzione al C. Fondamenti di Informatica. Daniele Loiacono
Introduzione al C Fondamenti di Informatica Il nostro primo programma in C /* Questo è il nostro primo programma in C */ #include int main( ) printf("hello world\n"); Il nostro primo programma
DettagliUnità F1. Obiettivi. Il linguaggio C. Il linguaggio C++ Linguaggio C. Pseudolinguaggio. Primi programmi
Obiettivi Unità F1 Primi programmi Conoscere il significato di dichiarazione e definizione di variabili Conoscere i tipi di dato numerici Essere in grado di realizzare semplici algoritmi in pseudolinguaggio
DettagliRETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE
RETI DI CALCOLATORI E APPLICAZIONI TELEMATICHE Prof. PIER LUCA MONTESSORO Facoltà di Ingegneria Università degli Studi di Udine 1999 Pier Luca Montessoro (si veda la nota a pagina 2) 1 Nota di Copyright
DettagliLEZIONE 1 LE BASI DEL LINGUAGGIO C
LEZIONE 1 LE BASI DEL LINGUAGGIO C Simone Marchesini Roberto Pagliarini Dipartimento di Informatica Università di Verona COS È? Il C è un linguaggio di programmazione che permette di salvare i valori in
DettagliAlgoritmi e basi del C Struttura di un programma
Algoritmi e basi del C Struttura di un programma Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 11 Marzo 2014 Informazione: dato + significato Che giorno è oggi? 14 Marzo o anche
DettagliLa programmazione nel linguaggio C
3 La programmazione nel linguaggio C 3.0 La programmazione nel linguaggio C c Diego Calvanese Fondamenti di Informatica Corso di Laurea in Ingegneria Elettronica A.A. 2001/2002 3.0 0 Introduzione ai programmi
Dettagli