Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
vuoi
o PayPal
tutte le volte che vuoi
INFORMATICA
- Scienza della rappresentazione dell’elaborazione dell'informazione in maniera sistematica e rigorosa al fine di essere automatizzata.
- Scienza dell’informazione con un modello formale del mondo reale e composto solo di elementi astratti per individuare l’unica tecnica appropriata per risolverlo in maniera automatica.
I obiettivi dell'informatica è creare modelli astratti per i problemi del mondo reale che possono essere rappresentati nei calcolatori e risolti da questi come operatori con un sistema di calcolo all’interno della macchina.
Algoritmo
- Algoritmo di Euclide per il calcolo del massimo comune divisore, MCD:
- Prendere due numeri interi X, Y, con X > Y.
- Dividere X per Y, ottenere il resto R.
- Sostituire X con Y, Y con R.
- Ripetere fino a che il resto R è zero.
- Il MCD è l’ultimo Y non nullo.
Calcolare il MCD:
- Se MCD = 1, i due numeri sono primi tra loro.
- Se MCD != 1, i due numeri non sono primi tra loro.
Esletore
L'elemento che esegue l’algoritmo riceve dei comandi e manipola l’informazione in esso ottenuta. L'esecutore utilizza una memoria per mettere in relazione i dati in ingresso e uscita.
Modello di Von Neumann:
- CPU
- Memoria Centrale
- Unità di calcolo
- Periferia I/O (Input/Output)
Unità dei dati
BIT: più piccola unità di informazione memorizzabile. Assume solo due val.ori: 0 e 1. Si rappresenta con la
Cella di memoria: elemento stabile utilizzato per memorizzare un bit (attraverso un fenomeno fisico per esempio:
oppure
- Oper. di scrittura: si fissa il circuito con un valore che permarrà fino
- Oper. di lettura: si misura allo scopo di convertire il valore e copiarlo
Non tutte le celle supportano lettura e scrittura
- 1 bit → 2 stati: 0,1
- 2 bit → 4 stati: 00
- 3 bit → 8 stati:
- 000
- 001
- 010
- 011
- 100
- 101
- 110
- 111
Registro di memoria: insieme di N celle di memoria; nel loro insieme uno tra 2n stati permette l'operazione di scrittura e lettura interroga contemporaneamente tutte le celle del
Esprimere quanti e quale un tipi di dati che vogliamo rappresentare adottare uno specifico.
Ciascuna variabile
Codifica: mettere in corrispondenza biunivoca, valori del tipo di dato e gli stati dei singoli elementi
N elementi= n bit mottati
M= stati
n= log2 [n]
Ex codifica ASCII,
Numeriglie [00,255]
1 byte = 256 stati 00000001 00000001
Appross (piccolo/lontano)
Linguaggi di Programmazione
- Traduzione diretta: (cod op) (indirizzo)
- Interpreti: linguaggio HLL
- Compilatore: assemblatore architetture circuito
Esecuzione interna
- linguaggio interno macchina (tipo primitivo)
- istruzioni semplici
Linguaggi di Programmazione
- linguaggio di alto livello
- differenti tipi di istruzione
- struttura dati fondamentali
- utilizzo delle macchine
Principi fondamentali
- primi principi principali
- principi economici
- principi fondamentali versatilità interazione
Programmazione tra l'esempio macchina e il linguaggio umano naturale
Input e architettura del calcolatore
linguaggio valori composti e linguaggi procedura
linguaggio di programmazione frontale
Compilatore
Un programma scritto non in linguaggio oggetto e traduce
linguaggio scritto simbolico a linguaggio macchina a target
Complessita divisa in 2 parti:
- Analisi: programma sorgente primitiva linguaggio fonte con separazione in base ai diagrammi di flusso.
- Sintesi: compilato.
Analisi lessicale
analisi del testo
La compilazione divisa in due:
- Front end
- Analisi sintattica
Analisi Semantica
job funzione descrivere
rela di o per trasladamento
Selezione
... permette di eseguire una tra due o più alternative di istruzioni.
if (condizione) { istruzione1; } else { istruzione2; } if (a > 0) {... // con i}, cioè b=10; // di più istruzioni ... else {... // in questo a= a++; ... E1 1 <= x <= 1 < x < 0 int main() { float x, x_abs, ...; cin >> x; if (x > = 0) x_abs = x; else x_abs = -x; cout