Scarica Riassunto esame informatica umanistica e più Dispense in PDF di Elementi di Informatica solo su Docsity!
INFORMATICA
Informatica è quella disciplina tecnico-scientifica che si occupa della progettazione e della costruzione di macchine in grado trattare in modo automatico l’informazione. Il calcolatore elettronico rappresenta ad oggi il sogno coltivato per secoli dall’uomo di disporre di elaboratori automatici per garantire dei benefici rispetto all’elaborazione condotta dall’uomo:
- Riduzione dei tempi di elaborazione
- Maggiore affidabilità
- Liberazione dell’uomo da incombenze noiose
- Più facile e diffuso impiego di elaborazioni Il termine calcolatore deriva dal fatto che l’informazione che per prima ha attirato l’attenzione dell’uomo verso la realizzazione di elaboratori è quella espressa in forma quantitativa in particolare numerica. Il termine “informazione” nell’ambito dell’informatica dev’essere messo in relazione con altri termini quali “dato” e “conoscenza”, questi 3 termini si collocano su 3 livelli di estrazione in ordine crescente.
- Dato→ insieme di simboli tacciati su un supporto fisico che rappresenta la proprietà di un oggetto nel mondo reale senza però contenere alcun riferimento alla proprietà stessa
- Conoscenza→ parliamo di tale quando si dispone di regole che permettono di trarre vantaggio da tale informazione
- Informazione→ l’approccio alla risoluzione dei problemi basato sull’informazione consente di compiere ragionamenti, e quindi di prendere decisioni sugli oggetti del mondo reale acquisendo solo un limitato numero di informazioni o nei casi in cui è impossibile intervenire direttamente sugli oggetti in questione LINGUAGGI FORMALI Per comunicare gli uomini hanno sviluppato i linguaggi naturali, caratteristica di tali linguaggi è l’ambiguità, cioè qualsiasi costrutto formulato in tali linguaggi è potenzialmente polisemico ovvero soggetto a una pluralità di sensi. Per comunicare con un calcolatore l’ambiguità dei linguaggi naturali rappresenta un problema perciò esistono i linguaggi formali che vengo sviluppati e impiegati in tutti quegli ambiti dove è importante evitare l’ambiguità (informatica, matematica). La definizione di linguaggio formale prevede:
- L’individuazione di alfabeto, un elenco finito di simboli
- La definizione di una grammatica formale Le semantiche formali consentono di attribuire un significato alle frasi in un linguaggio formale CODIFICA E RAPPRENSENTAZIONI DELL’INFORMAZIONE L’informazione può essere codificata con simboli e modalità diverse Consideriamo un alfabeto con solo i simboli 0 e 1, un bit (binary digit) è un simbolo scelto su tale alfabeto e nei calcolatori ogni informazione è rappresentata con l’impiego di sequenze di bit. Dispositivi bistabili→ dispositivi in grado di assumere 2 configurazioni alternative e di permanere stabilmente nella configurazione oro assegnata, quali:
- Presenza/assenza di un foro in una scheda
- Diversi stati di una sostanza magnetizzabile
- Presenza/assenza di carica elettrica di una sostanza
- Passaggio/non di corrente in un cavo conduttore
- Passaggio/non di luce in un cavo ottico Byte→8bit 1kb→2(10) bit 1gb→2(30) byte La memoria→ componente per memorizzare i dati nel tempo è costituita da una collezione di dispositivi bistabili, la sua capacità può essere misurata in bit, byte o multipli di essi. STRUMENTI PER L’ELABORAZIONE DELL’INFORMAZIONE Con “elaborazione dell’informazione” si indica qualsiasi attività condotta sull’informazione stessa, comprendendo almeno le seguenti:
- Creazione
- Modifica
- Confronto
- Conservazione
- Trasmissione a soggetti specifici o a soggetti non predeterminati Qualsiasi attività di trattamento dell’informazione è ricondotta a uno schema che prevede i passi seguenti:
- L’informazione viene codificata sotto forma di dai
- Il supporto viene sottoposto a una trasformazione fisica che genera nuovi dati
- I dati generati vengono decodificati e apportano nuova informazione Input→ informazione in ingresso all’elaborazione Output→ informazione in uscita Algoritmo→ strumento per descrivere la trasformazione fisica del supporto con la certezza che se i dati di partenza sono corretti, anche i dati generati rappresentano correttamente informazioni sul mondo reale Linguaggi di programmazione→ linguaggi formali progettati per descrivere algoritmi La formazione di un algoritmo è definita programma DISPOSITIVI AUTOMATICI PER L’ELABORAZIONE DELL’INFORMAZIONE Classificazione:
- Sistemi manuali→ forniscono codifica dei dati ma lasciano all’uomo l’esecuzione delle trasformazioni fisiche su di essi
- Sistemi semiautomatici rigidi→ operano singole trasformazioni fisiche sui dati ma con continue indicazioni dell’uomo che deve esercitare il controllo e l’indicazione della trasformazione
- Sistemi automatici flessibili→ dispongono di una memoria che contengono dati e le istruzioni, ovvero una codifica delle trasformazioni da operare
WILLIAM OUGHTRED realizzò il primo regolo calcolatore nel XVII, un potente strumento di calcolo che consente di calcolare moltiplicazioni, divisioni, elevamenti a potenza, logaritmi e funzioni trigonometriche. Dopo BLAISE PASCAL realizzò la Pascalina, una calcolatrice meccanica che eseguiva addizioni e sottrazioni avvalendosi di una serie di una serie di ruote dentate corrispondenti a unità, decine e centinaia Nello stesso periodo VON LEIBNIZ realizzò lo stepped reckoner, calcolatrice meccanica a manovella che eseguiva le 4 operazioni aritmetiche.
Software→ sono le istruzioni codificate all’interno della memoria per essere eseguite dall’hardware, è costituito da programmi che descrivono all’hardware gli algoritmi da seguire nelle sue elaborazioni Hardware→ sono tutte le parti del calcolatore (meccanica, elettrica) STRUTTURA DEL CALCOLATORE L’unità centrale di un PC è tipicamente costituita da una scatola metallica detta chassis o case all’interno della quale è presente un alimentatore. All’interno della chassis è ancorata una scheda madre, una piastra di plastica che funge da struttura portante per il calcolatore. Sullo zoccolo della scheda madre c’è il microprocessore mentre sugli altri slot specifici sono installate una o più schede di memoria centrale (RAM). Altri slot consentono l’installazione sulla SM delle schede di espansione, interfacce specializzate per il trasferimento di dati con i dispositivi periferici e di memoria di massa. CLASSIFICAZIONE CALCOLATORI Differenze tra vari calcolatori:
- Velocità
- Capacità di memoria
- Affidabilità (funzionare a lungo)
- Sicurezza (virus)
- Capacità di connettersi con altri calcolatori per condividere dati e risorse
- Modularità (sostituzione dei suoi componenti)
- Scalabilità (sostituzione dei suoi componenti con altri con caratteristiche migliorative)
- Semplicità di interazione da parte dell’utente
- Dotazione SW
- Prezzo Calcolatore mono-utente→ pc fatti e adattati per l’utilizzo del singolo utente Pacchettizzati→ la maggior parte degli utenti si avvalgono di programmi preconfezionati Laptop→ pc progettato per la mobilità (notebook, subnotebook (più piccolo), netbook, tablet PC) PDA→ pc che sta su una mano (handeld PC, palmtop, pocket PC, smartphone PC per uso domestico come console per videogiochi o mediacenter (riproduzione di film, fotografie, musica) Workstation→ pc ma con caratteristiche superiori (CAD) Esistono anche PC multi-utente con il videoterminale, minicomputer (fascia media per eleborazioni dipartimentali in imprese medie e grandi), mainframe (fascia alta impiegato per elaborazioni massive in imprese grandi), supercomputer (calcolatore con tecnologia innovative e con elevate prestazioni per la ricerca tecnico-scientifica) Calcolatori embeddes→ calcolatori usati nelle automobili, aerei, semafori, caldaie, mp3, catene di montaggio IL PROCESSORE Ha il compito di eseguire istruzioni codificate in binario all’interno della memoria centrale, andando così a modificare dati codificati anch’essi in binario all’interno della memoria centrale stessa Celle→ unità elementari di memorizzazione
Il processore tramite il bus scrive in una cella di memoria specificandone l’indirizzo; per lo svolgimento delle sue attività si avvale di alcuni registri (piccole unità di memorizzazione caratterizzate da una notevole velocità di lettura/scrittura) Dall’accensione allo spegnimento del calcolatore, il processore continua il suo ciclo di 4 attività: lettura della memoria, decodifica, esecuzione, scrittura. Nella fase finale il risultato dell’esecuzione viene trascritto in uno dei registri interni alla CPU o nella memoria centrale. Istruzioni di salto→ modificano il valore del program counter per consentire di modificare il flusso di esecuzione delle istruzioni e di realizzare quindi iterazioni o esecuzioni condizionate dal verificarsi di particolari condizioni. Clock→ dispositivo all’interno del calcolatore costituito da un oscillatore al quarzo che generando un impulso elettrico scandisce le operazioni all’interno di tutti i circuiti elettronici del calcolatore e li sincronizza. La frequenza di clock è misurata in hertz, kiloherts ect. E determina la velocità massima con cui la CPU è in grado di operare. LA MEMORIA CENTRALE La RAM è il dispositivo di memorizzazione con cui la CPU interagisce per leggere e scrivere istruzioni e dati. Consiste in un insieme di unità elementari di memorizzazione ciascuna delle quali costituita da alcuni dispositivi bistabili organizzati in gruppi di 8, può contenere un dato o un’istruzione ed è identificata da un indirizzo numerico. Si caratterizza per la sua volatilità: la sua capacità di memorizzazione richiede un continuo flusso di alimentazione elettrica per cui lo spegnimento del calcolatore determina la cancellazione di tutto il suo contenuto. Ogni dispositivo di memoria costituito da celle di memorizzazione può supportare uno dei seguenti tipi di accesso: sequenziale, diretto, misto e associativo RAM deriva dal fatto che la memoria centrale supporta l’acceso diretto, la capacità di RAM di un pc odierno è tra 4 e 32 GB inoltre ogni calcolatore dispone di una piccola memoria aggiuntiva ROM = memoria di sola lettura oppure di una EPROM = il cui contenuto può essere modificato dal calcolatore. MEMORIA DI MASSA Hanno come funzione principale quella di garantire la persistenza dei dati; rispetto alla memoria centrale è in grado di offrire una maggiore capacità e un minor costo di memorizzazione a fronte però di tempi di accesso più lunghi. Alcune memorie di massa si basano su supporti rimovibili per la cui lettura e scrittura il calcolatore deve essere dotato di un drive che può essere già nel pc o esterno (USB). A seconda della tecnologia impiegata, le memorie di massa possono essere classificate in dispositivi magnetici, dispositivi ottici e memorie flash. I DISCHI E I NASTRI MAGNETICI I materiali ferromagnetici, quando sono esposti a un campo magnetico esterno assumono lo stato di magnetizzazione e ricordano tale esperienza ovvero permangono in tale stato anche dopo la scomparsa del campo. I materiali magnetici sono memorie di massa il cui supporto di memorizzazione è costituito da una superficie ricoperta da uno strato di materiale ferromagnetico.
Si realizza tramite un’apposita interfaccia collegata da una parte al bus e dall’altra al dispositivo La comunicazione tra l’interfaccia e il dispositivo può essere di 2 tipi:
- Seriale→ unico canale che consente la trasmissione di un bit alla volta
- Parallela→ più canali che permettono la trasmissione simultanea di gruppi di bit Connessioni più comuni: parallel ATA, serial ATA, SCSI, serial attached SCSI, connettore PS/2 / VGA / minijack / seriale, porta parallela, connettore RJ11 / RJ45 / USB / firewire, interfaccia IrDA e bluetooth LA TASTIERA La tastiera è il dispositivo di input più comune, con una struttura simile a quella adottata perle macchine per scrivere, essa rende disponibile un insieme di tasti identificati da simboli. Tasti modificatori→ alcuni tasti non producono direttamente alcun input ma premuti in combinazione con altri ne modificano l’effetto Tasti funzione→ consentono l’invio rapido di comandi ai software applicativi (F1-F2) Tasti freccia→ hanno funzioni dell’editing del testo (page up/down) IL VIDEO Il video detto schermo, monitor o display è il dispositivo di output più comune, un’apparecchiatura elettronica in grado di visualizzare immagini, testo e filmati. Schermo→ è costituito da una matrice di piccolissimi rettangoli detti pixel, il sistema è in grado di controllare singolarmente ciascuno di essi attribuendogli un colore e che visti tutti vicini dall’uomo generano un’immagine La CPU gestisce lo schermo grazie ad una scheda grafica che mantiene una mappa dello schermo, una memoria con le informazioni relative al colore da attribuire a ciascun pixel. Il rapporto d’aspetto→ è la frazione che esprime il rapporto tra le dimensioni della base e dell’altezza dell’immagine visualizzata, il suo valore standard è 4:3 ma è sempre più comune il formato panoramico con un rapporto 16: La risoluzione→ indica il numero massimo di pixel visualizzabili nelle 2 dimensioni Altre caratteristiche importanti sono: la profondità di colore, la luminosità, il contrasto, la frequenza d’aggiornamento e l’angolo di visibilità. Le tecnologie più frequentemente impiegate per la costruzione del video sono quelle a cristalli liquidi e al plasma
I DISPOSITIVI DI PUNTAMENTO
La quasi totalità dei software oggi in uso offre all’utente un’interfaccia grafica: sul video sono rappresentati oggetti grafici detti controlli, interratori o widget con il quale l’utente può interagire in modo intuitivo servendosi di un dispositivo di puntamento (mouse, trackball, joystick, analog stick, trackpad, pointing stick, tavoletta grafica, touchscreen. LA STAMPANTE La stampante è un dispositivo in grado d imprimere testo e immagini su fogli di carta o altri supporti. Formato fogli: A4, A3, A2, A1, A
Altri supporti gestiti: buste, etichette, cartoncino, carta fotografica Stampanti monocromatiche→ stampano in nero su supporti bianchi DPI→ numero di punti che la stampante è in grado di generare in un pollice lineare (tra 300 e 9600 DPI) ppm→ misura velocità della stampante Server di stampa → un calcolatore può condividere una stampante a esso collegata con altri calcolatori connessi in rete Multifunzione→ stampanti che fanno anche da fax, fotocopiatrice e scanner Tipi: stampante a getto d’inchiostro, laser (come scanner) e a impatto (aghi e nastri inchiostrati) DISPOSITIVI PER L’ACQUISIZIONE DI IMMAGINI Dispositivi in grado di digitalizzare un’immagine, di generare cioè una sua codifica in pixel atta a essere memorizzata in un calcolatore (scanner) Scanner piano, manuale e per pellicola fotografica Macchina fotografica digitale, videocamera digitale, reflex digitali, lettore di codice a barre DISPOSITIVI PER LA GESIONE DELL’AUDIO Una scheda sonora è una scheda di espansione che supporta per il calcolatore l’I/O di segnali audio Sintesi vocale→ applicazioni che consento al calcolatore di convertire un testo in parlato Riconoscimento vocale→ conversione del parlato in testo VoIP→ calcolatore collegato a internet e dotato di scheda sonora, microfono e cuffia audio. COMBINAZIONI DI PERIFERICHE Più periferiche sono combinate tra loro al fine di consentire modalità di interazione uomo-macchina più efficaci (Google Glass, lavagna interattiva multimediale) Capitolo 2 IL SOFTWARE Il software è un’unità di memorizzazione in cui trovano posto, oltre ai dati da elaborare, anche e istruzioni eseguite dal calcolatore per condurre l’elaborazione stessa. Grazie a esso il calcolatore è una macchina estremamente flessibile. GLI ALGORITMI L’algoritmo è una sequenza di istruzioni la cui esecuzione consente di realizzare un particolare trattamento dell’informazione o più in generale di risolvere uno specifico problema.
- Un algoritmo presuppone la presenza di qualcuno in grado di eseguirlo (esecutore=calcolatore)
- L’algoritmo viene letto dall’esecutore che partendo dai dati di input esegue le istruzioni seguendo un ordine ben preciso e giungendo a ottenere i dati di output
- L’algoritmo deve essere formulato in un linguaggio comprensibile all’esecutore
- L’algoritmo deve prevedere soltanto istruzioni elementari che richiedono all’esecutore la conduzione di operazioni elementari
- L’algoritmo non deve avere un linguaggio ambiguo
- L’algoritmo deve specificare l’ordine di esecuzione delle istruzioni
- L’algoritmo deve avere un numero finto di istruzioni
- Impostazione di S nel registro di stato L’iterazione si conclude quando lo stato corrente risulta essere uno degli stati finali. Una MdT si comporta come un calcolatore in grado di eseguire un ben preciso e fisso algoritmo. Turing definì macchina di Turing universale una macchina di Turing in grado di simulare il funzionamento di qualsiasi altra macchina di Turing e ne descrisse in dettaglio una possibile realizzazione. Tesi di Church-Turing→ se una funzione intuitivamente considerata calcolabile, allora esiste una macchina di Turing in grado di calcolarla L’INGEGNERIA DEL SOFTWARE L’ingegneria del software è una branca dell’ingegneria che si occupa di sviluppare approcci sistematici e disciplinati allo sviluppo, alla messa in opera e alla manutenzione del software a livello industriale. Le metodologie proposte dall’ingegneria del software per lo sviluppo di un nuovo prodotto assumono come riferimento un ciclo di vita del software che prevede alcune fasi:
- L’analisi che ha come scopo la produzione di un documento di specifica contenente la definizione del problema che il software dovrà risolvere
- La progettazione, tratteggia la struttura del prodotto software
- Implementazione, si realizzano uno o più programmi la cui integrazione costituirà il prodotto software
- Il collaudo sottopone quest’ultimo a una serie di test
- Il rilascio consiste nell’installazione del software presso gli utenti
- La manutenzione IL SOFTWARE: OPERA DELL’INGEGNO Il software può essere duplicato molto facilmente e distribuito su supporti estremamente economici; chi produce un software è il titolare del relativo diritto d’autore e chi lo utilizza deve conoscere le norme che ne regolamentano l’uso. Software house→ azienda specializzata nella produzione di software Licenza d’uso→ utilizzo di un prodotto su un numero limitato di calcolatori e ne vieta la copia, la modifica e la ridistribuzione. Shareware→ prodotti distribuiti via internet Freeware→ prodotto distribuito gratuitamente e può essere copiato e distribuito liberamente Software libero e open source→ viene distribuita la versione sorgente che ne incoraggia l’uso, la modifica, lo studio e la ridistribuzione a titolo gratuito ma nel rispetto di alcune regole IL SOFTWARE APPLICATIVO I software per calcolatori viene normalmente classificato in 2 categorie:
- Software applicativo→ supportano l’utente nella risoluzione di problemi specifici
- Software di base→ consentono l’interazione dell’utente con il calcolatore Esempi: Microsoft word, excel, powerpoint, adobe, phtoshop, outlook, microsoft project, videogiochi, mobile app IL SOFTWARE DI BASE: IL SISTEMA OPERATIVO
Comprando un calcolatore ci aspettiamo che l’hardware sia corredato di un sistema operativo, ovvero il software di base, una collezione di programmi di utilizzo generale per l’interazione tra utente e calcolatore, le gestione delle risorse in dotazione allo stesso calcolatore, il supporto all’esecuzione del software applicativo. I sistemi operativi sono progettati con un’architettura a macchine virtuali stratificate. L’hardware viene corredato da un primo strato di software; l’insieme costituito dall’hardware e da questo strato di software può essere visto come una macchina virtuale che offre un’interfaccia che fornisce ad altri programmi la possibilità di trarre vantaggio dall’impiego di queste funzionalità aggiuntive Un moderno sistema operativo richiede diversi componenti:
- Nucleo che gestisce programmi
- Gestore della memoria
- Gestore dispositivi di I/O
- File system che gestisce archiviazione e reperimento dati
- Gestore della rete che gestisce la comunicazione con altre reti
- Interprete dei comandi che gestisce l’interazione con l’utente Sistemi operativi comuni: unix, linux, windows, mac OS, iOS, android GESTIONE DELLA CPU Calcolatori monoprogrammati (anni 40) → mantengono in memoria centrale ed eseguono un solo programma per volta e non disponevano di un sistema operativo: il programmatore accedeva a tutte le istruzioni della CPU e alle periferiche mediante un programma in linguaggio macchina codificato su schede perforate. Negli anni 50 si introdusse il monitor per ridurre i tempi di inattività tra la terminazione dell’esecuzione di un programma e l’inizio del successivo. Negli anni 60 i calcolatori divennero sistemi multiprogrammati in grado di tenere in RAM contemporaneamente più programmi Sempre negli anni 60 ci fu la scomparsa delle schede perforate e si introdusse la possibilità per il calcolatore di interagire con l’utente durante l’esecuzione del programma, nacquero così:
- Applicazioni I/O bound→ in genere interattive, favoriscono lo spreco della risorsa CPU costretta ad attendere l’input di tastiera
- Applicazioni CPU bound→ non interattive, richiedo l’elaborazione della CPU Multitasking→ più terminali collegati allo stesso calcolatore che offrivano a ciascun utente la presenza di una CPU a lui dedicata Processo→ entità dinamica in contrapposizione al programma che in quanto insieme di istruzioni in linguaggio macchina è invece un’entità statica In ogni istante, un processo si trova in uno dei seguenti stati:
- Pronto→ il processo è in una lista di dei processi pronti e attende il suo turno per essere chiamato a transitare allo stato in esecuzione
- In esecuzione→ il processo ha accesso alla CPU che ne esegue le istruzioni
- In attesa→ il processo è in attesa del completamento di un’operazione asincrona e di poter quindi transitare allo stato pronto Context swapping→ scambio di contesto operato dal kernel
- Interazione uomo-calcolatore locale→ interazione tradizionale senza impiego di rete (utilizzo di word)
- Interazione uomo-calcolatore remoto→ utente interagisce con una applicazione in esecuzione su un calcolatore remoto connesso in rete (navigazione web)
- Interazione tra uomini mediata da calcolatori→ (chat) L’INTERFACCIA CON L’UTENTE L’interprete dei comandi è il componente del sistema operativo che gestisce direttamente l’interazione con l’utente Autentificazione→ il sistema operativo deve identificare con certezza l’utente tramite dimostrazione di conoscenza (account, username, password), dimostrazione di possesso (smart card) e dimostrazione di caratteristiche fisiche (impronte digital) Tra gli utenti di un calcolatore si possono identificare alcune figure di riferimento a cui il sistema operativo deve garantire autorizzazioni diverse:
- Amministratore di sistema→ garantisce il funzionamento complessivo del calcolatore
- Operatore di sistema→ sostituisce l’amministratore su delega
- Programmatore→ realizza applicazioni per altri utenti
- Utente applicativo→ utilizza le applicazioni VIRTUALIZZAZIONE Virtuale→ in informatica è un aggettivo molto usato a proposito di un sistema che simula caratteristiche o funzionalità diverse da quelle reali Piazze virtuali→ servizi che consento a persone ubicate a distanza di comunicare Virtualizzazione dell’hardware→ tecnologia sempre più diffusa offerta dai sistemi operativi; sul calcolatore viene installato un hypervisor che consente la creazione di snapshot, lo stato completo di una macchina virtuale a un determinato instante, e il suo salvataggio sulla memoria di massa. (Vantaggi notevoli) I SOFTWARE MALIGNI Malware→ classe di programmi specificatamente progettati per infiltrarsi ed eventualmente apportare danni all’interno di un calcolatore senza il consenso Computer virus→ insieme di istruzioni nascosto all’interno di un programma di uso comune Il virus si diffonde da un pc all’altro tramite il trasferimento di un programma infetto Worm→ intero programma che mediante la rete invia copie di se stesso al altri pc e genera problemi sulla rete Trojan horse→ programma distribuito gratuitamente e apparentemente innocuo, se aperto genera breccia che porta ad attacchi Spyware→ programma installato senza autorizzazione sul pc che ruba informazioni dell’utente Adware→ programma che propone pubblicità Crimeware→ software per il furto d’identità Hoax→ messaggi di posta elettronica infettati Firewell→ dispositivo che crea barriera contro attacchi trojan Antivirus→ software in grado di prevenire, individuare e rimuovere i programmi malware
Capitolo 3 LA RAPPRESENTAZIONE DEI NUMERI – DECIMALE POSIZIONALE La codifica oggi più comunemente adottata per i numeri è la notazione decimale posizionale L’aggettivo “decimale” fa riferimento alla cardinalità dell’alfabeto usato nella codifica (10 simboli=1,2…) L’aggettivo “posizionale” indica il fatto che ogni cifra assume un diverso ruolo in funzione della sua posizione (10 è la base del nostro sistema di rappresentazione numerica posizionale) Aggiungendo il separatore decimale (,) è possibile rappresentare i sottomultipli: decimi, centesimi, millesimi LE RAPPRESENTAZIONI NON POSIZIONALI Il sistema di numerazione romano testimonia la possibilità di rappresentare i numeri con notazioni non posizionali. In origine esso costituiva un sistema di numerazione additivo che può essere così descritto:
- Si definisce un insieme di simboli a ciascuno dei quali è associato un valore numerico
- Un numero è rappresentato da una sequenza di tali simboli
- Il valore di un numero è dato dalla somma dei valori corrispondenti ai simboli contenuti nella sequenza che lo rappresenta LA RAPPRESENTAZIONE POSIZIONALE IN BASE NON DECIMALE Nei sistemi in basi maggiori di 10, si utilizzano oltre alle 10 cifre decimali, le prime lettere dell’alfabeto. Nel sistema esadecimale (inglese) si impiega la “A” come cifra per il dieci, “B” per l’undici… “F” per il quindici. LA CODIFICA BINARIA (riguardare sul libro) Per la rappresentazione dei dati all’interno di un calcolatore, viene in genere adottata una codifica binaria. Per i numeri si ricorre quindi alla notazione binaria posizionale (bit, byte, nibble) La notazione esadecimale è quindi molto usata tra gli informatici, in quanto nella documentazione tecnica, al posto di scrivere lunghissime sequenze di bit raggruppano i bit in nibble rappresentati da cifre esadecimali. LA QUANTITA’ DI INFORMAZIONE: INCERTEZZA E PROBABILITA’ La teoria dell’informazione si occupa dello studio sistematico delle basi teoriche dell’informazione e della comunicazione. Se i dati portano informazione, si può pensare di misurare la quantità di informazione contenuta in un supporto. (Se i logaritmi sono in base 2, l’unità di misura della quantità di informazione è definita bit). L’INFORMAZIONE QUANTITATIVA: CODIFICA ANALOGICA E DIGITALE Per la rappresentazione dell’informazione di tipo quantitativo esistono 2 approcci: la codifica analogica e digitale. La codifica analogica di una grandezza richiede l’individuazione di una grandezza analoga (all’incremento della prima dovrà corrispondere un incremento della seconda) La codifica digitale richiede l’introduzione di un alfabeto d simboli e di regole di codifica che specifichi come ogni possibile valore della grandezza sia rappresentato da una sequenza di simboli. Vantaggi/svantaggi:
- Approccio digitale è più compatto
- La codifica analogica, a differenza di quella digitale, porta implicitamente metainformazioni (informazione sull’informazione) di tipo ordinale e numerico
modifica o la lettura, oltre al testo contengono altre meta-informazioni tra cui quelle sulla formattazione, che specificano cioè come esso debba essere impiegato (.doc). Linguaggi di marcatura→ consento di inserire all’interno del puro testo annotazioni con caratteristiche sintattiche particolari che ne consentono il riconoscimento (HTML). ODT e DOCX→ formati adottati dalle più diffuse applicazioni di videoscrittura per la codifica di documenti con linguaggi di marcatura RTF→ sviluppato da Microsoft per lo scambio di documenti tra sistemi e applicazioni, è un formato di testo contenente codici di controllo PostScript→ consente di descrivere l’impaginazione PDF→ comune per la diffusione di documenti su internet LE IMMAGINI Profondità di colore→ numero di bit impiegati per codificare il colore associato a ciascun pixel Modelli di colore sottrattivi→ modelli di colore che partono da uno sfondo bianco e in cui la miscela dei colori primari produce il nero CMYK→ impiegato nella gestione delle stampe Modelli di colore additivi→ si parte da uno sfondo nero e la combinazione dei colori primari produce il bianco RGB→ basato su colori primari è impiegato nel video del calcolatore IL FORMATO DEI FILE CONTENENTI IMMAGINI I file in formato raster contengo una rappresentazione dell’immagine sotto forma di bitmat. Formati: JPEG, GIF, BPM, TIFF, PNG I file in formato vettoriale rappresentano le immagini come composizioni di primitive geometriche a loro volta codificate in termini di equazioni matematiche. Il loro impiego più comune è nelle rappresentazioni CAD, nella modellazione tridimensionale, nella generazione di informazioni. Formati: CGM, SVG, WMF, DXF I SUONI Codifica digitale binaria tipiche dei comuni CD audio ha le seguenti caratteristiche:
- Stereofonia→ due canali rilevati dalle due orecchie riproducono la distribuzione spaziale delle sorgenti sonore
- Frequenza di campionamento→ 44100 Hz
- Quantizzazione→ 65536 livelli (codifica a 16b bit) Formati fil audio: WAV, AIFF, MP3, ACC I FILMATI Un filmato in formato digitale è costituito da una serie di fotogrammi, immagini digitali che in fase di riproduzione vengono mostrate in rapida successione con frequenza costante. Formato filmati digitali: quicktime, MPEG-2, FLV, AVI LA COMPRESSIONE (riguardare sul libro)
La compressione di un file consiste nella riformulazione del suo contenuto informativo con una codifica diversa che consenta di ridurne le dimensioni con l’obiettivo, in genere di contenere lo spazio occupato sui dispositivi di memorizzazione o ridurre il tempo impiegato per la sua trasmissione Rapporto di compressione è definito da RC=SU/SC La riduzione nell’occupazione di spazio è definita RS=(SU-SC)/SU Compressione lossless non prevede perdite di informazione la compressione lossy si LE BASI DI DATI In un’organizzazione il sistema informativo è l’insieme di tutte le risorse che essa impiega per raccogliere, organizzare e rendere fruibili le informazioni necessarie alle proprie attività. Sono sistemi informativi, per esempio il catalogo di una biblioteca, l’anagrafe dei cittadini in un municipio, gli archivi della segreteria in una scuola. Basi di dati→ grosse collezioni strutturate di dati in grado di:
- Garantire la rappresentazione, la conservazione e la fruizione dei dati d’interesse per il sistema operativo
- Evitare la frammentazione, la ridondanza e l’eventuale inconsistenza
- Evitare accessi non autorizzati La gestione di una database è affidata a un sistema di gestione di base di dati (DBMS), un applicazione software cui tutte le altre applicazioni si rivolgono per ottenere l’accesso ai dati Un DBMS rende disponibili due linguaggi che possono essere impiegati direttamente dagli utenti:
- DDL→ impiegati per definire le strutture destinate a contenere i dati e le relazioni tra esse
- DML→ impiegati per modificare il contenuto della DB per compiervi interrogazioni La variazione del contenuto del DB si realizza con l’inserimento di nuovi dati, la modifica o la cancellazione di quelli esistenti L’accesso ai dati gestiti da un DBMS può realizzarsi secondo varie modalità:
- Linguaggi testuali interattivi come SQL
- Comandi specifici per l’accesso ai DBMS
- Comandi, formulati in SQL o linguaggi simili (generare stampe, grafici, maschere video)
- GUI (consento di formulare interrogazioni) La struttura di una DB può essere graficamente rappresentata in uno schema concettuale Modello entità-relazione:
- Entità→ classi di oggetti del mondo reale che hanno proprietà comuni ed esistenza autonoma
- Relazioni→ legami logici tra entità
- Attributi→ proprietà di entità o relazioni SICUREZZA INFORMATICA A questione molto importante in tutti gli ambiti di trattamento dell’informazione è quella legata alla sicurezza dei dati e delle informazioni in essi codificati. I principali aspetti coinvolti sono:
- Riservatezza→ protezione dei dati da letture non autorizzate
- Integrità→ protezione dei dati da modifiche autorizzate
Una rete privata virtuale→ è la simulazione realizzata attraverso una rete pubblica della connessione diretta tra due calcolatori o tra due LAN Rete WLAN e WPAN→ rispettivamente reti locali e senza fili Internetworking→ connessione tra due nodi di due reti diverse ha dato origine a internet Stampante di rete→ stampante connessa alla rete e disponibile per tutti gli utenti di quella rete LA COMUNICAZIONE Un requisito essenziale affinché due o più calcolatori costituiscano una rete è che essi siano in grado di comunicare ovvero di scambiarsi informazioni Segnale→ grandezza fisica in cui il valore cambia nel tempo come per esempio la temperatura corporea di una persona, la tensione alle estremità di un cavo elettrico o un indice di borsa. Canale di trasmissione→ sistema fisico in grado di trasferire un segnale e alle cui estremità si trovano rispettivamente un trasmettitore e un ricevitore Rumore→ qualsiasi segnale indesiderato che interferisca con quello trasmesso e che determina differenze anche sostanziali tra il messaggio inviato dalla sorgente e quello giunto al destinatario I MEZZI FISICI Mezzi guidati→ il segnale viaggia lungo linee fisiche (cavi) Mezzi non guidati→ il segnale viene irradiato nello spazio (WIFI) Le reti che ricorrono a mezzi guidati sono reti cablate cioè realizzate tramite impianti di cablaggio che impiegano cavi Ogni mezzo di comunicazione è caratterizzato da proprietà fisiche che determinano la:
- Distanza massima
- Velocità massima Cavo coassiale→ altro mezzo guidato impiegato perla trasmissione di segnali elettrici La fibra ottica→ consente la trasmissione disegnali luminosi IrDA→ mezzo non guidato che utilizza onde elettromagnetiche infrarosse non visibile per l’uomo Bluetooth→ tecnologia basata su onde radio particolarmente adeguata alla creazione DI WPAN, le reti personali senza fili Wi-Fi→ tecnologia basata su onde radio per la realizzazione di WLAN basate sulle specifiche tecniche IEEE
INTERWORKING Un dispositivo è online quando risulta connesso a una rete, off line quando è invece disconnesso Internet service provider→ fornitore di servizi internet Internet access provider→ fornitore di accesso a internet Modem→ è un dispositivo che fungendo da interfaccia tra un calcolatore e una linea telefonica, prende il proprio nome della dalla contrazione dei due termini che ne definiscono le funzioni principali
- Modulazione→ il modem riceve dal calcolatore un flusso d bit e lo codifica sotto forma di segnali elettrici che trasmette lungo la linea telefonica
- Demodulazione→ il modem decodifica i segnali elettrici che gli arrivano dalla linea telefonica, traducendoli in sequenze di bit che invia al calcolatore Per collegare 2 reti ci si avvale di due dispositivi detti router Con un modem analogico è possibile collegare tra loro due calcolatori e quindi in particolare collegare un calcolatore a un ISP, mediante una linea telefonica commutata. Connessioni su linea telefonica commutata e su ISDN rientrano entrambe nella categoria dial-up, sono cioè attive soltanto quando il modem impegna la linea La tecnologia DSL si caratterizza in genere per un ottimo rapporto prestazioni/prezzo, tale da consentire a privati, aziende ed enti di piccole e medie dimensioni una connessione all’ISP a una velocità molto maggiore rispetto alle soluzioni dial-up. WiMAX→ è una tecnologia che consente la connessione all’ISP a banda larga e senza fili DALLE RETI A INTERNET – INFRASTRUTTURE, SERVIZI E COMUNITA’ DI UTENTI Quando parliamo di reti ci riferiamo sostanzialmente a un insieme di:
- Dispositivi informatici
- Connessioni
- Protocolli
- Software
- Utenti Programmi→ quei codici che permettono agli utenti di mettere in atto le loro strategie di comunicazione Messaggio→ qualunque testo che venga scambiato fra due nodi di una rete Commutazione di pacchetto→ il nostro messaggio non verrà spedito come un unico blocco di testo ma verrà spezzettato in tanti pacchetti Protocolli di rete→ norme e convenzioni che stabiliscono i formati dei messaggi e le modalità di colloquio fra i programmi che se li scambiano, le quali dunque regolano l’invio e la ricezione di informazioni tramite una rete I protocolli di comunicazione vengono gestiti da organismi sovranazionali come l’ISO o il W3C che a volte emanano normative progettate con l’intenzione di normare un certo settore, altre volte prendono atto dell’esistenza di standard che si sono imposti autonomamente Intranet→ rete locale o un inviluppo di reti locali usata da un organizzazione per la comunicazione interna e l’accesso all’informazione, con accesso ristretto agli utenti facenti parte dell’organizzazione e con uso dei protocolli tipici di internet Extranet→ parte della intranet accessibile a esterni autorizzati come clienti e fornitori Server→ ci riferiamo sia al calcolatore che ospita la pagina web richiesta dal client sia al programma che viene usato su questa macchina per ricevere le richieste degli utenti e soddisfarle inviando loro le pagine web rispondenti alle loro esigenze Client→ ci riferiamo sia al calcolatore dal quale parte la richiesta di una pagina web sia al programma che viene usato su questa macchina per accedere al web FUNZIONI E UTILITA’ DELLE RETI Le principali funzioni delle reti sono 2:
- Permettere la comunicazione fra più nodi/utenti