
































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
Gli appunti sono completi di tutto, già integrati con registrazioni e slide. Contengono tutte le esercitazioni con lo svolgimento e le soluzioni.
Tipologia: Appunti
1 / 40
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!

































15.03 (Lezione 1) CODIFICA BINARIA DELL’INFORMAZIONE Nel computer tutta l’informazione dev’essere salvata e codificata come sequenze di BIT (BINARY DIGIT) = è una cifra binaria che può assumere il valore di 0 o di 1. I SISTEMI DI NUMERAZIONE si chiamano SISTEMI POSIZIONALI = il valore del numero che si può comporre è calcolato usando le cifre del numero e in più ogni cifra ha un peso diverso a seconda della posizione in cui compare all’interno del numero → La NOTAZIONE POSIZIONALE (metodo di scrittura dei numeri) consente di scrivere un numero N di una certa base generica b come una sequenza di cifre. Es. 156 = 6 * 100 + 5 * 101 + 1 * 102 Esempi di sistema posizionale: SISTEMA DI NUMERAZIONE BINARIO = codice binario composto solo da 0 e 1 SISTEMA DI NUMERAZIONE DECIMALE: quello che siamo abituati a utilizzare normalmente
L’unità elementare d’informazione manipolata e memorizzata da un computer è detta BIT ( BINARY DIGIT ) e può assumere i valori 1 e 0. La dimensione dei file viene misurata in BYTE (B) = sequenza di 8 BIT (b) (es. 01001011). Se si hanno 8 bit significa che si possono rappresentare 28 numeri = 256 combinazioni MA cifre da 0 a 255 Quando si salva l’informazione nel computer (= codifico i numeri nel computer), vengono fatte delle approssimazioni di numeri periodici infiniti → si perdono delle proprietà che ci sono nella matematica pura → non posso salvare informazioni infinite; nel computer si hanno INFORMAZIONI FINITE E DISCRETE INFORMAZIONE DISCRETA = ho un numero di possibilità che posso utilizzare e basta VS. La realtà in cui viviamo è CONTINUA → posso continuare a dividere a metà e riuscirò sempre trovare un punto in mezzo IL CODICE ASCII ( American Standard Code for Information Interchange ): Utilizzato per il testo = tipo di dato più semplice dopo i numeri. = È lo standard internazionalmente adottato per la codifica dei caratteri → tabella che collega ogni carattere che scriviamo (lettere dell’alfabeto ma anche caratteri speciali) a dei numeri binari corrispondenti Tutti i caratteri hanno una corrispondenza diretta con una sequenza di 7 bit e sono così salvati nel computer. Es. La lettera A corrisponde al numero 65 (base decimale) e a 100 0001 (= sequenza di 7 bit; base binaria) CODIFICA DI IMMAGINI Ogni immagine è salvata nel computer come una MATRICE DI NUMERI (struttura con righe e colonne), dove ogni numero corrisponde ad una tonalità di colore. Immagine in scala di grigio = matrice in cui in ogni cella si trova un numero che corrisponde ad una determinata tonalità di grigio (dal bianco al nero con diverse gradazioni) Es. Uso sequenze di 8 bit (con base 2) → posso usare 28 numeri = da 0 a 255 (256 combinazioni) 00000000 → combinazione di 8 bit che corrisponde allo 0 (nero) 00000001 → combinazione di 8 bit che corrisponde a 1 (grigio) 11111111 → combinazione di 8 bit che corrisponde a 255 (bianco) = 8 volte l’1 = 2^7 +2^6 +2^5 +2^4 +2^3 +2^2 +2^1 +2^0 = 255 In ogni cella della matrice abbiamo l’informazione di ogni tonalità di colore come un BYTE = numero binario da 8 bit che corrisponde ad un numero decimale che va da 0 (più scuro) a 255 (più chiaro) Immagini in scala di grigio sono immagini ad un solo canale → ho solo l’ intensità come dimensione In ogni cella (intersezione tra riga e colonna) c’è un numero che mi dà l’intensità → non ho il colore ma solo un numero che dice quanto è intenso quel PIXEL, cioè quanto è scuro/chiaro La cella di ogni immagine è chiamata PIXEL ( Picture Element = reticolo di punti). La RISOLUZIONE si misura in PIXEL perché è come se stessi calcolando la dimensione della matrice → Una tipica risoluzione è 16/9 = proporzione tra il numero di colonne e di righe = rapporto tra lunghezza e larghezza Ad ogni pixel viene associato un certo numero di bit, che indica l'intensità luminosa di ciascun colore primario, ovvero della combinazione RGB (RedGreenBlue) Nelle immagini a colori vengono utilizzati 3 canali (RGB) → in ogni pixel ci sono 3 numeri che rappresentano la Tonalità del Red, la Tonalità del Green, la Tonalità del Blue → Ogni pixel ha un colore rappresentato da una somma di questi 3 canali, sufficienti a rappresentare qualsiasi colore.
Formati di Immagini Vettoriali SVG ( Scalable Vector Graphics ) Postscript PDF (sia vettoriale che matrice dei punti) RENDERING = quando costruisco forme geometriche al computer (usato per i film d’azione) → scrivere funzioni che costruiscono oggetti geometrici CODIFICA AUDIO Immagine = segnale b idimensionale perché si sviluppa su 2 dimensioni (altezza e larghezza) → la rappresento con una matrice Audio = segnale mono dimensionale perché si sviluppa su 1 dimensione sola, il tempo → lo rappresento su una linea retta → per ogni istante di tempo della canzone c’è un numero che rappresenta un suono. CARATTERISTICHE DELL’AUDIO (E DEI SEGNALI ANALOGICI) Il suono fa parte della realtà fisica e appartiene al continuo → Quando si parla di segnale analogico s’intende Continuità
Quando si hanno delle matrici che rappresentano immagini, si possono fare delle operazioni sulle immagini facendo delle operazioni sulle matrici → ambito di operazione: ALGEBRA LINEARE, che si occupa dei calcoli e delle operazioni tra matrici e vettori (≠ immagini vettoriali) Es. Inversione dei colori. Presupposto: le matrici devono avere la stessa dimensione. → Sottrarre alla matrice tutta bianca (255) i numeri dell’immagine originale. Oltre ai 3 canali RGB (RedGreenBlue), ne esiste un 4: Canale Alpha che dà il parametro della TRASPARENZA. ! La scala di grigi è un canale solo, perché ha un numero solo in ogni cella. La PROFONDITÀ DI COLORE di un canale si calcola con il numero di BIT che usa quel canale. Es. 255 ha una profondità di 8 BIT perché è 28. I 3 canali RGB sono stati scelti in virtù di una caratteristica fisiologica dell’occhio umano, sulla cui retina esistono 2 tipi di cellule:
La SEMANTICA si rappresenta attraverso TABELLE DI VERITÀ, dando significati alle formule. Il CONNETTIVO costruisce il valore di verità della formula composta (non di quella semplice perché è vera o falsa di per sé). https://web.stanford.edu/class/cs103/tools/truth-table-tool/ ( TRUTH TABLE GENERATOR) P = variabile proposizionale P ¬ P 1 0 0 1 P/Q P ∧ Q 0/0 0 0/1 0 1/0 0 1/1 1 P/Q P ∨ Q 0/0 0 0/1 1 1/0 1 1/1 1 P/Q P → Q 0/0 1 0/1 1 1/0 0 1/1 1 Nel 1° caso Q non è vera, MA l’implicazione è vera perché P è falsa. ! Se ho 2 variabili (P e Q, per esempio) le possibili combinazioni sono 4 perché ho 2n^ → 22 L’informatica teorica nasce agli inizi del ‘900 con Alan Turing: matematico, logico, crittografo e filosofo britannico, considerato uno dei padri dell'informatica. TAUTOLOGIE (deriva dalla semantica) = formule sempre vere → quando tutta la colonna è vera (quindi a 1). Se si parte dalla sintassi, regole di differenza possono calcolare nuove formule che sono la conseguenza delle formule già esistenti. Quando si riesce a costruire una formula sempre vera si ha un TEOREMA. →Se il sistema logico funziona, ogni teorema è una tautologia e viceversa. TAUTOLOGIA e TEOREMA = due modi diversi di calcolare qualcosa che è sempre vero. Una FORMULA è SODDISFACIBILE quando è vera in almeno una riga. Lo sforzo di rispondere a questo problema matematico ha portato alla nascita dell’informatica teorica = branca dell'informatica e della matematica che riguarda gli aspetti più astratti e matematici della computazione. Hilbert agli inizi ‘900 si chiese se, Data una formula logica nel linguaggio della logica del primordine, esiste un metodo automatico per decidere se questa formula è una tautologia (o formula valida)? Nella logica proposizionale (livello più basso della logica del primordine) la risposta è sì. Questa domanda fece sì che diversi matematici esplorassero meglio il concetto di computazione o calcolo automatico. Tra questi, Alan Turing nel 1936 riesce a dare una risposta pubblicando l’articolo " On Computable Numbers, with an Application to the Entscheidungsproblem ”, in cui definisce un modello di calcolo per rispondere alla domanda di Hilbert, facendo così nascere l’informatica teorica. La prima riposta che dà è negativa: esistono formule per cui non esiste una procedura automatica perché andrebbe avanti fino all’infinito. La risposta è negativa perché la logica del primordine è un linguaggio che ha delle particolarità pe le quali per alcune formule si andrebbe all’infinito, e cioè quando nel proprio linguaggio si ha la possibilità di scrivere una formula autoreferenziale (frase che fa riferimento a sé stessa. Es. “ Questa frase è falsa ” è vera o falsa?). Altri modelli di calcolo: Church, Kleene 22.03 (Lezione 3) TAUTOLOGIE Una TABELLA DI VERITÀ analizza tutti i possibili valori (di P, Q, R, per esempio) per verificare quando la formula composta complessa costruita sia vera. La TABELLA DI VERITÀ avrà 8 possibilità perché, avendo 3 variabili, sarà 2^3.
TAUTOLOGIA: A → A perché saranno O entrambe vere O entrambe false. Formula mai soddisfatta (= sempre falsa): A ∧ ¬A = non saranno mai vere entrambe La sua negazione sarà una TAUTOLOGIA: ¬(A ∧ ¬A) = perché sarà sempre vero che A∧¬A è falso Alan Turing
Immagine della Prima Pagina Web creata nel 1989 da Tim Berners-Lee, sul WWW. UN INTERNET CHE ATTRAVERSA IL MONDO = rete diffusa in tutto il mondo il cui obiettivo originale era quello di sviluppare un mezzo per connettere PC e reti tra di loro in modo tale che fossero protetti da disastri locali: se c’è un problema alla rete, la rete continua a funzionare. Oggi si è passati dagli obiettivi militari a un progetto di ricerca accademico a una tecnologia con importanti risvolti commerciali (es. e-commerce) → L’uso della rete ha forti implicazioni commerciali perché la pubblicità è ovunque. La struttura di internet è sviluppata su almeno 3 livelli per quanto riguarda gli Internet Service Provider (ISP - Fornitori di accesso alla rete) disposti in maniera gerarchica:
GENERATORE DI FACCE (algoritmo del 2018) https://this-person-does-not-exist.com/en = Visi creati da una rete neurale, a partire da un modello matematico a sua volta costruito grazie a moltissimi visi come input → riescono produrre immagini realistiche. È quasi impossibile riconoscere l'immagine di una persona falsa. L'IA è così sviluppata che il 90% dei falsi non viene riconosciuto da una persona comune e il 50% non viene riconosciuto da un fotografo esperto. Occasionalmente, una rete neurale commette degli errori, ed è per questo che appaiono degli ARTEFATTI: sui vestiti, sul background, sui capelli perché sui visi ci sono molti dati. L'unica cosa da fare è dare un'occhiata più da vicino: i sistemi di elaborazione visiva degli esseri umani sono molto più forti di quelli dei computer; quindi, è possibile riconoscere i falsi tramite il rilevamento. Questo strumento utilizza 2 reti neurali che competono tra di loro:
Viene preparato il messaggio e allegato l’indirizzo di destinazione
VIDEO: What is DNS (Domain Name System)? https://www.youtube.com/watch?v=nyH0nYhMW9M IBM = Azienda leader della produzione di computer fino agli anni ’90; oggi fornisce ancora servizi di consulenza e produce software ma non più computer.
dall’altro nodo della rete. Se dovessero essere diversi sicuramente c’è stato un problema e viene chiesto di rinviarli. Es. il protocollo http ha il suo Checksum. TTL ( Time to Leave ) = limite temporale dato ad un messaggio in rete; dopo quel limite, il messaggio viene cestinato. Se il messaggio ha superato il proprio TTL, significa che ci sono stati dei problemi quindi ha senso rinviarlo. Anche questo viene indicato all’interno dell’HEADER* e corrisponde a un campo di 8 bit. ToS ( Terms Of Service ): fa riferimento al livello 3 di Rete (CFR. Protocollo IP). È un campo in cui si possono specificare informazioni sul tipo di servizio richiesto dal livello 3: il servizio può essere più o meno affidabile. HL ( Header Length ) è la lunghezza dell’Header e dove iniziano i dati veri e propri. ISO / OSI