Scaricare la presentazione
La presentazione è in caricamento. Aspetta per favore
1
Laboratorio di Informatica di Base
Riccardo Distasi Si ringrazia il dott. Ferdinando Cicalese per il materiale didattico.
2
Organizzazione del Corso
72 Ore: 36 ore di teoria, 36 ore di Laboratorio (L19) Orario: Lunedì (C31) Giovedì (C38) Venerdì (L19) Modalità d’Esame 2 Prove in itinere: Novembre [12—23] (Prova Scritta/Laboratorio) Gennaio/Febbraio [21—01] (Prova in laboratorio) Febbraio [02—28] Orale Prova Ordinaria Febbraio [02—28] (Prova Scritta/Laboratorio + Orale] Orario di Ricevimento: Lunedì (Studio A8)
3
Testi Consigliati Teoria Informatica Istituzioni S. Ceri D. Mandrioli
L. Sbattella Editore: McGraw-Hill
4
Testi Consigliati Laboratorio Concetti di Base/Gestione File
S. Rubini, M. De Marchi Ed. Apogeo Elaborazione Testi S. Rubini Strumenti di Presentazione
5
Argomenti del Corso Concetti di Base della Tecnologia dell’Informazione Uso del Computer e Gestione dei File Elaborazione Testi Strumenti di Presentazione Introduzione all’uso di Internet ECDL ---- European Computer Driving License
6
Che cos’è l’INFORMATICA?
1. La Scienza e la Tecnica dei computer Computer Science ?!? 2. Una delle applicazioni dei calcolatori Elaborazione Numerica, Gestionale, Grafica 3. La Scienza dell’Informazione Information Theory ?!? Giornalismo?
7
Che cos è l’INFORMATICA?
Numeriche Pubblica Amministrazione Medicina telecomunicazioni L’Informatica pervade la maggior parte delle attività umane ..essa nasce ben prima dell’invenzione del computer
8
Che cos è l’INFORMATICA?
L’Informatica è la Scienza della Rappresentazione e dell’Elaborazione dell’Informazione Secondo la ACM (Association for Computing Machinery)… L’Informatica è lo Studio sistematico degli algoritmi che descrivono e trasformano l’Informazione: la loro teoria, analisi, progetto, efficienza, realizzazione e applicazione.
9
Le Aree Disciplinari dell’INFORMATICA?
Algoritmi e Strutture Dati Linguaggi di Programmazione Architettura degli Elaboratori Sistemi Operativi Elaborazione di Immagini e Sistemi Multimediali
10
Definizione di Algoritmo
Informalmente: Un algoritmo è una sequenza di passi che portano alla realizzazione di un compito Un Algoritmo per fare il Caffè 1. Prendi la moka dalla credenza 2. Svita il serbatoio 3. Riempi il serbatoio di acqua 4. Riempi il filtro con il caffè 5. Riavvita la moka e mettila sul fornello acceso
11
Definizione di Algoritmo
Un algoritmo per la preparazione della Zuppa Inglese 1. Prepara 500 gr. di Crema Inglese 2. Prepara un disco alto 6 cm. di Pan di Spagna 3. Monta 500 gr. di Panna 4. Disponi la crema sul disco di Pan di Spagna Questo è un algoritmo utile solo ad un cuoco!! … … …
12
Definizione di Algoritmo
L’algoritmo deve terminare Un programma può andare in loop Definizione di Algoritmo Una definizione più precisa: Ogni istruzione deve essere sufficientemente elementare; eseguibile Un algoritmo è una sequenza finita di istruzioni che, quando eseguite, svolgono un ben determinato compito. Gli elementi fondamentali di ogni algoritmo sono: Le istruzioni devono essere chiare e comprensibili a chi dovrà eseguire l’algoritmo 1. Input 4. Finitezza della sequanza 2. Output 5. Efficacia 3. Istruzioni Definite
13
Il risultato è il numero di palline a sinistra sulla terza riga
Somma di due Numeri con un Pallottoliere L’Algoritmo della Somma 1. Sposta una pallina da sinistra a destra della prima riga e una da destra a sinistra nella terza riga 2. Ripeti 1. fino ad esaurire la prima riga 3. Sposta una pallina da sinistra a destra della seconda riga e una da destra a sinistra nella terza riga 4. Ripeti 3. fino ad esaurire la seconda riga. Il risultato è il numero di palline a sinistra sulla terza riga
14
Somma di due Numeri con un Pallottoliere
3. Sposta una pallina da sinistra a destra della seconda riga e una da destra a sinistra nella terza riga fino ad esaurire la seconda riga 2. Ripeti 1. fino ad esaurire la prima riga 1. Sposta una pallina da sinistra a destra della prima riga e una da destra a sinistra nella terza riga Somma di due Numeri con un Pallottoliere
15
Consultazione di una Carta Topografica
Berlino Praga Parigi Vienna Budapest Bordeaux Marsiglia Milano Roma Barcellona
16
Consultazione di una Carta Topografica
Berlino 1. Costruire tutte le sequenze di città tra Barcellona e Praga Praga 2. Per ogni sequenza si calcoli la somma delle distanze tra città adiacenti. Parigi Zurigo Vienna Budapest 3. Si scelga la sequenza la cui somma delle distanze sia minima Bordeaux Milano Marsiglia Roma Barcellona
17
1. Costruire tutte le sequenze di città tra Barcellona e Praga
Sequenze di Lunghezza 1 : {Barcellona} Berlino Sequenze di Lunghezza 2 : {Barc, Bord} {Barc, Mars} Sequenze di Lunghezza 2 : {Barc, Bord} {Barc, Mars} Sequenze di Lunghezza 2 : {Barc, Bord} {Barc, Mars} Praga Sequenze di Lunghezza 3 : Parigi {Barc, Mars,Pari} {Barc, Bord,Pari} {Barc, Bord,Pari} {Barc, Bord,Mars} {Barc, Bord,Mars} Zurigo Vienna Budapest {Barc, Mars,Zuri} Bordeaux {Barc, Mars,Bord} Milano Marsiglia Roma Barcellona
18
... Sottoproblema Induzione
1. Costruire tutte le sequenze di città tra Barcellona e Praga Sottoproblema Berlino Praga Sequenze di Lunghezza 1 Induzione Sequenze di Lunghezza 2 Parigi ... Zurigo Vienna Budapest Bordeaux Milano Marsiglia Sequenze di Lunghezza n Roma Barcellona
19
Linguaggi di Programmazione
(Linguaggi per la Codifica degli algoritmi) Linguaggio Macchina (fino agli anni ’50) Assembler FORTRAN e COBOL ALGOL 60 Pascal, C, Ada,… LISP e PROLOG Linguaggi a oggetti e Linguaggi Visuali
20
Architettura di un Sistema Informatico
Hardware: i componenti fisici del sistema informatico Microprogrammi (Firmware): software memorizzato nell’hardware dal costruttore stesso Software: i programmi eseguiti dal sistema informatico
21
Architettura di un Calcolatore
(Hardware - Architettura di Von Neumann) Unità di Elaborazione (CPU) Memoria Centrale (RAM e ROM) Memoria Secondaria o Memoria di Massa (DISCHI) Unità Periferiche (Video, Tastiera, etc.) Il Bus di Sistema CPU Memoria Periferiche BUS
22
Architettura di Von Neumann
Il Personal Computer Architettura di Von Neumann IL CASE CPU (Central Processing Unit) Unità Centrale di Elaborazione RAM (Random Access Memory) Memoria Centrale ROM (Read Only Memory) HD (Hard Didk) Memoria di Massa (Disco Rigido)
23
Altri Sistemi Informatici
Workstations, mini-computer, mainframe Reti di calcolatori Reti locali (LAN) Reti Geografiche
24
Un sistema Informatico Complesso
Rete Geografica Rete Locale
25
Il Software Software di Base (Sistema Operativo)
Software Applicativo (Office Automation) Software di Sviluppo (Ambiente di Programmazione)
26
Software di Base Il Sistema Operativo
Interpretare ed eseguire comandi elementari e tradurre i comandi degli applicativi in operazioni della macchina Organizzare la struttura della memoria di massa Ripartire le risorse del sistema tra gli utenti (Multiuser – Multitasking)
27
Ambiente di Programmazione
Traduce i programmi in codice oggetto, eseguibile dal calcolatore Per Scrivere fisicamente il programma Collega diversi moduli di un programma, e le cosiddette librerie, producendo il vero e proprio eseguibile Permette di interrompere l’esecuzione del programma dopo ogni istruzione per correggere eventuali errori (bug) Editor Compilatore Linker Debugger
28
Applicativi Sistemi di Videoscrittura Fogli Elettronici
Sistemi per la gestione di DataBase Ipertesti Browser
29
CODIFICA DELL’INFORMAZIONE
(Codifica Binaria) Bit 0/ (si/no) Byte (8 bit) Kilobyte 210 = 1024 byte Megabyte 220 ~ byte Gigabyte 230 ~ byte
30
Rappresentazione dei Naturali
La Notazione Posizionale (in base p) Np an an-1 an-2 … a1 a0 Np = an x pn + an-1 x pn-1 + … + a1 x p + a0 Esempio (base 10) 543 = 5 x x x 100 =
31
Rappresentazione dei Naturali
La Notazione Additiva (numeri romani) Np an an-1 an-2 … a1 a0 Np = an + an-1 + … + a1 + a0 I = 1, V = 5, X = 10, L = 50, C = 100, D = 500, M = 1000 Esempio DCCCII = D + C + C + C + I + I = = 532
32
Le Notazioni Usate in Informatica
Binaria (base 2) ai = 0,1 Ottale (base 8) ai = 0,1,2,3,4,5,6,7 Esadecimale (base 16) ai = 0,1,2,…,9,A,B,C,D,E,F Decimale Binaria Ottale Esadec. A C
33
(Da binario a decimale e viceversa)
Codifica e decodifica (Da binario a decimale e viceversa) N2 = N10 = 1 x x x x x x = = 42 N2 = 11011 N10 = 20 + 21 + 23 + 24 = = 27
34
(Da decimale a binario)
Codifica e decodifica (Da decimale a binario) N10 = N2 = ??? 51 2 1 25 2 12 1 2 6 2 3 2 1 2 1 N2 = 51 = 2x25+1 = 2x(2x12+1)+1 = 2x(2x(2x6+0)+1)+1 = = 2x(2x(2x(2x3+0)+0)+1)+1 = = 2x(2x(2x(2x(2x1+1)+0)+0)+1)+1 =
35
Da Binario a Ottale/Decimale
N16 = 4 D E Per trasformare un numero binario in ottale, operiamo la trasformazione considerando gruppi di 3 bit Per trasformare un numero binario in esadecimale, operiamo la trasformazione considerando gruppi di 4 bit
36
Rappresentazione degli Interi
Come possiamo rappresentare il segno di un numero? Con k bit si possono codificare tutti gli interi -2k-1+1 N 2k-1-1 Esistono due codifiche dello 0 0000… …0 Aggiungiamo un ulteriore bit che poniamo a 1 se il numero è negativo! Esempio N10 = N2 = 01110 N10 = N2 = 11110
37
Rappresentazione degli Interi
(Rappresentazione in complemento a 2) Supponiamo di avere a disposizione k bit La rappresentazione di –N si ottiene facendo la conversione in binario del numero 2k-N Con k bit si possono codificare tutti gli interi -2k-1 N 2k-1-1 0000…02 010 1 000…02 -2k10 Esempio (con 5 bit) N10 = N2 = 01110 N10 = k-14 =18 N2 = 10010
38
Aritmetica Binaria 1 Somma e differenza di due numeri di k bit
Overflow 1 Riporto:
39
Aritmetica Binaria +6 1 +4 +10 +7 1 -10 -3 -2 1 +13 +11 -12 1 -7 +11
Somma e differenza in complemento a 2 di due numeri di k bit +6 1 +4 +10 +7 1 -10 -3 Overflow Non è Overflow -2 1 +13 +11 -12 1 -7 +11
40
Operazioni Logiche OR 1 AND 1 NOT 1
41
Circuiti Logici (Semiaddizionatore) 1 x1 S x2 R 1
1 x1 AND OR S x2 NOT R AND NOT AND S = (x1 AND NOT(x2)) OR (x2 AND NOT(x1)) R = x1 AND x2
42
Codifica dei Caratteri
I caratteri di un testo sono codificati come sequenze di bit I codici storici sono ASCII 7 bit (American Standard Code for Inform. Interchange) EBCDIC 8 bit ISO (ISO-Latin 1) Oggi: UNICODE BCD 4 bit
Presentazioni simili
© 2024 SlidePlayer.it Inc.
All rights reserved.