La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE C: miti e realtà Marco D. Santambrogio – Ver. aggiornata al 8 Marzo 2013.

Presentazioni simili


Presentazione sul tema: "DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE C: miti e realtà Marco D. Santambrogio – Ver. aggiornata al 8 Marzo 2013."— Transcript della presentazione:

1 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE C: miti e realtà Marco D. Santambrogio – Ver. aggiornata al 8 Marzo 2013

2 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Sulla semantica… Che giorno è oggi? 14 Marzo o anche… 14.3 o anche…

3 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Sulla codifica… 3

4 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Info di servizio Laboratori Divisione in gruppi Lunedi: 95 studenti Giovedi: 80 studenti Oggetto del primo lab Cosa e e come funziona un compilatore Sistemazione degli ambienti di sviluppo Comandi base da linea di comando Per progetto sostitutivo Dove: NECST Lab Quando: Mercoledì 20 8am 4

5 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Maiuscolo: solo if 5

6 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Condizione da verificare Il carattere inserito deve essere X: =>a Y: <= z X e Y devono essere entrambe vere 6 X Y X and Y (prodotto logico)

7 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Maiuscolo: AND 7

8 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Maiuscolo: codice ottimizzato 8

9 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Maiuscolo: esecuzione 9

10 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 10 Tautologia Una espressione logica che è sempre vera, per qualunque combinazione di valori delle variabili Esempio: principio del terzo escluso: A or not A (tertium non datur, non si dà un terzo caso tra levento A e la sua negazione) Contraddizione Una espressione logica che è sempre falsa, per qualunque combinazione di valori delle variabili Esempio: principio di non contraddizione: A and not A (levento A e la sua negazione non possono essere entrambi veri) Tautologie e Contraddizioni

11 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 11 Due espressioni logiche si dicono equivalenti (e si indica con ) se hanno la medesima tabella di verità. La verifica è algoritmica. Per esempio: A B not A and not B not (A or B) and 1 = 1 not 0 = and 0 = 0 not 1 = and 1 = 0 not 1 = and 0 = 0 not 1 = 0 Espressioni logiche equivalenti modellano gli stessi stati di verità a fronte delle medesime variabili Equivalenza tra espressioni

12 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 12 Proprietà dellalgebra di Boole Lalgebra di Boole gode di svariate proprietà, formulabili sotto specie di identità cioè formulabili come equivalenze tra espressioni logiche, valide per qualunque combinazione di valori delle variabili

13 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra Booleana a due valori: Assiomi Gli operatori descritti godono delle proprietà definite dai seguenti assiomi (postulati di Huntington): Le operazioni di disgiunzione (+) e congiunzione (·) sono commutative, cioè per ogni elemento a,b B a+b = b+a a·b = b·a Esiste un elemento neutro (o identità) rispetto a + (indicato con 0) e un elemento neutro rispetto a · (indicato con 1), cioè: a+0=a a·1=a Le due operazioni sono distributive rispetto allaltra, cioè per ogni a,b,c B, risulta: a+(b·c)=(a+b)·(a+c) a·(b+c)=(a·b)+(a·c) Per ogni a B esiste lelemento a B, detto negazione logica o complemento di a, tale che: a+a =1 a·a =0 Vale per la somma rispetto al prodotto come per il prodotto rispetto alla somma – non esiste precedenza fra le due operazioni, occorre sempre immaginare le parentesi sottintese intorno a ogni applicazione di unoperazione. 13

14 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Algebra di Commutazione: Proprietà 1 1: associativa a+(b+c)=(a+b)+c a*(b*c)=(a*b)*c 2: idempotenza a+a=a a*a=a 3: elemento nullo a+1=1 a*0=0 4: unicità elemento inverso: il complemento di a, a, è unico 5: assorbimento a+(a*b)=a a*(a+b)=a 14

15 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 6: Semplificazione a+ab = a+b a*(a+b) = a*b 7: involuzione ((a)) = a 8: Leggi di De Morgan (a+b) = a*b (a*b) = a+b 9: consenso a*b+a*c+b*c = a*b + a*c (a+b)*(a+c)*(b+c)=(a+b)*(a+c) Algebra di Commutazione: Proprietà 2 15

16 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Fine, domande? 16 Pausa 10

17 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONEObiettivi La struttura di un programma C Teorema di Böhm e Jacopini La calcolatrice 17

18 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 18 Struttura di un programma C inclusione librerie / per poter invocare funzioni utili (i/o,...) / dichiarazione di variabili globali e funzioni int main ( ) { dichiarazione di variabili locali istruzione 1; / tutti i tipi di operazioni, e cioè: / istruzione 2; / istr. di assegnamento / istruzione 3; / istr. di input / output / istruzione 4; / istr. di controllo (condizionali, cicli) /... istruzione N; } parte esecutiva parte dichiarativa localeparte dichiarativa globale Ogni programma C deve contenere un modulo int main() {...}

19 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 19 Teorema di Böhm e Jacopini Tutti i programmi possono essere scritti in termini di tre strutture di controllo: Sequenza: istruzioni eseguite in ordine Selezione: istruzioni che permettono di prendere strade diverse in base a una condizione (costrutto di tipo se-allora ) Iterazione: istruzioni che permettono di eseguire ripetutamente un certo insieme di altre istruzioni (costrutti di tipo fintantoché )

20 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 20 x = 23; w = 'a'; y = z; alfa = x + y; r3 = ( alfa * 43 – xgg ) * ( delta – 32 * j ); x = x + 1; Abbreviazioni (operatori di assegnamento): a = a + 7; a = a * 5; a = a + 1; a = a - 1; a += 7; a *= 5; ++a; --a; Esempi di assegnamento Istruzioni della forma variabile = variabile operatore espressione; si possono scrivere come: variabile operatore = espressione;

21 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 21 Operatori aritmetici in C: * per la moltiplicazione e / per la divisione La divisione tra interi elimina il resto (quoziente): 13 / 5 è uguale a 2 Loperatore modulo calcola il resto della divisione: 13 % 5 è uguale a 3 Precedenza degli operatori: Come in aritmetica, moltiplicazione e divisione hanno priorità su addizione e sottrazione si usano le parentesi quando cè ambiguità Per esempio: la media aritmetica di a, b, c: a + b + c / 3NO !!!! (a + b + c ) / 3SI Aritmetica (1/2)

22 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE 22 Aritmetica (2/2) OperazioneOperatore CEspressione aritmetica Espressione C Addizione + f+7 Sottrazione - p-c p – c Moltiplicazione * bm b * m Divisione / x/y Modulo % r mod s r % s Operatori COperazioniPrecedenza ( ) ParentesiValutate per prime. Se ci sono degli annidamenti, si valuta prima la coppia più interna. Se ci sono più coppie allo stesso livello, si valuta da sinistra a destra. *, /, % Moltiplicazione, Divisione, Modulo Valutate per seconde. Se ce ne sono diverse, si valutano da sinistra a destra. +, – Addizione, Sottrazione Valutate per ultime. Se ce ne sono diverse, si valutano da sinistra a destra.

23 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE La calcolatrice? 23 Umh…. Meglio!

24 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE La calcolatrice! Problema Si scriva un programma in C che, dati due numeri, permette allutente di calcolarne la somma, sottrazione, moltiplicazione, e la divisione tra essi Lutente, per ogni coppia di numeri inseriti, potrà eseguire una e una sola operazione La calcolatrice potrà essere utilizzata più volte e… ammettere loperazione di sommatoria per un numero variabile, deciso dallutente, di valori 24

25 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Problemi di fine giornata… Si scriva un programma in C che richiede linserimento di un numero intero positivo, se linserimento e errato ritorna un messaggio di errore Si scriva un programma in C che, dati due caratteri, li ordina in ordine alfabetico inverso 25

26 DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Fonti per lo studio + Credits Fonti per lo studio Informatica arte e mestiere, S. Ceri, D. Mandrioli, L. Sbattella, McGrawHill Capitolo 6 Credits Daniele Braga -


Scaricare ppt "DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE C: miti e realtà Marco D. Santambrogio – Ver. aggiornata al 8 Marzo 2013."

Presentazioni simili


Annunci Google