









Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Sbobine della prima parte del corso "elementi di informatica". Dalla suddivisone tra software e hardware (in modo molto specifico) alla spiegazione delle istruzioni ripetitive da usare nella programmazione
Tipologia: Sbobinature
1 / 16
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!










Power point 1 informatica = scienza che si occupa di rappresentare, organizzare e gestire in modo automatico informazioni per risolvere i problemi calcolatore = macchina che memorizza, elabora e distribuisce l’informazione ( esegue istruzioni che gli vengono impartite ) algoritmo= sequenza di istruzioni ( procedura computazionale ) la cui applicazione permette di risolvere un problema Istanza = problema per il quale é stato specificato un input input = insieme di dati in ingresso per risolvere un problema output = insieme di dati in uscita per risolvere un problema programma = sequenza di istruzioni che posso essere eseguite da un calcolatore per risolvere un problema (traduzione di un algoritmo in linguaggio di programmazione molto più semplice) Power point 2 calcolatore = é un sistema ovvero un insieme di componenti che interagiscono fra loro per ottenere un certo comportamento ( costituito da atomi, transistor, chip e componenti funzionali ) hardware = struttura fisica del calcolatore, costituita da componenti elettroniche, elettriche, magnetiche, meccaniche e ottiche software = insieme di programmi che consentono all’ hardware di svolgere compiti utili componenti hardware = memoria, CPU ( processore) , interfacce I/O , bus (macchina di Von Neumann) funzionalità componenti: CPU elaborazione dei dati, controllo e coordinamento - 1 byte = 8 bit 1 KB = 1024 byte memoria centrale memorizzazione dei dati - 1 MB = 1024 KB 1 GB = 1024 MB interfacce scambio dati con l’utente - 1 TB = 1024 GB 1 PB = 1024 TB bus trasferimento dati memoria centrale = ( RAM ) é volatile, permette di memorizzare in maniera temporanea dati e programmi e la CPU può accedere in modo diretto. Svolge due tipi di operazioni ( scrittura = memorizzazione dati e progr. e lettura = accesso a dati e progr. ) È costituita da uno o più chip ciascuno dei quali possiede un num elevato di bit ( bit = elemento base della memoria, può rappresentare 2 valori 0 e 1 , è fisicamente realizzato da un dispositivo a due stati e sono raggruppati in celle ) cella = corrisponde ad una parola di memoria ( porzione di memoria utilizzata interamente ), ha una dimensione fissa ( 32 o 64 bit ), ha un valore ( sequenza di bit memorizzata ) e ha un indirizzo che permette al processore di riferirsi ad essa ( per effettuare lettura o scrittura) in lettura -> il CPU invia sul bus indirizzi l’indirizzo della cella da leggere e la memoria restituisce sul bus dati il valore della cella richiesta ( ciascuna operazione realizzata in tempo indipendente della cella ) in scrittura -> il CPU invia sul bus indirizzi l’indirizzo della cella su cui scrivere e sul bus dati il valore da scrivere. La memoria effettua tale scrittura ( ciascuna operazione realizzata in tempo indipendente della cella ) bus = componente del calcolatore che si occupa del trasferimento di dati ( bus dati ) , indirizzi ( bus indirizzi ) e info di controllo ( bus di controllo ). Tutti i componenti sono collegati al bus ( in maniera modulare ed espandibile ) processore = responsabile dell’elaborazione dati e e del coordinamento tra i componenti del calcolatore. É composta da 2 parti ovvero : unità aritmetico logica ( responsabile dell’esecuzione delle istruzioni ) e unità di controllo ( responsabile del coordinamento tra i componenti ). Nei computer attuali il processore è costituito da diversi core ( ciascuni dei quali può svolgere tutte le funzioni e può contenere diverse ALU ). Fisicamente é un singolo circuito integrato ( o chip ) consistente di transistor, diodi , condensatori e resistori legati tra loro dalla tecnologia VLSI e collocati su un semiconduttore ( silicio ). All’interno della CPU si trovano i registri ovvero piccole aree di memoria ( es. MAR , MDR , PC , IR , PSW… ). L’elaborazione dei dati avviene attraverso l’esecuzione di istruzioni corrispondenti a operazioni elementari sui dati ( ad es. operazioni aritmetiche, relazionali e logiche ). esecuzione di istruzioni = il proc. esegue le istruzioni di un programma ( memorizzato in memoria centrale ) attraverso l’esecuzione ordinata e ripetuta delle tre fasi : FETCH , DECODE E EXECUTE. fetch = ( prelievo ) viene letta la prossima istruzione da eseguire.
le istruzioni non vengono scritte direttamente in linguaggio macchina perché è poco potente ( servono tante frasi in un linguaggio macchina per eseguire una singola istruzione in un linguaggio di programmazione) , è difficile per noi, sono diversi ( in base al sistema operativo o processore del calcolatore) e infine sono di basso livello ( perché dipendono dalle caratteristiche fisiche del calcolatore). Linguaggio C = è matematico ( e spesso utilizza parole tipiche del linguaggio naturale ) quindi è più semplice ( scrivere un programma in linguaggio C è più semplice che scriverlo in linguaggio macchina ), portabile ( lo stesso programma C può essere eseguito su qualsiasi calcolatore indipendentemente dalle sue caratteristiche fisiche) e astratto ( un programmatore non deve conoscere le caratteristiche fisiche del calcolatore e non deve gestire la memoria ). Fase 2: compilazione : operazione che traduce un programma scritto in un linguaggio di programmazione ad alto livello ( C ) in un linguaggio di macchina. Consiste in 4 fasi :
Le variabili hanno un tipo che rappresenta l’insieme dei valori che la variabile può assumere e l’insieme di operazioni permesse su quei valori ( durante l’esecuzione di un programma la variabile può assumere valori diversi ma sempre dello stesso tipo ) Es. int ( numeri interi ) ; char ( insieme di caratteri ) e float ( insieme di reali in virgola mobile ) Dichiarazione = per poter essere utilizzate le variabili vanno dichiarate ( cioè dire " utilizzerò una variabile nome di tipo tipo") e solitamente si trovano all’inizio del corpo del programma. sintassi = tipo e nome ( es. int x ) semantica = serve a dire al calcolatore "utilizzerò una variabile nome di tipo tipo quindi prepara un contenitore ( area di memoria ) per valori nome di tipo tipo " ) La dichiarazione di una variabile comporta un’allocazione in memoria centrale di uno spazio , il tipo di variabile determina quanto spazio viene allocato in memoria per la variabile stessa. Assegnazione = dopo aver dichiarato una variabile si può memorizzare un valore al suo interno, infatti l’assegnazione di un valore alla variabile ha come effetto quello di memorizzarlo Es. sintassi -> nome = espressione X = 5 inizializzazione = prima assegnazione di un valore ad una variabile dichiarazione con inizializzazione = dichiara e inizializza un valore nella stessa operazione Es. sintassi -> tipo nome = espressione int x = 5 accesso = operazione che permette di accedere al valore memorizzato nella variabile. Se il nome della variabile compare a sinistra dell’uguale ( operatore di assegnazione ) la variabile viene utilizzata per memorizzare il contenuto, se invece comprare a destra la variabile viene usata per accedere al valore che memorizza SCANF = permette di leggere i valori immessi dall’utente, analogamente ad un’istruzione di assegnazione una lettura ha come effetto quello di memorizzare un valore in una variabile sintassi : scanf ( %formato , &variabile) %d = num interi %formato = indica il formato dei valori da leggere &variabile = indica l’indirizzo di memoria al quale si trova la variabile semantica = il programma è in attesa che un utente inserisca un valore nel formato indicato. Quando l’utente lo introduce, tale valore viene memorizzato nella variabile il cui indirizzo è &variabile Power point 5 tipo = è costituito da un insieme di valori detto dominio e un insieme di operazioni che possono essere applicate ad elementi di tale dominio. Es. tipo: int il suo dominio è l’insieme dei numeri interi dell’intervallo [ -2^31 , 2^31 -1 ] nell’intervallo ci sono 2^32 num distinti Regola : quanti num posso rappresentare con 1 bit? (2) e con 3 bit? (8) In generale con x bit posso rappresentare 2^x numeri interi e distinti operatori = le operazioni sono denotate da simboli detti operatori. + è l’operatore che rappresenta la somma tra elementi di tipo int ***** è l’operatore " " il prodotto " " letterali = elementi del linguaggio C che rappresentano specifici valori espressione = è una combinazione di letterali , variabili , operatori che fornisce un valore di un certo tipo ( è una porzione contigua di codice caratterizzata da un tipo ). Es. int x = 3*y oppure y,3 ; x ; 3*y sono espressioni
i caratteri numerici, alfabetici minuscoli e maiuscoli hanno codici in ordine crescente. L’aritmetica dei caratteri ha le stesse operazioni dell’aritmetica sui numeri interi. Power point 6 : tipo : float rappresentazione approssimata dei numeri reali ( a differenza degli interi, non è possibile rappresentare tutti i reali in un intervallo essendo alcuni troppo piccoli ). rappresentazione in virgola mobile = questa rappresentazione deriva dalla rappresentazione scientifica in cui un num è espresso come M = mantissa
possono comportare una perdita di precisione. ( es. float -> int ) conversione esplicita per operazione :
esistono due modi per rappresentare i numeri interi relativi : modulo e segno , complemento a due modulo e segno : la cifra più significativa rappresenta il segno le altre il modulo
lo scopo dell’ accumulatore è di memorizzare il valore da calcolare ma tale scopo viene realizzato solo dopo che sono stati usati tutti gli elementi della sequenza. Power point 12 : problemi di conteggio : problemi in cui bisogna contare il numero di elementi in un insieme di valori che soddisfano una determinata proprietà il suo algoritmo :
Power point 13: istruzione condizionale : if-else sintassi —>
un’istruzione do-while può essere espressa per mezzo di un’istruzione while e viceversa gli errori più comuni sono quelli di: