


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
Una introduzione alla computer science, spiegando concetti come macchina programmabile, programmazione, algoritmi, informazione, memoria, processore e linguaggi di programmazione. Viene inoltre illustrato come calcolare il massimo comune divisore utilizzando l'algoritmo di euclide.
Tipologia: Appunti
1 / 4
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!



Computer = macchina programmabile elettronica al fine di svolgere diverse funzioni Programma = sequenza di istruzioni elementari che un computer è in grado di compiere ed eseguire Programmazione = attività che consiste nell’organizzare istruzioni elementari, comprendibili all’esecutore, in strutture complesse (PROGRAMMI) al fine di svolgere determinati compiti. Individuazione di un procedimento risolutivo di un problema (algoritmo) e la sua codifica in un insieme di istruzioni (programma) destinate a un esecutore. Informatica = disciplina che si occupa dell’ informazione e del suo trattamento in maniera automatica - > due elementi fondamentali:
Algoritmo = risoluzione di un problema, possiede diversi linguaggi a seconda del destinatore a cui è affidato. L'algoritmo viene espresso tramite il programma che l’esecutore è in grado di compiere senza bisogno di altre spiegazioni. Algoritmo = concetto astratto, programma = concetto concreto. La scrittura del programma costituisce la fase in cui viene individuato l’algoritmo risolutivo di un problema. L'algoritmo si utilizzano in blocchi di base (=istruzioni primitive che l’esecutore comprende ed è in grado di compiere) e alle regole di combinazione (combina diverse istruzioni primitive). BLOCCHI DI BASE + ISTRUZIONI PRIMITIVE = LINGUAGGI DI PROGRAMMAZIONE. Ogni istruzione primitiva possiede una sintassi (modo in cui viene espressa) e una semantica (significato dell’istruzione stessa).
Le informazioni sono le entità su cui opera il computer. Viene misurata tramite il bit (da bi nary dig it ) che vengono calcolati in base alle risposte alle domande binarie (domanda che permette “si” o “no”). Con due bit è possibile rappresentare quattro valori differenti. Con n bit è possibile rappresentare 2^ n. Una sequenza di 8 bit è definita byte. Pertanto un byte può assumere 256 valori differenti (2^8). I prefissi K (Kilo), M (Mega), G (Giga) e T (Tera), indicano multipli di byte: 2^10 (più di mille), 2^20 (un milione), 2^ (miliardi), 2^40 (mille miliardi).
Il “cuore” di un elaboratore è costituito da 2 componenti:
La programmazione in linguaggio macchina presenta degli svantaggi: È necessario conoscere i dettagli dell’architettura del processore utilizzato e il relativo linguaggio. Ogni processore ha un proprio linguaggio macchina, non è possibile trasferire i programmi da una macchina all’altra. Il programmatore deve conoscere in dettaglio tutte le caratteristiche della macchina che utilizza. Il programmatore si specializza nell’uso di trucchi legati alle caratteristiche specifiche della macchina. Il programma è difficile da comprendere la struttura e individuare eventuali errori. È necessario riscrivere completamente i programmi quando vengono trasferiti su una macchina differente. Per svincolare la programmazione sono stati introdotti dei linguaggi ad alto livello comprensibili da tutte le macchine “astratte” in grado di effettuare operazioni di alto livello rispetto alle operazioni elementari. Per essere utilizzato su una macchina reale è necessario tradurlo nel linguaggio della macchina stessa, per poter effettuare questa operazione entrano in gioco i compilatori. Diversi dai compilatori sono gli interpreti che sono un programma che simula direttamente una macchina astratta. A differenza del compilatore, l’interprete non traduce ma legge ed effettua le operazioni corrispondente all’istruzione letta. L'esistenza degli assemblatori permette di tradurre in linguaggio macchina i programmi scritti nei codici mnemonici corrispondenti alle istruzioni macchina, cioè scritti in un linguaggio assembler.
Per preparare i programmi si usano vari strumenti automatici: ➢ EDITOR , un programma che permette di scrivere testi chiamato programma sorgente o codice sorgente. ➢ Il programma può essere quindi dato in ingresso al compilatore che lo traduce nel codice oggetto, scritto in linguaggio macchina. Il linguaggio sorgente può essere suddiviso in più file.
Blocco FINESE ITERAZIONE - > permette di ripetere l’esecuzione di una o più istruzioni in base al valore di una condizione. Lo schema dell’iterazione è questo: ESEGUI Blocco 1 QUANDO condizione Prima di tutto viene eseguito il blocco di istruzioni. Quindi si valuta la condizione, se vera si ripete nuovamente il blocco e valutando ancora la condizione, se falsa si prosegue con l’istruzione scritta successivamente. Notiamo che:
Un programma Java è costituito da classi (= oggetti che sono in grado di svolgere un determinato insieme di compiti che dipendono dalla classe a cui appartengono, una classe è costituita da oggetti ossia entità ossia istanze della classe , i quali compiono comportamenti che vengono definiti come metodi). La prima stringa del programma è l’ intestazione della classe (specifica il nome della classe). La riga termina con una parantesi graffa aperta, che è chiusa nell’ultima riga del programma. Le due parentesi graffe contengono la definizione della classe. Questa classe contiene specificatamente un metodo di nome main. Dopo il nome del metodo vengono indicati tra parentesi tonde, i parametri del metodo. Ogni istruzione è terminata dal carattere punto e virgola. L'unica istruzione di questo programma è: System.out.println(“Ti auguro una buona giornata!”); Questa istruzione è l’invocazione di un metodo println dell’oggetto System.out. // METODO INIZIO Questo è un commento cioè vale come codice. BuonInizio.Java - > creo la classe chiamata “Buon Inizio” Public static void main (String [] argas { - > creo una funzione chiamata main System.out.println (“Ti auguro una buona giornata”) - > serve per stampare sullo schermo quello che c’è scritto tra parentesi. Commentato [MS1]: Completa: argas Commentato [MS2]: Completa: argas