Tecnologie multimediali
Informazione digitale
Digitale: deriva dall'inglese digit che vuol dire cifra o numero. L'informazione in formato digitale è quindi un'informazione in formato numerico. Informazioni: più numerose sono le alternative a disposizione, maggiore sarà il contenuto informativo della nostra scelta.
L'informazione digitale viene rappresentata attraverso dei dati binari facilmente rappresentabili all'interno di un computer. Informazione rappresentata in forma numerica si basa sulla codifica binaria e dunque attraverso un bit.
Bit (numero binario): è la quantità di informazione fornita dalla scelta fra due alternative diverse, considerate come egualmente probabili. Byte: è l'unità di misura dell'informazione, indica la quantità di informazione corrispondente alla scelta fra 256 alternative diverse. Un byte è composto da 8 bit (una parola lunga 8 bit è chiamata byte).
Qualsiasi numero anche decimale, può essere trasformato in un numero binario; allo stesso modo anche l'alfabeto, che non è altro che una successione di caratteri, può essere trasformato in numeri binari attraverso una tabella (ASCII). La tabella di caratteri attualmente più usata è denominata ISO Latin 1, che distingue 256 caratteri (il termine ISO indica l'approvazione da parte dell'International Organization for Standardization).
Digitalizzazione immagini
Inizialmente viene sovrapposta all'immagine analogica una griglia fittissima di minuscole celle. Ogni cella sarà considerata come un punto dell'immagine, come un pixel. Più fitta è la griglia, più piccole saranno le celle, e migliore sarà l'illusione di un'immagine continua. Per fare ciò serve una tavola di corrispondenza che faccia corrispondere ai numeri diversi colori o a sfumature diverse di colore. Più si useranno bit per costruire un'immagine più ci sarà scelta di diversi colori (ad esempio se utilizziamo per una cella 8 bit, e quindi un byte, potremmo codificare 256 colori diversi). Più saranno presenti bit per qualificare un'immagine più sarà per il computer faticoso elaborarle, per questo motivo i computer delle nuove generazioni dispongono di veri e propri sottoinsiemi interamente dedicati alla gestione della grafica, dotati di una memoria indipendente e man mano sempre più larga (in questo modo la rappresentazione delle immagini non sottrae risorse agli altri compiti nei quali il computer può essere impegnato).
Inoltre sono stati fatti molti progressi nelle tecnologie per il risparmio dei bit: tecniche di compressione che sfruttano algoritmi matematici per ridurre il numero di bit necessari alla rappresentazione delle immagini.
Digitalizzazione suono
Si basa su una segmentazione dell'onda sonora di partenza e la rappresentazione più comoda è attraverso una funzione. Questa funzione può essere segmentata in regioni abbastanza piccole da poter essere considerate come se si trattasse di singoli punti, ognuno di questi punti sarà identificato dai valori sugli assi del piano cartesiano e quindi si attua una codifica binaria. Il vantaggio della digitalizzazione dei suoni è che ogni nuova copia non implica una perdita di qualità come succedeva nell'analogico (disturbi e distorsioni).
Digitalizzazione filmati
Non è altro che digitalizzazione dei fotogrammi e della banda sonora. Il numero dei bit necessari aumenta per cinque fattori:
- Lunghezza filmato
- La risoluzione grafica
- Ampiezza della palette di colori utilizzata
- Numero di fotogrammi al secondo
- Qualità del suono
Teoria dell'informazione
L'idea alla base di questa disciplina è la seguente: il bit è una unità di misura della qualità di informazione ed è collegato la scelta tra alternative: più alternative abbiamo a disposizione, più informativa sarà la nostra scelta, e maggiore è il numero di bit necessario a esprimerla.
Si parla di rivoluzione digitale per due principali motivi:
- Il computer è uno strumento potente per lavorare sull'informazione digitale, conservandola ed elaborandola e trasmettendola a distanza attraverso le reti telematiche
- Grazie al digitale si ha la disponibilità di un unico linguaggio per rappresentare informazione di diversi tipi associata alla disponibilità di un unico strumento per gestire ed elaborare questa informazione integrazione fra codici diversi convergenza al digitale.
Il computer
Computer: è uno strumento per elaborare informazioni, partendo da un'informazione in ingresso (input) elaborata in base ad una serie di regole (programma), e restituisce l'informazione in uscita (output); l'informazione è in formato digitale.
Dispositivi input
- Tastiera: serve a immettere nel computer testo e numeri, ma anche a guidare lo svolgimento dei programmi.
- Mouse: usato quando si lavora all'interno di ambienti o sistemi operativi ad icone. Sostituito da trackball o trackpoint nei computer portatili (anche touchpad).
- Joystick: spostamento levetta corrisponde alla direzione di movimento nel gioco.
- Scanner: utilizzato per far acquisire al computer immagini e testi a stampa.
- Tavoletta grafica: riscrive al computer i movimenti di una penna che si muove sulla sua superficie, perfette di disegnare a mano libera al computer.
Dispositivi output
- Stampante: tre tipi ad aghi (scomparse), laser e a getto d'inchiostro (oggi plotter, stampanti grafiche a pennini per disegno architettonico).
- Monitor: basati sulla tecnologia dual scan o a matrice attiva.
Memorie di massa
Dispositivi di conservazione dati linguaggio digitale:
- Floppy disk: piccoli dischi di materiale magnetico inseriti all'interno di un rivestimento di plastica rigido. La capacità di immagazzinamento è aumentata molto ma comunque sono caduti in disuso.
- CD-ROM: l'informazione è conservata sfruttando un supporto ottico: minuscole tacche incise sulla superficie del disco da un raggio laser che vengono poi lette dal raggio laser del lettore. Esistono CD riscrivibili.
- DVD (Digital Versatile Disk): simili ai CD ma capaci di contenere quantità maggiori di dati.
- Dischi rigidi (hard disk): sono in genere fissi e inseriti all'interno della scatola del computer. Sono molto capienti.
Unità di elaborazione centrale (CPU)
Opera un'incessante lettura e trasformazione di 0 e 1, effettuata seguendo un insieme di regole. È composta da un microprocessore dove ci sono una serie di registri che possono assumere due stati (bistabili). Lavora per lo più trasferendo informazioni in formato binario dalla memoria ai registri, leggendo il valore che trova nei registri, se necessario modificandolo in base alle regole previste dal programma che sta eseguendo, e quindi trasferendo nuovamente nella memoria il valore eventualmente modificato.
Frequenza di clock: è la velocità del processore espressa in megahertz, maggiore è la frequenza di clock maggiore è il numero di istruzioni al secondo che il computer è in grado di eseguire. Potenza di un processore dipende anche dal numero e dal tipo di istruzioni che il processore è in grado di eseguire. (2 scuole: poche istruzioni ma velocemente (RISC), molte e complesse istruzioni più lentamente (CISC)). Raffreddamento per il surriscaldamento: effettuato da una ventola a motore posizionata sopra la CPU.
Componenti CPU
- Unità Aritmetico-Logica (ALU): compie le principali operazioni aritmetiche e logiche:
- Operazioni logiche: sono operazioni nelle quali i simboli 0 e 1 rappresentano rispettivamente "vero" e "falso". Ci sono vari tipi di operazioni logiche:
- AND ("e"): accetta come input due bit e restituisce come output solo un bit: il bit di output avrà valore 1 ("vero") solo se entrambi i bit di input avevano valore 1 ("vero"); in tutti gli altri casi avrà invece il valore 0 ("falso").
- OR ("o"): accetta come input 2 bit e ne restituisce uno: il bit di output ha valore 1 anche se è uno solo dei bit di input abbia valore 1.
- NOT: ha come input solo un bit: se il valore è 0 il valore dell'output sarà 1, e viceversa.
- Bus: sono necessari per lo scambio di dati e sono presenti alcuni all'interno alla CPU e altri fra la CPU e le altre componenti del computer.
- Bus CPU e computer: il bus dei dati, attraverso il quale arrivano i dati in entrata sui quali effettuare elaborazioni, ed escono quelli in uscita, i risultati delle elaborazioni fatte. Questo avviene perché la maggior parte della memoria di un computer è esterna alla CPU. I dati per poter essere continuamente ricevuti e inviati devono essere conservati nella memoria attraverso un meccanismo di indirizzi: ogni cella della memoria sarà identificata attraverso il proprio indirizzo, in modo che i dati contenuti possono essere recuperati e modificati in maniera diretta.
- Bus di controllo: serve allo scambio di dati di sincronizzazione, la CPU e le altre componenti del computer devono lavorare in maniera coordinata, per farlo devono scambiarsi informazioni sullo stato e sui tempi di esecuzione dei vari compiti. La frequenza del lavoro della CPU funziona come un orologio di sistema che segna il ritmo del lavoro svolto da tutta la macchina (l'unità di controllo genera segnali di controllo e sincronizzazione).
- Operazioni logiche: sono operazioni nelle quali i simboli 0 e 1 rappresentano rispettivamente "vero" e "falso". Ci sono vari tipi di operazioni logiche:
- Piastra madre: la CPU è di norma incastonata in una scheda (madre) che raccoglie le componenti fondamentali di ogni computer. In particolare la CPU non è saldata alla piastra madre ma viene inserita in un apposito slot (slot one) che permette all'occorrenza di sostituirla. Sopra questo slot ci sono porte di comunicazione verso l'esterno: attraverso di esse i dati possono raggiungere le periferiche, la porta USB è un'alternativa recente e la porta PS/2 è usata per il collegamento del mouse. Sotto lo slot del processore c'è il chip di controllo della AGP: è un canale dedicato a far circolare in maniera veloce unicamente i dati grafici. Accanto ad essa vi sono altri slot (ISA e PCI) che sono alloggiamenti dei quali possono essere inserite schede di espansione.
- Memoria: la memoria può essere di due tipi:
- Innestata sulla piastra madre:
- RAM (Random Access Memory): è una memoria volatile dove viene conservata la maggior parte dei dati sui quali stiamo lavorando. I dati vengono conservati sottoforma di potenziali elettrici, quindi se si spegne il computer vanno persi.
- ROM (Read Only Memory) o BIOS (Basic Input-Output System): è una memoria a sola lettura che serve per il funzionamento del computer stesso, senza di essa la macchina non potrebbe lavorare. Ha il compito di far circolare l'informazione all'interno del computer, ma non rende il computer capace di comunicare con l'utente. Non è neanche in grado di comunicare con periferiche e strumenti accessori che possono essere collegati al computer. Recentemente si usano più spesso moduli di memoria non volatile aggiornabili in caso di necessità (flash memory).
- Memoria cache (usata recentemente): memoria autonoma all'interno del microprocessore, più veloce della RAM e quindi capace di migliorare le prestazioni del sistema.
- Innestata sulla piastra madre:
La macchina di Turing
È una macchina astratta capace di lavorare in formato digitale sulla base di un programma composto da regole; è una costruzione concettuale. È in grado di calcolare il valore di qualsiasi funzione per la quale disponiamo di procedure effettive di computazione. Lavora solamente con i simboli ma questo non vuol dire che si debba limitare a fare operazioni numeriche. È composta da un nastro infinito diviso in singole celle, in ciascuna delle quali può essere scritto un simbolo (0 e 1), comprende poi una testina di lettura/scrittura che sia in grado di leggere il simbolo che si trova nella cella e scrivere su di essa. La testina in grado poi di scorrere sul nastro in entrambe le direzioni. La macchina potrà assumere una serie finita di stati distinti e con questi stati potremo specificare le istruzioni del programma da far eseguire alla macchina.
La macchina di von Neumann
Sviluppata negli anni 40 da John von Neumann, è in primo luogo una costruzione teorica che influenzò però direttamente la realizzazione di due tra i primi computer: l'ENIAC e l'EDVAC.
I programmi
Esistono diversi tipi di software (programmi) per il funzionamento del computer.
Sistema operativo (operating system)
Serve a far comunicare il computer nella lingua dell'utente. Ha poi il compito di integrare le poche conoscenze dell'architettura di sistema fornite dal BIOS con le informazioni dettagliate sul tipo di periferiche usate; mette poi a disposizione una serie di "strumenti base" utilizzati dai vari programmi che l'utente può eseguire. Ogni sistema operativo contiene il file system: sistema di gestione dei file. File: sono tutti i documenti conservati sul disco rigido di un computer, e sono anche i programmi utilizzati per produrre e lavorare sui documenti. Essi sono organizzati in cartelle e sottocartelle.
Tipi di sistemi operativi
- Sistemi operativi a caratteri: all'inizio la comunicazione avveniva attraverso un linguaggio artificiale molto povero, ma sufficiente a impartire istruzioni base al computer. Si basano quindi sull'idea che l'utente impartisca i comandi in forma scritta utilizzando la tastiera (MS-DOS, UNIX).
- Interfacce a icone (o grafiche): la comunicazione avviene attraverso una rappresentazione grafica degli oggetti con i quali operare (primo dalla Apple negli anni '70).
Il sistema operativo più diffuso è il Microsoft Windows che ha 10 tratti distintivi dal punto di vista dell'utente.
- Desktop spazio bidimensionale all'interno del quale sono presenti le icone.
- Icone: rappresentano dati e programmi.
- Puntatore del mouse
- Finestre: ogni finestra comprende:
- Tre pulsanti nell'angolo a destra
- Barra superiore
- Barra dei menu
- Barre dei pulsanti
- Porzione principale aperta sul documento
- Barre di scorrimento verticale e orizzontale
- Barra delle applicazioni
- Menu
- Pulsanti
- Pulsante d'avvio-Start
- Finestra esplora risorse
- Sistema d'aiuto-Help (F1)
Programmi applicativi
Sono programmi che affiancano il sistema operativo e corrispondono agli interessi e alle necessità dell'utente. Ci sono diversi tipi:
- Programmi di calcolo: sono di vario genere e sono utilizzati per il lavoro scientifico. Sono soprattutto fogli elettronici o spreadsheet: programmi utilizzati per creare tabelle dati, in genere numerici, effettuando automaticamente i relativi calcoli; i più recenti possono analizzare i dati e generare automaticamente grafici e diagrammi. Sono il Visicalc, Lotus 1-2-3, Microsoft Excel.
- Programmi di video scrittura (o word processor): permettono di scrivere, salvare, stampare, modificare un testo. Nuove funzioni: formattare il testo (corsivi, grassetti..), allineare il testo, cambiare il carattere (font) utilizzato e la sua dimensione, inserimento immagini, numerazione pagine… Dominio di Microsoft Word.
- Programmi per la creazione di database: nati per automatizzare la gestione di ogni genere di dati organizzati. Un database è costituito da una collezione di schede, o record, dalla struttura regolare e organizzata in campi (field). La ricerca avviene attraverso l'uso di uno specifico linguaggio di ricerca. Dominio di Microsoft Access.
- Giochi: arcade, simulazioni, strategia, adventure, edutainment.
- Programmi di grafica: disegno, fotoritocco, specializzati alcuni nella grafica vettoriale (rappresentazione attraverso figure geometriche elementari), grafica tridimensionale e programmi per il disegno tecnico (CAD)
- Programmi per gestione dell'audio e della musica: per registrazione e riproduzione dei suoni attraverso diversi formati audio (wave e MP3). Programmi di uso specialistico per la composizione della musica. Programmi di riconoscimento e sintesi vocale.
- Programmi per gestione video: riproduzione e montaggio video (Windows medio Player, Quicktime Player, Premiere).
- Programmi per strumenti per l'editoria multimediale: permettono di fondere testo, immagini, suoni, filmati, in prodotti come un CD-ROM interattivo.
- Programmi per la navigazione su World Wide Web: i browser.
Un programma è un insieme di istruzioni scritte in un linguaggio comprensibile per il computer, il modo in cui queste operazioni vengono eseguite dal computer dipende da come il computer stesso è fatto. Il programma dovrà quindi implementare un algoritmo utilizzando un linguaggio che il computer sia in grado di comprendere. Questo è il linguaggio macchina, molto complesso e faticoso, sono quindi stati creati:
- Linguaggi di basso livello: molto vicini al linguaggio macchina e all'architettura fisica del computer.
- Linguaggi di alto livello: più vicini al nostro modo di comprendere e impostare i problemi. Per questi tipi di programma è necessario impostare un programma-traduttore (realizzato in linguaggio macchina) in grado di convertire il nostro linguaggio in istruzioni di linguaggio macchina. Ci sono due tipi di programma-traduttore:
- Interprete: traduce in tempo reale una per una le singole istruzioni.
- Compilatore: traduce una volta per tutte il programma, restituendo in cambio il codice binario che può essere eseguito immediatamente dal computer.
Esistono anche:
- Linguaggi procedurali: fornisce una dopo l'altra, una serie di istruzioni al computer da eseguire una procedura. (COBOL, Pascal, FORTRAN, BASIC, C)
- Linguaggi dichiarativi: descrive, dichiara, quali sono i dati del problema, il computer analizzerà questi dati e ne dedurrà la risposta da dare. Più comodi per l'utente ma più faticosi per i...
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
Scarica il documento per vederlo tutto.
-
Appunti lezioni introduttive teoriche Laboratorio di Game Programming
-
Lezioni Tecnologie prof. Ranieri
-
Appunti lezioni 1/10
-
Fisica - riassunto completo lezioni