27
Syllabus versione 5.0 s ezione 1.0 rif 1.0.1 I SETTE STEP DELL’ECDL MODULO 1 I CONCETTI DI BASE DELL’ICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Embed Size (px)

Citation preview

Page 1: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

I SETTE STEP DELL’ECDL

MODULO 1

I CONCETTI DI BASE DELL’ICT

Page 2: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Dall’informazione al programma

L’informatica è una scienza interdisciplinare largamente impiegata in tutte le altre scienze

Informatica= informazione + automaticaSi occupa della creazione, gestione e

trasmissione delle informazioni con l’ausilio di un elaboratore (computer)

Page 3: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

L’Informazione è costituita da un insieme di dati elementari, di diversa natura e provenienza, associati alle regole e alle istruzioni che permettono al microprocessore di elaborarli

Il Programma è una sequenza logicamente ordinata di operazioni o di istruzioni, la cui esecuzione da parte di un computer produce la soluzione ad un problema dato e riconosciuto.

Page 4: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Gli algoritmiUn programma è la descrizione di un algoritmo che permette la risoluzione, in un numero finito di passi, di una determinata classe di problemi.

Si definisce Algoritmo una serie di azioni, applicate ad un insieme di dati iniziali, che messe in atto da un esecutore (processore) li trasformi in risultati finali, attraverso un numero finito di passi elementari non ambigui.

per cui

l’Algoritmo è la sequenza di azioni che l’esecutore deve compiere per raggiungere il risultato richiesto.

Page 5: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Un Algoritmo deve possedere alcune proprietà :

1. Essere composto da un numero finito di passaggi

2. Le istruzioni devono essere non ambigue, cioè l’algoritmo deve essere riproducibile, a parità di condizioni

3. Le istruzioni devono essere realizzabili e note all’esecutore

Page 6: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

La realizzabilità dipende da tre fattori:

1.Non deve essere eccessivamente complessa

2.L’insieme delle istruzioni deve essere limitato

3.L’esecutore deve comprendere la singola istruzione e procedere per passi discreti

È importante ricordare che non sempre i problemi sono risolubili usando gli algoritmi.

Page 7: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Gli Algoritmi si possono rappresentare come diagrammi di flusso, che ci permettono di descrivere il processo in tutte le sue parti.

Ogni fase e ogni condizione del processo sono rappresentate da simboli grafici, detti

“ blocchi elementari”

collegati tra loro da frecce che indicano la sequenza temporale nella quale avvengono.

Page 8: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Tipi di Blocchi Elementari

Inizio Fine

Lettura/Scrittura

Azione

Controllo Condizione

Vero

Falso

Page 9: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Rappresentazione dei dati

I sistemi di numerazione servono a rappresentare i numeri grazie ad un insieme finito di simboli elementari, detti cifre.

Un sistema numerico è definito da:•Un insieme finito di simboli, le cifre che rappresentano numeri interi

•Un insieme di regole che consentono di associare alla sequenza di cifre il valore del numero.

Page 10: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

I Sistemi Numerici sono:

Non posizionali, quando il valore intero associato a una cifra non dipende dalla sua posizione all’interno della sequenza che rappresenta il numero

Posizionali, se a ogni simbolo è associato un valore diverso, dipendente dalla posizione che la cifra ha nel numero.

Si parla di un Sistema Numerico a base fissa quando il valore che assume una cifra, detto anche peso, è sempre pari a una potenza di un numero intero B, maggiore o uguale a 2, detto base del sistema numerico.

Page 11: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Gli elaboratori elettronici, per le loro caratteristiche, non possono usare il sistema numerico decimale, perché essi sono realizzati secondo tecniche dell’elettronica digitale, cioè oggetti che assumono solo uno tra due stati stabili.

Gli elaboratori usano il sistema binario, basata su due sole cifre.

Il sistema binario è il più semplice sistema posizionale a base fissa. La base è 2, i simboli sono 0 e 1.

Nel sistema binario tutti i numeri sono espressi sulla base delle potenze del 2.

Page 12: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

CONVERSIONE TRA UN SISTEMA E L’ALTRO

Per convertire un numero decimale X in un numero binario dobbiamo eseguire una serie di divisioni ripetute: si divide il numero X per 2 e si ottiene un resto e un quoziente intero; a questo punto si divide il quoziente ottenuto nuovamente

per 2, e si prosegue fino ad ottenere un quoziente pari a 1.

Il numero binario risultante è dato dall’ultimo quoziente seguito dai resti ottenuti.

Page 13: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Le cifre del sistema binario sono dette anche bit, contrazione di binary digit, in italiano cifra binaria.

Viceversa per convertire un numero binario in decimale, dobbiamo moltiplicare ogni cifra, a partire da destra , per la potenza di 2 che corrisponde alla sua posizione e quindi sommare i risultati ottenuti.

Page 14: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

RAPPRESENTAZIONE DEI CARATTERI

E NOZIONE DI BIT E BYTE.

L’elaboratore, usando i bit, è in grado di esprimere qualunque cosa: parole, suoni, immagini, istruzioni di programmi e quant’altro.

Per rappresentare grandezze cosi diverse non possiamo usare i singoli bit, ma li dobbiamo unire in “pacchetti”.

Un pacchetto di otto bit ci mette a disposizione ben 256 possibilità. Il

pacchetto di otto bit prende il nome di byte ed è, in pratica, l’unità minima di memorizzazione dell’elaboratore.

È come avessimo a disposizione un alfabeto di 256 caratteri.

Page 15: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Nel 1961 un ingegnere dell’IBM. Bob Bemer, propose un sistema di codifica dei caratteri, assegnando ad ognuno di essi una sequenza di bit, cioè un byte.

Questa codifica, che prese il nome di ASCII (American Standard Code for Information Interchange, ovvero Codice Standard Americano per lo scambio di Informazioni) ed è quella attualmente più utilizzata negli elaboratori.

Page 16: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

RAPPRESENTAZIONE DI IMMAGINIUn elaboratore può gestire le immagini in due modi: possiamo avere immagini rasterizzate e immagini vettoriali.

Un’immagine rasterizzata , è descritta pixel per pixel (il pixel è l’nità grafica elementare). Il file che si ottiene, generalmente, ha dimensioni considerevoli. Questo tipo di immagine ha la possibilità di gestire 16 milioni di colori, ed è adatto alla riproduzione di fotografie ricche di particolari.

In un’immagine vettoriale gli elementi grafici sono descritti da formule matematiche . Essendo basata su equazioni matematiche e non sulla descrizione dello sfondo è scalabile, cioè è dimensionabile a piacere senza perdita della qualità. Essa è adatta realizzazione d’illustrazioni, di marchi.

Page 17: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Le immagini bitmap possono essere create da una videocamera e da una fotocamera digitale, ma anche da una fotografia o da una pagina di giornale, ma per essere comprese dall’elaboratore devono essere prima sottoposte ad un processo che si chiama digitalizzazione.

La digitalizzazione è un processo con il quale un’immagine, un suono, un documento, un filmato sono trasformati un formato digitale, ossia in una sequenza di byte interpretabile dal’elaboratore.

L’operazione deve essere compiuta con l’ausilio di particolari strumenti, quali schede di acquisizione, per i brani audio ed i filmati; scanner, per i testi e le immagini.

Page 18: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.2

Particolari software poi completano e perfezionano l’operazione.

Un esempio è dato dagli OCR,

sigla che sta per

Optical Character Recognition

(riconoscimento ottico dei caratteri),

che convertono un’immagine contenente testo in un testo modificabile con un normale programma di word processing.

Page 19: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

Il linguaggio macchina e i linguaggi simbolici

Un programmatore deve comunicare al computer le istruzioni che intende fargli svolgere, e per far ciò deve scrivere il codice sorgente nel linguaggio programmazione che la macchina è in grado di comprendere.

Esistono diversi tipi di linguaggi di programmazione e possiamo suddividerli in:•Linguaggio macchina•Linguaggi assemblativi•Linguaggi ad alto livello o procedurali.

Page 20: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

Il linguaggio macchina è costituito da un insieme limitato di semplici operazioni elementari scritte in codice binario per essere comprese ed eseguite dal microprocessore.

Queste operazioni sono dette

“istruzioni macchine”.

Ogni istruzione macchina è composta da due parti:

•Un codice operativo, che identifica ogni istruzione macchina

•Un campo operandi, che contiene il dato da elaborare.

Page 21: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

Nei primi computer, bisognava tradurre l’algoritmo direttamente nel codice binario, che quindi un programma appariva come una semplice sequenza di bit, incomprensibile.

Per superare questo problema furono sviluppati dei linguaggi detti assemblativi, nei quali i comandi assumono nomi che ricordano la loro funzione (Read, Write, etc..)

Il linguaggio macchina e i linguaggi assemblativi sono linguaggi orientati alla macchina e questa comporta degli svantaggi:1.Scarsa portabilità2.Scarsa o nulla leggibilità3.Tempi di realizzazione lunghi

Page 22: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

I linguaggi macchina ed assemblativi sono detti di basso livello e dipendono strettamente dalla tecnologia adottata.

Per superare questi problemi sono stati creati dei linguaggi di alto livello o procedurali

I loro vantaggi sono: •Poter realizzare programmi indipendenti dalla macchina che deve eseguirli•Avere una struttura molto vicina al linguaggio e alla logica umana.

Quasi tutti i linguaggi usati per la programmazione sono di tipo procedurale, ricordiamo C, Fortran, Perl, Pyton.

In essi il programmatore si concentra sulla risoluzione del problema e non sull’elaboratore, pertanto si parla di linguaggi orientati al problema.

Page 23: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

I linguaggi assemblativi e quelli ad alto livello devono essere “tradotti” per essere comprensibili all’elaboratore.

Usiamo, quindi, particolari tipi di software i compilatori che traducono il codice sorgente in un oggetto binario eseguibile.

In alternativa si possono usare gli interpreti, che traducono un’istruzione alla volta del codice sorgente e la mandano in esecuzione.

Page 24: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

Un linguaggio di programmazione è un linguaggio formale, cioè è costituito da un insieme di parole costruite usando un insieme finito di simboli, dotato di una sintassi.

Page 25: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.1

I CONNETTIVI LOGICI

Nei linguaggi di programmazione si fa uso dei connettivi logici, o operatori logici, AND, OR e NOT che sono utilizzati per legare due condizioni presenti nel programma.

Questo legame crea una terza proposizione autonoma che può avere solo due valori: VERO o FALSO

Page 26: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

DESCRIZIONE DI ALGORITMI

MEDIANTE UN PSEUDO LINGUAGGIO

La descrizione delle operazioni da compiere, effettuata con un pseudo linguaggio, costituisce un pseudo-codice, che può essere utilizzato per descrivere le operazioni che ci conducono alla risoluzione del problema.

Page 27: Syllabus versione 5.0 sezione 1.0 rif 1.0.1 I SETTE STEP DELLECDL MODULO 1 I CONCETTI DI BASE DELLICT

Syllabus versione 5.0 sezione 1.0 rif 1.0.3

Calcolare Perimetro ed Area di un rettangolo

Algoritmo

1. Inizio2. Attribuire un valore alla base3. Attribuire un valore all’altezza4. Perimetro=(2 x base)+(2 x

altezza)5. Area=base x altezza6. Attribuire alla variabile

perimetro il valore calcolato al punto 4

7. Attribuire alla variabile Area il valore calcolato al punto 5

8. fine

Algoritmo Rettangolo(espresso in pseudo linguaggio)

BEGIN (passo 1)INPUT base (passo 2)INPUT altezza (passo 3)Perimetro=(2 x base)+(2 x altezza) (passo 4)Area=base x altezza (passo5)OUTPUT perimetro (passo 6)OUTPUT Area (passo 7)

END