vuoi
o PayPal
tutte le volte che vuoi
Informatica
- Algoritmo: Sequenza di operazioni elementari definite in maniera così precisa da essere comprensibile ed eseguibile da una macchina.
- Programma: Algoritmo codificato nel linguaggio di un calcolatore.
- Linguaggio di programmazione: Linguaggio per la codifica degli algoritmi, consistente quindi nello scrivere su un foglio, sotto forma di programma, che possono essere compresi ed eseguiti dal calcolatore che li registra nella .
Macchina di Von Neumann: È costituita di 4 elementi hardware fondamentali:
- Unità di elaborazione o processore (CPU): È la parte del sistema che svolge le elaborazioni e coordina il trasferimento dei dati all'interno dell'intero sistema. È inoltre in grado di coordinare il funzionamento dei programmi; contiene dispositivi elettronici in grado di acquisire, interpretare ed eseguire le istruzioni del programma.
- Memoria centrale (RAM): Contiene le informazioni necessarie all'esecuzione di un programma cioè istruzioni e dati. Sfrutta la tecnologia a stato solido ha capacità limitata ed è volatile. L'accesso all'informazione è rapido.
-
Unità periferiche:
Permettono lo scambio delle informazioni fra elaboratore e il mondo esterno attraverso operazioni di ingresso ed uscita.
- Nella architettura di von Neumann, le periferiche includono anche le memorie di massa utilizzate per ampliare evitare quantità di dati a programmi ad informazione non viene persa quando il calcolatore viene spento, il ' accesso alla memoria è meno rapido.
-
Bus di sistema:
Collega gli elementi funzionali elencati in precedenza e consente così lo scambio di dati tra di essi.
- Nella macchina di von Neumann le fasi di elaborazione si succedono in modo sincrono rispetto alla scansione temporale imposta da un orologio (clock) di sistema.
- Sistema operativo: Principale programma del calcolatore che gestisce le varie risorse hardware e software, svolgendo funzioni differenti di lavoro della complessità del sistema di elaborazione sotto il suo controllo.
-
Ambiente di programmazione: Insieme di strumenti che facilitano la scrittura dei programmi e la verifica della
loro correttezza. Questi tutti comprendono:
- Editor: Serve per la costruzione di file che contengono testi, cioè sequenze di caratteri.
-
Compilatore: Opera la traduzione di un programma sorgente in un programma oggetto, scritta in un
linguaggio direttamente comprensibile all'elaboratore.
- Sorgente:: creato dall'utente ed è in formato non leggibile dalla macchina.
- Oggetto:: versione del primo contenuto nell'informazione tradotta non viene generata.
- Interprete: Valide interfase a due lati con lo sviluppo software ed esegue direttamente il codice sorgente senza prima tradurlo nel linguaggio macchina.
- Linker: Compone vari programmi oggetto in un unico programma eseguibile.
- Debugger: Serve per eliminare errori eventualmente presenti in un programma.
-
Codifica binaria:
- La più piccola quantità di informazione memorizzabile e elaborabile da un calcolatore è il bit corrisponde due cifre binarie e consente di distinguere due sole situazioni logiche: acceso o o 1.
- Per combinazione di più bit è possibile produrre quantità discrete di cifre. Per esempio, 1 bit 2 possibili combinazioni, 2 bit 4, 3 bit 8, 4 bit 16, 32 bit 128 bit.
- I trattini possono rappresentare numeri apprendendo i numeri interi . In particolare, con un numero di cifre si può rappresentare.
- Binure quanti interi o codificare n oggetti? Se 2n logN
Il sistema binario ha base r=2:
- ckck-1...c1c0, 1,0
- c4c3c2c1c0 = 1010102, 1112 = 1x22+1x21+1x20 = 1x4+1x2+1x1 = 710
- 3, 1110 = 1,12, 10, 112 e si ottiene nel seguente modo:
33:2 = 16 con resto 116:2 = 8 con resto 08:2 = 4 con resto 04:2 = 2 con resto 02:2 = 1 con resto 01:2 = 1 con resto 1
Considerando i resti della divisione dalla cifra meno significativa a quella più significativa.
- La rappresentazione in modulo e segno utilizza il primo bit come bit di segno (0 se positivo e 1 se negativo), con questo convenzione si possono esprimere n-1 bit per un valore compreso fra {-2n-1+(+2n-1-1)}. Perciò, mediante n bit, è possibile rappresentare numeri compresi tra -2n-1 e +2n-1.
Rappresentazione in complemento a due:
- 3=0112 —> 1012 —> 11012 con bit di segno
- 3,22|2: |3,8:2 = 3—5| —> 1012 con complemento a due2|1
m = 2n - m | convert
La rappresentazione in complemento a due di un numero negativo -N mediante n bit si ottiene sottraendo N al numero 2n
- Mediante la rappresentazione in complemento a due, l'inversione di segno di un numero negativo N si può ottenere partendo dal numero di n bit necessari, modificando ogni 1 in 0 e viceversa e sommando 1 al risultato.
- 2 + 5
+20|11———+71014 +2 —> 1102
2 + 5
5|1|2|2|2|10|20|10|1
1) 2 —> 1023) 210 = 01023) 5 = 1012
24 = 1010252 = 01012
+ 2+502 | 2
Se invertiamo i bit con gli 0 e viceversa si somma 1 per il meno:0 +1 + 1 + 01
1 —> 110 +10101 +10—> 101 | 9 | 1
SOLO!
- Se il segno risultante è meno, si invertano i bit (in qualsiasi esercizio).
- Si somma 1 al numero (salvo decimale).
- Eventuali overflow si ignorano.
• per accedere a singoli campi di una struttura si scrive l'identificatore della struttura, seguito da un punto e dall'identificatore del campo desiderato
• Non è possibile un confronto globale fra strutture mediante gli operatori di relazione
• La struttura definisce il dato ovvero come è fatto in memoria (strutturato o meno) sulla struttura possono essere associati identificatori (tipi definiti dall'utente), variabili (strutturate ecc.. )
Il Costrutto Switch
• L'istruzione switch si presta a indicare la scelta di istruzione fra altre sulla base del valore di un particolare variabile
• L’istruzione consiste in
- switch —> espressione fra parentesi tonde
- una sequenza di istruzioni fra case fra graffe:
- una sequenza di clausole case separate da due punti e conclusa da un eventuale punto e virgola.
- Al posto dell’istruzione case si può trovare default.
• La macchina valuta l’espressione dopo la parola switch se il suo valore appartiene a uno degli insiemi di costanti specifcatl in qualche clausole case la macchina esegue la sequenza di istruzioni ripetute dopo l'istruzione case e continua nelle clausole case successive. Per evitare questo fenomeno di caduta si usa un’istruzione break
• Se la valutazione dell'espressione determina un valore che non appartiene ad alcuno degli insieme di costanti specifcati, viene eseguita l'istruzione di default
Ciclo For
• La prima espressione esprime l'assegnamento di un valore iniziale alla variabile usata come variabile di conteggio; la seconda espressione (un'espressione booleana) esprime la condizione che determina l'esecuzione del corpo del ciclo; la terza incrementa variabile usata come variabile di conteggio; l'istruzione finale viene ripetuta 2 o più esecuzioni del ciclo
x = 5; int contatore; int memorizzatore[LunghezzaSequenza]; for (Contatore = 0; Contatore < LunghezzaSequenza; Contatore++) { scanf ("%d", &memorizzatore[Contatore]); }Ciclo Do While
• Il corpo del ciclo viene comunque eseguito almeno una volta e ripetuto fino a quando la condizione indicata dopo while diventa falsa
x = 5, do { scanf ("%d", &Dati); Testo Contatore Dato; Contatore = Contatore + 1; } while (Dato != % && Contatore < Lunghezza massima); { if (Contatore = Lunghezza massima && Dato != %) printf ("La sequenza è troppo lunga:"); }• Nel ciclo do-while, mettere \n nelle scanf (x, es. “scanf (" \n % d ", & char )”)
• Break causa la fuoriuscita dal corpo di un ciclo o da un’istruzione di switch
• Continue causa l'interruzione della corrente/iterazione del ciclo e del inizio dell’iterazione successiva di quest’ultimo.