Il 0% ha trovato utile questo documento (0 voti)
4 visualizzazioni6 pagine

Informatica

Il documento tratta il pensiero computazionale e la sua applicazione nella risoluzione automatica dei problemi, evidenziando l'importanza della storia dell'informatica e delle sue fondamenta matematiche. Viene descritta l'architettura del computer di Von Neumann e l'evoluzione tecnologica attraverso transistor, leggi di Moore e nuove architetture come il quantum computing. Infine, si analizzano i concetti di dati, informazione, codifica, algoritmi e strutture dati, sottolineando l'importanza della rappresentazione e gestione delle informazioni nel contesto digitale.

Caricato da

asia.dragani
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
4 visualizzazioni6 pagine

Informatica

Il documento tratta il pensiero computazionale e la sua applicazione nella risoluzione automatica dei problemi, evidenziando l'importanza della storia dell'informatica e delle sue fondamenta matematiche. Viene descritta l'architettura del computer di Von Neumann e l'evoluzione tecnologica attraverso transistor, leggi di Moore e nuove architetture come il quantum computing. Infine, si analizzano i concetti di dati, informazione, codifica, algoritmi e strutture dati, sottolineando l'importanza della rappresentazione e gestione delle informazioni nel contesto digitale.

Caricato da

asia.dragani
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato DOCX, PDF, TXT o leggi online su Scribd

Pensiero computazionale: problema reso in modello matematico, poi soluzione automatica.

→ Pensiero
computazionale serve per astrarre problema e inserita in linguaggio computazionale per essere risolva da
macchina.

Informatico teorico: studia branche dell’informatica


Informatica pratica: //.

STORIA DELL’INFORMATICA:
nasce prima dei computer perché nasce come branca della matematica basata sul calcolo. (trasformare input
in output).

Von Neumann 1946: disegna l’architettura del computer (fino ad oggi):


- Almeno un processore → cuore
- Unità di controllo → fa dialogare il processore con le periferiche
- Memoria esterna (per dialogare con l’esterno)
- Memoria interna (RAM)
- Dispositivi di input e output

Transistor 1947: dispositivo microscopico che funge da interruttore → consente di costruire CPU, memorie,
ecc, facendo passare corrente o meno.
→ miniaturizzazione del computer, aumentando la potenza (aumentano i transistor nello stesso spazio). Ma
evoluzione non lineare, secondo legge di Moore: ogni due anni viene raddoppiata la potenza di calcolo dei
processori e la memoria.
Ma si può raggiungere il limite (transistor della grandezza di un atomo) → nuove strade:
- Architetture parallele: più computer
- Cloud computing (collaborazioni tra memorie)
- quantum computing (non utilizza più linguaggio binario, ma qbit → a parità di spazio eleabora più
informazioni).

Cos’è l’informazione
Algoritmi trasformano input in output tramite operazione → per creare informazione a partire dai dati.
I dati solamente non bastano (es: 10) → l’insieme dei dati caratterizza l’informazione per essere comunicata
→ attraverso la comprensione si da contesto → attraverso la conoscenza si comprendono i modelli.

IL DATO E L’ INFORMAZIONE
È descrizione elementare di una cosa
Informazione = insieme di dati → L’informazione associa significato ai dati.
La rappresentazione dei dati può variare per una stessa informazione.

L’immagazzinamento dei dati avviene attraverso un supporto fisico (es: carta o aria). Il supporto sul quale
viene trasmesso o memorizzato il dato non coincide col dato stesso.
Alcuni supporti sono utili alla trasmissione ma non alla memorizzato e viceversa.

I supporti digitali necessitano solo di due simboli → informazione binaria. → Supporti adatti a
memorizzazione di dati in digitale sono quelli che consentono l’informazione binaria: es. elementi
magnetici, compact disk (attraverso presenza di un solco o meno), lampadina.

LA CODIFICA
Permette di rappresentare dato attraverso un certo codice, per essere scritta su supporto fisico ed essere
memorizzato o trasferito.
La decodifica fa l’opposto: estrae i dati dalla codifica.

IL BIT
Elemento binario che assume due stati.
Codifica un valore logico. Più combinazioni di bit si ha più il linguaggio è complesso.
Nell’informazione digitale il bit consente ai circuiti elettronici di funzionare: la corrente passa o non passa
(due stati).

La codifica binaria consiste in due valori (0 e 1), ma se il numero di oggetti da rappresentare è più complessa
serve una combinazione di questi.
- 1 bit: 0, 1 → codifica due oggetti
- 2 bit: 00, 01, 11, 10 → codifica 4 oggetti
→ per k bit si codificano 2k oggetti
→ per N oggetti servono log2N bit, approssimando sempre per eccesso.
Esercizio
Per 57 caratteri diversi servono log257 = 6 bit.
Per verificare: con 6 bit si memorizzano 26 caratteri, al massimo 64 caratteri (25 = 32, non bastano).

IL BYTE
Un byte sono 8 bit, può rappresentare 28 caratteri = 256 caratteri.

CONVERSIONE DA SISTEMA DECIMALE A SISTEMA BINARIO


Nel sistema decimale, 12 = 1 x 101 + 2 x 100 (perché consiste in 10 caratteri)
→ nel sistema binario ogni cifra è moltiplicata per la potenza di 2.
9 = 8 + 1 = 23 + 20 → 22 e 21 non compaiono → il numero è 1001
Si parte dalla potenza di due più grande che copre il numero (per 18 si sceglie
24 = 16) → si scende di tutte le potenze.
Quelle da prendere in considerazione si ottengono per differenza e si fa (18 –
16 = 4 → 4 = 22). Si scrivono tutte le potenze a scender e si fa corrispondere le
potenze presenti al valore 1 e quelle assenti allo 0.
 al contrario, si risale in questo modo.

Metodo alternativo:

Si divide per 2 il numero.


Se la divisione ha resto il valore è 1
Se la divisione non ha resto il valore è 0.
Infine si legge al contrario.

ADDIZIONE E SOTTRAZIONE IN BINARIO


NB: lo 0 ha valore nullo anche nelle somme in
binario.

OVERFLOW
Se il risultato delle operazioni è troppo grande per essere contenuto nel numero finito di bit disponibili dalle
rappresentazioni dei numeri, e il riporto esce fuori.

COME SI RAPPRESENTANO NUMERI NEGATIVI


Non esistono simboli specialicome + o – antecendenti al numero.
1. Si può decidere che dove bit più significativo = 0 è numero positivo, se = 1 è numero positivo
ES: +3 = 011 (11 = 3)
→ problemi:
- si riducono le cifre inscrivibili (si sacrifica un bit)
- esistono due rappresentazioni per lo zero (es: n = 4, 0000 = +0; 1000 = -0)
- le addizioni diventano difficili ↓

2. COMPLETAMENTO A DUE:
Complemento bit a bit = bit scritto all’inverso (la loro somma saranno tutti 1)
→ per il negativo di un numero: si aggiunge uno 0 come cifra più significativa; si fa complemento; infine si
aggiunge 1

→ comodo nelle operazioni:

DIMENSIONI

CAMPIONAMENTO E QUANTIZZAZIONE
Un segnale continuo, analogico, attraverso il campionamento, viene discretizzato in un segnale digitale.

→ la quantizzazione (discretizzazione) suddivide l’intervallo di possibili valori del segnale in n sottointervalli


uguali, poi codificati in binario. Ogni valore del segnale campionato viene approssimato al più vicino valore
discreto.
risoluzione: quantità di bit utilizzati per ampiezze, numero di campioni → più è alta più è fedele, tuttavia
impiegherebbe più segnali (dopo una soglia il cervello umano non distingue il segnale discreto da quello
digitale).
ALGORITMO
///
Struttura dati = metodo per organizzare i dati in memoria e accelerare operazioni (= indice di un libro). →
usate dagli algoritmi per essere più veloci.

Caratteristiche di un algoritmo:
- Input e output ben definiti
- Passi sempre descritti chiaramente, mai ambigui
- Finitezza (no cicli infiniti)
- Indipendenza dal linguaggio
→ importanti correttezza (del risultato) ed efficienza (dei termini e occupazione della memoria).

Flowchart

Flowchart (diagramma di flusso): descrive con i blocchi i passi


effettuati dall’algoritmo:
- cerchio = start o end
- parallelogramma = input o output
- rombo = crea flussi alternativi a seconda di condizioni,
scelte o cicli → il flowchart si dirama.
- rettangolo = elaborazione
CICLO
Quando c’è necessità di ripetere le istruzioni fino al verificarsi di
una condizione. Non ha bisogno di un blocco specifico, si
implementa con l’uso del blocco per la condizione rombo) tale che
se la condizione si avvera si ritorna ad eseguire l’operazione
dall’inizio.
La condizione potrebbe essere ripetere N volte l’operazione o
arrivare ad un valore.

Ciclo IF:

Ciclo WHILE:

Ciclo FOR:
Teorema di Bohm-Jacopini
Un qualsiasi algoritmo può essere espresso usando esclusivamente una combinazione delle strutture:
- Sequenza: un flowchart che non ha ripetizioni e condizioni
- Alternativa: il flowchart presenta una condizione ad alternativa
- Ripetizione: flowchart presenta una ripetizione.

Potrebbero piacerti anche