Differenze tra le versioni di "Fondamenti di architettura e programmazione T2/2006-2007"

Da WikiDsy.
(News/Avvisi)
(News/Avvisi)
 
(76 versioni intermedie di 2 utenti non mostrate)
Riga 1: Riga 1:
==Informazioni Generali==
+
[[Categoria:Corsi 2006-2007]]
 +
<!-- non rimuovere la categorizzazione precedente -->
 +
==News/Avvisi==
 +
 
 +
'''[FAP]'''
 +
 
 +
*Sono usciti gli esiti del primo compitino: [http://homes.dsi.unimi.it/~mereghet/fap/esami0607/esiti/esiti31-10-06.pdf]
 +
 
 +
*31/10 Primo compitino - Solo esercizi
 +
 
 +
*27/10 Attivata la lezione in preparazione al compitino (aula V1 14.30 - 16.30)
 +
 
 +
 
 +
*Per poter sostenere gli scritti regolari di gennaio 2007 è necessario aver consegnato il progetto SymbolicManipulator ed aver ottenuto per quest'ultimo una valutazione positiva
 +
 
  
==News/Avvisi==
 
  
'''[Laboratorio di Programmazione]'''  
+
'''[Laboratorio]'''
  
Il corso avrà inizio lunedì '''16.10.2006''' e fino a giovedì '''02.11.2006''' seguirà il seguente calendario:
+
*Il corso avrà inizio lunedì '''16.10.2006''' e fino a giovedì '''02.11.2006''' seguirà il seguente calendario:
  
- Lunedì 16/23/30 ottobre: 15.30 - 17.30 (aula 200)
+
:Lunedì 16/23/30 ottobre: 15.30 - 17.30 (aula 200)
  
- Giovedì 19 ottobre e 2 novembre: 14.30 - 16.30 (aula 405)
+
:Giovedì 19 ottobre e 2 novembre: 14.30 - 16.30 (aula 405)
  
- Giovedì 26 ottobre: 15.30 - 17.30 (aula 202)
+
:Giovedì 26 ottobre: 15.30 - 17.30 (aula 202)
  
 
----
 
----
  
===Docenti===
+
===[Docenti]===
 
 
Carlo Mereghetti (Fondamenti di Architetture e Programmazione)
 
  
Dario Malchiodi (Laboratorio di Programmazione)
+
*FAP - Carlo Mereghetti
 +
*LABORATORIO - Dario Malchiodi
  
===Contatto docenti===
+
===[Contatto docenti]===
  
 
Carlo Mereghetti: [mailto:mereghetti@dsi.unimi.it]
 
Carlo Mereghetti: [mailto:mereghetti@dsi.unimi.it]
  
Dario Malchiodi : (da inserire)
+
Dario Malchiodi : [mailto:malchiodi@dsi.unimi.it]
  
===Orario Lezioni===
+
===[Orario Lezioni]===
  
 
'''''Fondamenti di Architetture e Programmazione'''''
 
'''''Fondamenti di Architetture e Programmazione'''''
  
Martedì: 14.30 - 17.30 (aula V1 - Didatteca Venezian)
+
*Martedì: 14.30 - 17.30 (aula V1 - Didatteca Venezian)
  
Mercoledì: 15.30 - 18.30 (aula G14 - Settore Didattico Golgi)
+
*Mercoledì: 15.30 - 18.30 (aula G14 - Settore Didattico Golgi)
  
Venerdì: solo in caso di recupero lezioni, compitini... (previo avviso da parte del docente)
+
*Venerdì: solo in caso di recupero lezioni, compitini... (previo avviso da parte del docente)
  
 
1/2 pause a discrezione del docente
 
1/2 pause a discrezione del docente
Riga 42: Riga 54:
 
'''''Laboratorio di Programmazione'''''
 
'''''Laboratorio di Programmazione'''''
  
'''LE LEZIONI NON SONO ANCORA INIZIATE''' '''''(vedi: NEWS/AVVISI)'''''
+
*Lunedì: 15.30 - 17.30 (aula 309 - Settore Didattico Celoria)
 +
 
 +
*Giovedì: 14.30 - 16.30 (aula 309 - Settore Didattico Celoria)
 +
 
 +
Le lezioni cominceranno puntuali e termineranno 15 minuti prima (17.15 e 16.15)
 +
 
 +
===[Orario ricevimento]===
 +
 
 +
*Carlo Mereghetti: Giovedì 14.30 - 16.30 (stanza S241)
 +
 
 +
*Dario Malchiodi: Venerdì 13.30 - 15.30 (stanza S238)
  
Lunedì: 15.30 - 17.30 (aula 309 - Settore Didattico Celoria)
+
===[Pagina web del corso]===
  
Giovedì: 14.30 - 16.30 (aula 309 - Settore Didattico Celoria)
+
*Fondamenti di Architetture e Programmazione: [http://homes.dsi.unimi.it/~mereghet/]
  
===Orario ricevimento===
+
*Laboratorio di Programmazione: [http://homes.dsi.unimi.it/~malchiod/?lang=it]
  
Carlo Mereghetti: Giovedì 14.30 - 16.30 (stanza S241)
+
===[Organizzazione del corso]===
  
Dario Malchiodi: (da inserire)
+
'''FAP'''
  
===Pagina web del corso===
+
'''''I parte: architetture'''''
  
Fondamenti di Architetture e Programmazione: [http://homes.dsi.unimi.it/~mereghet/]
+
*Rappresentazione (digitale) dell'informazione
  
Laboratorio di Programmazione: (da inserire)
+
*Algebra di Boole
  
===Organizzazione del corso===
+
*Macchina di Von Neumann
  
'''I parte: architetture'''
+
'''''II parte: programmazione'''''
  
- Rappresentazione (digitale) dell'informazione
+
*Java (programmazione ad oggetti)
  
- Algebra di Boole
 
  
- Macchina di Von Neumann
+
'''Laboratorio'''
  
'''II parte: programmazione'''
+
*Windows (non verrà trattato in quanto argomento noto a tutti)
 +
*Linux
 +
*Esempi di algoritmi
 +
*Primi programmi in Java
 +
*Selezione/Iterazione
 +
*Dati/Espressioni
 +
*Array
 +
*Ereditarietà/Polimorfismo
 +
*File/Interfacce
 +
*Implementazione di classi I
 +
*Implementazione di classi II
 +
*Eccezione
 +
*Ricorsione (l'argomento verrà trattato solo se ce ne sarà il tempo)
  
- Java (programmazione ad oggetti)
+
===[Testi Consigliati]===
  
===Testi Consigliati===
+
'''''Fondamenti di Architetture e Programmazione:'''''
  
'''Fondamenti di Architetture e Programmazione:'''
+
*Ceri, Mandrioli, Sbattella: ''Informatica, arte e mestiere'' (McGraw - Hill, 2004) [in particolare i capitoli 2 e 11]
  
- Ceri, Mandrioli, Sbattella: ''Informatica, arte e mestiere'' (McGraw - Hill, 2004) [in particolare i capitoli 2 e 11]
+
*Ferrari, Pighizzini: ''Dai fondamenti agli oggetti - corso di programmazione in java'' (Addison - Wesley, 2003)
  
- Ferrari, Pighizzini: ''Dai fondamenti agli oggetti - corso di programmazione in java'' (Addison - Wesley, 2003)
 
  
'''Laboratorio di Programmazione:'''
+
'''''Laboratorio di Programmazione:'''''
  
 
(da inserire)
 
(da inserire)
  
===Modalità Esami===
+
===[Modalità Esami]===
 +
 
 +
'''''Fondamenti di Architetture e Programmazione:'''''
  
'''Fondamenti di Architetture e Programmazione:'''
+
*Scritto (sostituibile da 3 compitini, se in ciascuno si è preso un voto maggiore o uguale a 18)
  
- Scritto (sostituibile da 3 compitini, se in ciascuno si è preso un voto maggiore o uguale a 18)
+
*Progetto e sua discussione (dev'essere sviluppato entro 3 settimane dalla consegna della traccia. Può essere sviluppato singolarmente o in gruppi di al massimo 3 persone, ciascuna delle quali sosterrà poi la discussione)
  
- Progetto e sua discussione
+
*Orale (facoltativo - Ad ogni modo, un suo eventuale esito negativo comprometterà la media generale)
  
- Orale (facoltativo - Ad ogni modo, un suo eventuale esito negativo comprometterà la media generale)
 
  
Ipotetico calendario:
+
''Ipotetico calendario:''
  
- Compitini: ottobre/dicembre/gennaio
+
*Compitini: ottobre/dicembre/gennaio
  
- Scritto: febbraio/aprile/giugno/luglio/settembre/gennaio
+
*Scritto: febbraio/aprile/giugno/luglio/settembre/gennaio
  
- Progetto: aprile/settembre/gennaio
+
*Progetto: aprile/settembre/gennaio
  
Il progetto dev'essere sviluppato entro 3 settimane dalla consegna della traccia. Può essere sviluppato singolarmente o in gruppi di massimo 3 persone (ciascuna delle quali sosterrà poi la discussione)
 
  
'''Laboratorio di Programmazione:'''
+
'''''Laboratorio di Programmazione:'''''
  
(da inserire)
+
Progetto e sua discussione (vedi modalità esami di FAP)
  
 
----
 
----
  
===DIARIO DEL CORSO===
+
===[DIARIO DEL CORSO - FAP]===
 +
 
 +
 
  
'''Martedì 03.10.2006'''
+
===Martedì 03.10.2006===
  
- Introduzione al corso
+
*Introduzione al corso
  
- Definizione di informatica secondo l'A.C.M. (Association for Computing Machinery) e mezzi attraverso i quali viene trattata l'informazione
+
*Definizione di informatica secondo l'A.C.M. (Association for Computing Machinery) e mezzi attraverso i quali viene trattata l'informazione
  
- Algoritmi: definizione di algoritmo - l'algoritmo di Euclide - esempi
+
*Algoritmi: definizione di algoritmo - l'algoritmo di Euclide - esempi
 +
 
 +
*Linguaggio di programmazione (programma) - informazione, bit e byte (e relativi multipli)
  
- Linguaggio di programmazione (programma) - bit e byte (e relativi multipli)
 
  
 
'''''Esercizi assegnati:'''''
 
'''''Esercizi assegnati:'''''
Riga 128: Riga 163:
 
Determinare i seguenti algoritmi:
 
Determinare i seguenti algoritmi:
  
- Input: x, y
+
''Input:'' x, y
 +
 
 +
*Output: x + y ('''attenzione:''' l'utente è in grado di calcolare solo (+1, -1)
 +
 
 +
*Output: x * y ('''attenzione:''' l'utente è in grado di calcolare solo (+, -)
 +
 
 +
===Mercoledì 04.10.2006===
 +
 
 +
*Correzione degli esercizi
 +
 
 +
*Differenze fra una calcolatrice ed un calcolatore
 +
 
 +
*Software e Hardware: definizione e loro composizione
 +
 
 +
*La macchina di Von Neumann: CPU - RAM - Bus - Periferiche (loro definizione, struttura e unità di misura)
 +
 
 +
*Ciclo macchina (''fetch/decode/execute'') e linguaggio Assembly - istruzioni (LOAD/STORE/ADD/SUB/DIV/MULT/MOD/INCR/DECR)- esempi
 +
 
 +
===Martedì 10.10.2006===
 +
 
 +
*Breve ripasso del ciclo macchina e del linguaggio Assembly
 +
 
 +
*Istruzioni di salto condizionato/incondizionato (JZERO/JUMP) - esempi
 +
:(in particolare: riportare in Assembly l'algoritmo ''input:'' a, b - ''output:'' a+b (risultato in ''c'') potendo utilizzare solo il comando INCR/DECR)
 +
 
 +
*Architettura della CPU: CU (Control Unit) - ALU - PC (Program Counter) - CLOCK - Registri
 +
 
 +
*Digitalizzazione delle informazioni: immagini - audio - testi
 +
 
 +
*Digitalizzazione dei numeri: sistema decimale e sistema in base ''b'' - esempi da base decimale a base ''b'' e viceversa
 +
:(in particolare: base 8 [ottale] e base 16 [esadecimale - Hex])
 +
 
 +
 
 +
'''''Esercizi assegnati:'''''
 +
 
 +
Convertire in Assembly i seguenti algoritmi:
 +
 
 +
''input:'' a, b
 +
 
 +
*output: a*b (risultato in ''c'') potendo calcolare solo + e -
 +
*output: a^b (risultato in ''c'')
 +
*output: MCD(a, b) - riportare l'algoritmo di Euclide in Assembly
 +
 
 +
''input:'' a
 +
 
 +
*output: 1+2+3+...+a (sommatoria)
 +
 
 +
===Mercoledì 11.10.2006===
 +
 
 +
*Correzione degli esercizi
 +
 
 +
*Breve ripasso del sistema decimale/ottale/esadecimale/in base ''b''
 +
 
 +
*Conversione dal sistema decimale/ottale/esadecimale al sistema binario e viceversa - esempi
 +
 
 +
*Esempi del più piccolo/grande numero rappresentabile in modulo e segno in un'architettura a ''n'' bit
 +
 
 +
*Operazioni nel sistema binario: somma (e caso particolare di ''overflow'') e sottrazione
 +
 
 +
*Modo di rappresentazione in modulo e segno
 +
 
 +
===Martedì 17.10.2006===
 +
 
 +
*Breve ripasso degli ultimi argomenti svolti
 +
 
 +
*I problemi della rappresentazione in modulo e segno
 +
 
 +
*Rappresentazione in complemento a due (e scorciatoia) - esempi
 +
 
 +
*Esempi del più piccolo/grande numero rappresentabile in complemento a due in un'architettura a ''n'' bit
 +
 
 +
*La sottrazione nel sistema binario con rappresentazione in complemento a due
 +
 
 +
*Rappresentazione dei numeri reali in un calcolatore: in virgola fissa/in virgola mobile
 +
 
 +
*Rappresentazione dei caratteri alfanumerici, d'interpunzione e di controllo: codifica ASCII/UNICODE
 +
 
 +
===Mercoledì 18.10.2006===
 +
 
 +
*Circuiti logici
 +
 
 +
*Algebra di Boole: AND/OR/NOT/XOR/NAND/NOR/Implicazione/Doppia Implicazione - tabelle di verità
 +
 
 +
*Espressioni booleane - esempi e loro rappresentazione grafica
 +
 
 +
*Precedenze nell'algebra booleana
 +
 
 +
*Equivalenze logiche: elenco - esempi
 +
 
 +
'''''Esercizi assegnati:'''''
 +
 
 +
*Rappresentare utilizzando '''solo''' porte NAND, l'equivalenza: (''x'' ^ ''y'') v (¬''x'' ^ ''y'')
 +
 
 +
Dimostrare le seguenti equivalenze:
 +
 
 +
*(¬(''x'' ^ ¬''y'') v (''x'' ^ ¬''y'')) ^ ''y'' = ''y''
 +
 
 +
*(¬''x'' v ''y'') ^ ''x'' ^ ¬''y'' = 0
 +
 
 +
===Martedì 24.10.2006===
 +
 
 +
*Correzione esercizi
 +
 
 +
*Approfondimento su Contraddizione-Tautologia
 +
 
 +
*Algebra booleana in un circuito ALU
 +
 
 +
*Calcolo proposizionale
 +
 
 +
===Mercoledì 25.10.2006===
 +
 
 +
*Svantaggi della programmazione in assembly
 +
 
 +
*Linguaggi ad alto livello
 +
 
 +
*Programmi e moduli
 +
 
 +
*Errori comuni durante la programmazione
 +
 
 +
*Java e applet Java
 +
 
 +
===Venerdì 27.10.2006===
 +
 
 +
*Preparazione al compitino - Esercitazioni in classe
 +
 
 +
===Martedì 31.10.2006===
 +
 
 +
*Compitino
 +
----
 +
 
 +
===[DIARIO DEL CORSO - LABORATORIO]===
 +
 
 +
 
 +
 
 +
===Lunedì 16.10.2006===
 +
 
 +
*Presentazione del corso [http://homes.dsi.unimi.it/~malchiod/LP/Lab00-Presentazione.pdf]
 +
 
 +
*Sistemi operativi I [http://homes.dsi.unimi.it/~malchiod/LP/Lab02-Linux.pdf]
 +
 
 +
===Giovedì 19.10.2006===
 +
 
 +
*Sistemi operativi II [http://homes.dsi.unimi.it/~malchiod/LP/Lab02-Linux.pdf]
  
- Output: x + y ('''attenzione:''' l'utente è in grado di calcolare solo (+1, -1)
+
===Lunedì 23.10.2006===
  
-
+
*Codifica delle informazioni [http://homes.dsi.unimi.it/~malchiod/LP/Lab02-Conversioni.pdf]
  
- Input: x, y
+
===Giovedì 26.10.2006===
  
- Output: x * y ('''attenzione:''' l'utente è in grado di calcolare solo (+, -)
+
*Logica booleana e circuiti [http://homes.dsi.unimi.it/~malchiod/LP/Lab01-AlgebraBooleana.pdf]
  
 +
===Lunedì 30.10.2006===
  
'''Mercoledì 04.10.2006'''
+
*Esempi di algoritmi [http://homes.dsi.unimi.it/~malchiod/LP/Lab03-Algoritmi.pdf]
  
- Differenze fra una calcolatrice ed un calcolatore
+
===Giovedì 02.11.2006===
  
- Software e Hardware: definizione e loro composizione
+
*Esempi di algoritmi
  
- La macchina di Von Neumann: CPU - RAM - Bus - Periferiche (loro definizione e unità di misura)
+
===Lunedì 06.11.2006===
  
- Ciclo macchina e linguaggio Assembly - istruzioni - esempi
+
*Primi programmi in java [http://homes.dsi.unimi.it/~malchiod/LP/Lab04-PrimiProgrammiJava.pdf]

Versione attuale delle 20:42, 6 nov 2006

News/Avvisi

[FAP]

  • Sono usciti gli esiti del primo compitino: [1]
  • 31/10 Primo compitino - Solo esercizi
  • 27/10 Attivata la lezione in preparazione al compitino (aula V1 14.30 - 16.30)


  • Per poter sostenere gli scritti regolari di gennaio 2007 è necessario aver consegnato il progetto SymbolicManipulator ed aver ottenuto per quest'ultimo una valutazione positiva


[Laboratorio]

  • Il corso avrà inizio lunedì 16.10.2006 e fino a giovedì 02.11.2006 seguirà il seguente calendario:
Lunedì 16/23/30 ottobre: 15.30 - 17.30 (aula 200)
Giovedì 19 ottobre e 2 novembre: 14.30 - 16.30 (aula 405)
Giovedì 26 ottobre: 15.30 - 17.30 (aula 202)

[Docenti]

  • FAP - Carlo Mereghetti
  • LABORATORIO - Dario Malchiodi

[Contatto docenti]

Carlo Mereghetti: [2]

Dario Malchiodi : [3]

[Orario Lezioni]

Fondamenti di Architetture e Programmazione

  • Martedì: 14.30 - 17.30 (aula V1 - Didatteca Venezian)
  • Mercoledì: 15.30 - 18.30 (aula G14 - Settore Didattico Golgi)
  • Venerdì: solo in caso di recupero lezioni, compitini... (previo avviso da parte del docente)

1/2 pause a discrezione del docente


Laboratorio di Programmazione

  • Lunedì: 15.30 - 17.30 (aula 309 - Settore Didattico Celoria)
  • Giovedì: 14.30 - 16.30 (aula 309 - Settore Didattico Celoria)

Le lezioni cominceranno puntuali e termineranno 15 minuti prima (17.15 e 16.15)

[Orario ricevimento]

  • Carlo Mereghetti: Giovedì 14.30 - 16.30 (stanza S241)
  • Dario Malchiodi: Venerdì 13.30 - 15.30 (stanza S238)

[Pagina web del corso]

  • Fondamenti di Architetture e Programmazione: [4]
  • Laboratorio di Programmazione: [5]

[Organizzazione del corso]

FAP

I parte: architetture

  • Rappresentazione (digitale) dell'informazione
  • Algebra di Boole
  • Macchina di Von Neumann

II parte: programmazione

  • Java (programmazione ad oggetti)


Laboratorio

  • Windows (non verrà trattato in quanto argomento noto a tutti)
  • Linux
  • Esempi di algoritmi
  • Primi programmi in Java
  • Selezione/Iterazione
  • Dati/Espressioni
  • Array
  • Ereditarietà/Polimorfismo
  • File/Interfacce
  • Implementazione di classi I
  • Implementazione di classi II
  • Eccezione
  • Ricorsione (l'argomento verrà trattato solo se ce ne sarà il tempo)

[Testi Consigliati]

Fondamenti di Architetture e Programmazione:

  • Ceri, Mandrioli, Sbattella: Informatica, arte e mestiere (McGraw - Hill, 2004) [in particolare i capitoli 2 e 11]
  • Ferrari, Pighizzini: Dai fondamenti agli oggetti - corso di programmazione in java (Addison - Wesley, 2003)


Laboratorio di Programmazione:

(da inserire)

[Modalità Esami]

Fondamenti di Architetture e Programmazione:

  • Scritto (sostituibile da 3 compitini, se in ciascuno si è preso un voto maggiore o uguale a 18)
  • Progetto e sua discussione (dev'essere sviluppato entro 3 settimane dalla consegna della traccia. Può essere sviluppato singolarmente o in gruppi di al massimo 3 persone, ciascuna delle quali sosterrà poi la discussione)
  • Orale (facoltativo - Ad ogni modo, un suo eventuale esito negativo comprometterà la media generale)


Ipotetico calendario:

  • Compitini: ottobre/dicembre/gennaio
  • Scritto: febbraio/aprile/giugno/luglio/settembre/gennaio
  • Progetto: aprile/settembre/gennaio


Laboratorio di Programmazione:

Progetto e sua discussione (vedi modalità esami di FAP)


[DIARIO DEL CORSO - FAP]

Martedì 03.10.2006

  • Introduzione al corso
  • Definizione di informatica secondo l'A.C.M. (Association for Computing Machinery) e mezzi attraverso i quali viene trattata l'informazione
  • Algoritmi: definizione di algoritmo - l'algoritmo di Euclide - esempi
  • Linguaggio di programmazione (programma) - informazione, bit e byte (e relativi multipli)


Esercizi assegnati:

Determinare i seguenti algoritmi:

Input: x, y

  • Output: x + y (attenzione: l'utente è in grado di calcolare solo (+1, -1)
  • Output: x * y (attenzione: l'utente è in grado di calcolare solo (+, -)

Mercoledì 04.10.2006

  • Correzione degli esercizi
  • Differenze fra una calcolatrice ed un calcolatore
  • Software e Hardware: definizione e loro composizione
  • La macchina di Von Neumann: CPU - RAM - Bus - Periferiche (loro definizione, struttura e unità di misura)
  • Ciclo macchina (fetch/decode/execute) e linguaggio Assembly - istruzioni (LOAD/STORE/ADD/SUB/DIV/MULT/MOD/INCR/DECR)- esempi

Martedì 10.10.2006

  • Breve ripasso del ciclo macchina e del linguaggio Assembly
  • Istruzioni di salto condizionato/incondizionato (JZERO/JUMP) - esempi
(in particolare: riportare in Assembly l'algoritmo input: a, b - output: a+b (risultato in c) potendo utilizzare solo il comando INCR/DECR)
  • Architettura della CPU: CU (Control Unit) - ALU - PC (Program Counter) - CLOCK - Registri
  • Digitalizzazione delle informazioni: immagini - audio - testi
  • Digitalizzazione dei numeri: sistema decimale e sistema in base b - esempi da base decimale a base b e viceversa
(in particolare: base 8 [ottale] e base 16 [esadecimale - Hex])


Esercizi assegnati:

Convertire in Assembly i seguenti algoritmi:

input: a, b

  • output: a*b (risultato in c) potendo calcolare solo + e -
  • output: a^b (risultato in c)
  • output: MCD(a, b) - riportare l'algoritmo di Euclide in Assembly

input: a

  • output: 1+2+3+...+a (sommatoria)

Mercoledì 11.10.2006

  • Correzione degli esercizi
  • Breve ripasso del sistema decimale/ottale/esadecimale/in base b
  • Conversione dal sistema decimale/ottale/esadecimale al sistema binario e viceversa - esempi
  • Esempi del più piccolo/grande numero rappresentabile in modulo e segno in un'architettura a n bit
  • Operazioni nel sistema binario: somma (e caso particolare di overflow) e sottrazione
  • Modo di rappresentazione in modulo e segno

Martedì 17.10.2006

  • Breve ripasso degli ultimi argomenti svolti
  • I problemi della rappresentazione in modulo e segno
  • Rappresentazione in complemento a due (e scorciatoia) - esempi
  • Esempi del più piccolo/grande numero rappresentabile in complemento a due in un'architettura a n bit
  • La sottrazione nel sistema binario con rappresentazione in complemento a due
  • Rappresentazione dei numeri reali in un calcolatore: in virgola fissa/in virgola mobile
  • Rappresentazione dei caratteri alfanumerici, d'interpunzione e di controllo: codifica ASCII/UNICODE

Mercoledì 18.10.2006

  • Circuiti logici
  • Algebra di Boole: AND/OR/NOT/XOR/NAND/NOR/Implicazione/Doppia Implicazione - tabelle di verità
  • Espressioni booleane - esempi e loro rappresentazione grafica
  • Precedenze nell'algebra booleana
  • Equivalenze logiche: elenco - esempi

Esercizi assegnati:

  • Rappresentare utilizzando solo porte NAND, l'equivalenza: (x ^ y) v (¬x ^ y)

Dimostrare le seguenti equivalenze:

  • (¬(x ^ ¬y) v (x ^ ¬y)) ^ y = y
  • x v y) ^ x ^ ¬y = 0

Martedì 24.10.2006

  • Correzione esercizi
  • Approfondimento su Contraddizione-Tautologia
  • Algebra booleana in un circuito ALU
  • Calcolo proposizionale

Mercoledì 25.10.2006

  • Svantaggi della programmazione in assembly
  • Linguaggi ad alto livello
  • Programmi e moduli
  • Errori comuni durante la programmazione
  • Java e applet Java

Venerdì 27.10.2006

  • Preparazione al compitino - Esercitazioni in classe

Martedì 31.10.2006

  • Compitino

[DIARIO DEL CORSO - LABORATORIO]

Lunedì 16.10.2006

  • Presentazione del corso [6]
  • Sistemi operativi I [7]

Giovedì 19.10.2006

  • Sistemi operativi II [8]

Lunedì 23.10.2006

  • Codifica delle informazioni [9]

Giovedì 26.10.2006

  • Logica booleana e circuiti [10]

Lunedì 30.10.2006

  • Esempi di algoritmi [11]

Giovedì 02.11.2006

  • Esempi di algoritmi

Lunedì 06.11.2006

  • Primi programmi in java [12]