Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Informatica umanistica - Marco Lazzari, Sintesi del corso di Elementi di Informatica

Riassunto del libro "Informatica umanistica" di Marco Lazzari

Tipologia: Sintesi del corso

2017/2018
In offerta
50 Punti
Discount

Offerta a tempo limitato


Caricato il 12/04/2018

saramaffei
saramaffei 🇮🇹

4.3

(93)

9 documenti

1 / 55

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
INFORMATICA UMANISTICA
1. Fondamenti di informatica
1.1 Informatica: il trattamento automatico dell’informazione
Il termine informatica viene coniato negli anni ’60 da Philippe Dreyfus, definendo così la disciplina
tecnico-scientifica che si occupa della programmazione e costruzione di macchine in grado di
trattare o elaborare in modo automatico l’informazione. Queste macchine sono gli elaboratori
automatici, esse portano benefici all’uomo come: la riduzione del tempo di elaborazione, maggiore
affidabilità (meno probabilità di errore), liberazione dell’uomo da incombenze noiose e facile e
diffuso accesso a elaborazioni in genere poco comuni all’uomo.
Il termine calcolatore (in inglese computer da cui computer scienze corrispondente alla nostra
informatica) in alternativa a “elaboratore”, meno comune ma, riteniamo più appropriato. In
alternativa al termine informatica si utilizza il termine tecnologia dell’informazione ( Information
Technology, IT).
In quanto il calcolatore è stato associato alla rete, l’unione tra informatico e telecomunicazioni da
origine ad una nuova disciplina chiamata Information & Communication Technology (ICT).
Sotto questa definizione rientrano un’enorme quantità di tecnologie con le quali abbiamo a che fare
ogni giorno come personal computer, lettori mp3, macchine fotografiche, cd e dvd, memorie flash e
social network.
1.1.1 Il dato, l’informazione e la conoscenza
Il termine “informazione” assume significati e valenze un po’ diverse a seconda dei contesti, in
genere in relazione ad altri concetti quali comunicazione, controllo, dati, conoscenza, percezione,
rappresentazione.
Nell’informatica e delle discipline ad essa collegate, è importante mettere in relazione il significato
di questo termine con quello di altri, in particolare dato e conoscenza”. Questi tre elementi,
informazione, dato e conoscenza, si collocano su tre livelli in ordine crescente d’astrazione.
Per dato s’intende un insieme di simboli tracciati su un supporto fisico, ma esso non comporta alcun
vantaggio se non viene messo in relazione con la proprietà cui si riferisce e lo si trasformi quindi in
informazione. Si parla di conoscenza quando si dispone di regole che permettono di trarre vantaggio
da tale informazione. La risoluzione dei problemi è basata sull’informazione perché consente di
compiere ragionamenti e di prendere decisioni sugli oggetti del mondo reale acquisendo un limitato
numero di informazioni. Tale approccio è alla base di tutte le discipline tecnico scientifiche.
1.1.2 I linguaggi formali
Gli uomini per comunicare tra loro utilizzano i linguaggi naturali come l’italiano, ma sono soggetti
ad ambiguità e pluralità di sensi e significati. L’ambiguità del linguaggio naturale e dipendente dal
contesto, per esempio la frase “sposta il cavallo” senza parlare del contesto si può pensare se
riferisca ad un animale ma anche a un pezzo del gioco degli scacchi. I linguaggi formali vengono
sviluppati e impiegati in tutti gli ambiti come l’informatica e la matematica, in cui è importante
evitare l’ambiguità e prevedono:
Sara Maffei
1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
Discount

In offerta

Anteprima parziale del testo

Scarica Informatica umanistica - Marco Lazzari e più Sintesi del corso in PDF di Elementi di Informatica solo su Docsity!

INFORMATICA UMANISTICA

1. Fondamenti di informatica

1.1 Informatica: il trattamento automatico dell’informazione

Il termine informatica viene coniato negli anni ’60 da Philippe Dreyfus, definendo così la disciplina tecnico-scientifica che si occupa della programmazione e costruzione di macchine in grado di trattare o elaborare in modo automatico l’informazione. Queste macchine sono gli elaboratori automatici , esse portano benefici all’uomo come: la riduzione del tempo di elaborazione, maggiore affidabilità (meno probabilità di errore), liberazione dell’uomo da incombenze noiose e facile e diffuso accesso a elaborazioni in genere poco comuni all’uomo. Il termine calcolatore (in inglese computer da cui computer scienze corrispondente alla nostra informatica) in alternativa a “elaboratore”, meno comune ma, riteniamo più appropriato. In alternativa al termine informatica si utilizza il termine tecnologia dell’informazione ( Information Technology , IT). In quanto il calcolatore è stato associato alla rete, l’unione tra informatico e telecomunicazioni da origine ad una nuova disciplina chiamata Information & Communication Technology (ICT). Sotto questa definizione rientrano un’enorme quantità di tecnologie con le quali abbiamo a che fare ogni giorno come personal computer, lettori mp3, macchine fotografiche, cd e dvd, memorie flash e social network. 1.1.1 Il dato, l’informazione e la conoscenza Il termine “informazione” assume significati e valenze un po’ diverse a seconda dei contesti, in genere in relazione ad altri concetti quali comunicazione, controllo, dati, conoscenza, percezione, rappresentazione. Nell’informatica e delle discipline ad essa collegate, è importante mettere in relazione il significato di questo termine con quello di altri, in particolare “ dato ” e “ conoscenza ”. Questi tre elementi, informazione, dato e conoscenza, si collocano su tre livelli in ordine crescente d’astrazione. Per dato s’intende un insieme di simboli tracciati su un supporto fisico, ma esso non comporta alcun vantaggio se non viene messo in relazione con la proprietà cui si riferisce e lo si trasformi quindi in informazione. Si parla di conoscenza quando si dispone di regole che permettono di trarre vantaggio da tale informazione. La risoluzione dei problemi è basata sull’informazione perché consente di compiere ragionamenti e di prendere decisioni sugli oggetti del mondo reale acquisendo un limitato numero di informazioni. Tale approccio è alla base di tutte le discipline tecnico scientifiche. 1.1.2 I linguaggi formali Gli uomini per comunicare tra loro utilizzano i linguaggi naturali come l’italiano, ma sono soggetti ad ambiguità e pluralità di sensi e significati. L’ambiguità del linguaggio naturale e dipendente dal contesto, per esempio la frase “sposta il cavallo” senza parlare del contesto si può pensare se riferisca ad un animale ma anche a un pezzo del gioco degli scacchi. I linguaggi formali vengono sviluppati e impiegati in tutti gli ambiti come l’informatica e la matematica, in cui è importante evitare l’ambiguità e prevedono:

-l’individuazione di un alfabeto , un elenco ( finito ) di simboli ; -la definizione di una grammatica formale , un insieme di regole che definisce come i simboli dell’alfabeto possano essere combinati fra loro. 1.1.3 La codifica e la rappresentazione dell’informazione L’informazione è rappresentata dai dati che a loro volta sono espressi sotto forma di simboli, la stessa informazione può essere codificata con simboli e modalità diverse. Se consideriamo un alfabeto estremamente ridotto che contiene soltanto i simboli “0” e “1”, 1 bit ( “ binary digit ” ovvero cifra binaria) è un simbolo scelto su tale alfabeto. L’adozione dell’alfabeto binario per la codifica delle informazioni nei calcolatori è determinata dalla semplicità di rappresentazione dei simboli da dispositivi bistabili. Questi sono dispositivi fisici in grado di assumere due configurazioni alternative e di permanere in modo stabile nella configurazione a loro assegnata. Es: se 1 bit assume due configurazioni possibili 0 e 1; con 2 bit abbiamo 4 sequenze possibili ( =2 ² ) sequenze: 00, 01, 10, 11; 8 bit: 256 (=2⁸) sequenze possibili. Si definisce byte una sequenza di 8 bit. Nel calcolatore le informazioni sono rappresentate in forma binaria sotto forma di sequenze di bit, la memoria componente del calcolatore memorizza i dati d è costituita da una collezione di dispositivi bistabili. La sua capacità può essere misurata in bit, in byte o in multipli di essei ( ad esempio Kilo ). 1.1.4 Gli strumenti per l’elaborazione Con “ elaborazione dell’informazione ” intendiamo qualsiasi attività condotta sull’informazione stessa comprendendo almeno le seguenti: -creazione; -modifica ( anche eliminazione); -confronto; -conservazione (comunicazione e distanza nel tempo); -trasmissione (comunicazione a distanza nello spazio) a soggetti specifici oppure a soggetti non predeterminati ( diffusione) Il trattamento dell’informazione segue uno schema: -l’informazione viene codificata sotto forma di dati, simboli, tracciati su un supporto fisico; -il supporto viene sottoposto ad una trasformazione fisica che genera nuovi dati e nuove sequenze di simboli; -i dati generati vengono decodificati e apportano nuove informazioni; L’informazione in ingresso all’elaborazione viene denominata input , mentre quella prodotta in uscita dall’elaborazione stessa prende il nome di output. Può succedere che si debba insegnare ad altri come compiere correttamente la trasformazione e di un particolare trattamento delle informazioni, cioè fornire a un esecutore le istruzioni che gli consentono di operare tale trasformazione in modo autonomo. Queste istruzioni che vengono fornite possiamo definirle un algoritmo.

Eckert e Mauchly, dopo aver sviluppato ENIAC, proposero un modello in cui i programmi erano immagazzinati direttamente in memoria. (Mentre in ENIAC il programma doveva essere codificato direttamente in hardware). Il modello teorico che ne risulto’ – l’Architettura “di Von Neumann” influenzò direttamente la realizzazione di EDVAC (Electronic Discrete Variable Automatic Computer). Dopo EDVAC: 1948: primo computer commerciale (UNIVAC) 1954: primo computer a transistors (Bell Labs), i Transistor sono dispositivi formati da semiconduttori che cominciarono ad essere disponibili sul mercato e a sostituire nei calcolatori, le valvole termoioniche di cui risultavano molto meno costose, molto più veloci e di dimensioni più contenute (1960: valvole sostituite da transistors). 1960: i calcolatori divennero ancora più piccoli, veloci, economici ed affidabili con l’impiego dei circuiti integrati o microchip che poi successivamente introdurranno il microprocessore (1971: primo microprocessore: Intel 4004). L’avvento dei microprocessori ha determinato la diffusione dapprima dei minicomputer (1975, Altair) e poi a quella dei personal computer. 1975: fondazione di Microsoft 1976: Apple I e Apple II 1979: primo Spreadsheet (VisiCalc) 1.1.6 La macchina di Turing Alan Mathison Turing (1912-1954), matematico, logico e criptoanalista britannico, è considerato il padre della moderna informatica. Ideò la macchina di Turing (MdT), un dispositivo per l’elaborazione dell’informazione che, pur nella sua semplicità, si dimostra in realtà molto potente. È una descrizione estremamente astratta delle attività del computer, che pero’ cattura il suo funzionamento fondamentale. Macchina basata su un’analisi di cosa fa un calcolatore (umano o meccanico). In una macchina di Turing abbiamo: 1 Una ‘CPU’: composta da:

  • Un programma: un insieme di regole che determinano il comportamento della testina a partire dal suo stato e dal simbolo letto (= sistema operativo)
  • una testina che si trova in ogni momento in uno fra un insieme limitato di stati interni e che si muove sulla memoria, leggendone e a volte modificandone il contenuto. 2 Una ‘MEMORIA’, composta da:
  • un nastro di lunghezza indefinita, suddiviso in cellette che contengono simboli predefiniti (ad es. ‘0’e ‘1’); La MdT in sostanza rappresenta un sistema automatico per l’elaborazione delle informazioni. Il nastro è il supporto fisico su cui è inizialmente codificata con simboli dell’alfabeto l’informazione in input. La testina grazie all’algoritmo, codificato dalla tabella delle azioni, si muove lungo il nastro, leggendo e modificando il suo contenuto e trasformando in output l’informazione precedentemente inserita. Il registro degli stati costituisce la memoria interna del sistema che, in ogni momento, traccia lo stato di avanzamento dell’elaborazione. La MdT una volta attivata esegue queste azioni in ciclo: legge il simbolo nella cella corrente, individua, nella tabella delle azioni, i primi due elementi sono rispettivamente lo stato corrente e il simbolo contenuto nella cella corrente. La MdT si comporta come un calcolatore in grado di eseguire un ben preciso e fisso algoritmo, quello espresso dalla sua tabella delle azioni. Turing definì macchina di Turing universale (UTM)

una macchina di Turing in grado di simulare il funzionamento di qualsiasi altra macchina di Turing e ne descrisse in dettaglio una possibile realizzazione. Si pensa che la UTM abbia originato una delle caratteristiche più importanti dell’architettura di von Neumann ovvero l’impiego di un dispositivo di memoria unico per contenere dati e istruzioni. Si ricorda anche la tesi di Church-Turing che afferma che se una funzione è intuitivamente considerata calcolabile allora esiste una macchina di Turing in grado di calcolarla. 1.1.7 Architettura di von Neumann Nel 1944 il matematico di origini ungherese John von Neumann (1903-1957), entrò a far parte del progetto ENIAC, e successivamente nel progetto EDVAC e sviluppò una bozza preliminare dell’architettura del nuovo calcolatore. Questo documento prese il nome di architettura di von Neumann diventando il riferimento per la quasi totalità dei calcolatori digitali. Le caratteristiche essenziali sono:

  • obbiettivo: realizzazione di un calcolatore universale
  • presenza di un dispositivo di memorizzazione in cui è possibile rappresentare, con la stessa codifica, dati e istruzioni
  • utilizzo dell’aritmetica binaria invece che decimale (più semplice da realizzare)
  • separazione tra dispositivo di memorizzazione e dispositivo di elaborazione Il calcolatore quindi risulta composto dei seguenti sottosistemi:
  • processore o CPU, che legge istruzioni dalla memoria e le esegue operando trasformazioni sui dati pure in memoria
  • memoria, un’insieme di unità di memorizzazione (celle)
  • l’interfaccia, che può essere scomposta in: interfaccia di input e interfaccia di output, gestisce le iterazioni con l’ambiente esterno collegandosi con le periferiche: i dispositivi di input e output (I/ O)
  • bus, è il canale di comunicazione che gestisce lo scambio di informazioni tra gli altri sottosistemi. La CPU è programmata in codice binario detto linguaggio macchina, due calcolatori sono identici quando hanno una identica CPU che utilizza uno stesso linguaggio macchina. Un difetto nell’architettura von Neumann è noto come “ collo di bottiglia v. Neumann ” e succede quando l’elaborazione del dato da parte della CPU è più veloce rispetto a quella di trasferimento da parte del bus. Per superare questo limite le schede madri attuali integrano in genere bus aggiuntivi ottimizzati per la comunicazione per specifiche periferiche, ad esempio le schede grafiche. 1.1.8 L’hardware e il software Il software ha origine durante la seconda guerra mondiale quando i crittoanalisti inglesi, sotto la guida di Alan Turing, erano impegnati a decrittare i messaggi che i nemici tedeschi crittografavano con la macchina Enigma. Dopo aver scoperto che le istruzioni per la configurazione di Enigma, che cambiavano ogni giorno, erano scritte su carta solubile nell’acqua per permettere una distruzione rapida, iniziarono a chiamare queste istruzioni software (componente morbida) mentre la “ferraglia” di cui era composta la macchina venne chiamata hardware (componente dura). Con il termine software ci si riferisce alle istruzioni codificate all’interno della memoria per essere eseguite dall’hardware, termiche che identifica invece tutte le altre parti del calcolatore.

I calcolatori multiutenti si distinguono in funzione delle risorse di cui dispongono:

Minicomputer: di fascia intermedia inprese medie e grandi; Mainframe: di fascia alta impiegato per grandi imprese; Seupercomputer realizzato con tecnologie innovative di elevate prestazioni nell’ambito della ricerca tecnico scientifica. -Calcolatori embedded creati per essere collocati all’interno di altri sistemi come automobili aeromobili semafori, caldaie, catene di montaggio, sistemi di controllo per centrali elettriche nucleari, lettori Mp3. 1.1.2 Il Processore La CPU esegue istruzioni codificate in binario nella memoria centrale, andando a modificare dati codificati anche essi in binario all’interno della memoria centrale stessa. Ogni cella della memoria può contenere un dato o un istruzione che è identificata da un indirizzo numerico, la CPU tramite il bus legge o scrive in una cella di memoria specificandone l’indirizzo. Per svolgere questa attività la CPU si avvale di alcuni registri , unità di memorizzazioni interne ad esse. La CPU compie un ciclo composto da: lettura della memoria ( fetch ); decodifica; esecuzione; scrittura. Nella prima fase la CPU legge un istruzione dalla memoria centrale e la memorizza nel registro IR ( Instruiction Register ), mentre il rispetto del corretto ordine di esecuzione delle istruzioni è garantito dal Program Counter ( PC ). L’esecuzione è affidata all’ unità aritmetico logica , sottosistema della CPU che contiene i circuiti per eseguire le operazioni elementari. Il risultato dell’esecuzione viene trascritto in uno dei registri della CPU o nella memoria centrale. Il linguaggio di macchina di ogni CPU prevede delle istruzioni di salto (jump) che consento in caso di particolari condizioni di modificare il flusso di esecuzione delle istruzioni del Program Counter. In un calcolatore è presente anche un dispositivo detto clock , costituito da un oscillatore al quarzo che genera un impulso elettrico regolare che scandisce le operazioni di tutti i circuiti elettronici del calcolatore sincronizzandoli. La frequenza di clock si misura in Hertz e nei suoi multipli, e determina la velocità massimo con cui una CPU è in grado di operare (Per esempio: se acquistate un calcolatore e vi dicono che ha un processore a 2 GHz, vuol dire che il processore è in grado di eseguire (circa!) 2 miliardi di istruzioni al secondo). I PC odierni si aggirano intorno ad alcuni GHz. 1.1.3 La memoria centrale La memoria centrale RAM , è il dispositivo di memorizzazione con cui la CPU interagisce tramite il bus, per leggere e scrivere istruzioni e dati rappresentati in binario. La RAM è composta da celle ciascuna delle quali, organizzati in gruppi di otto ( 1byte ) può contenere un dato o un istruzione ed è identificata da un indirizzo numerico. La RAM è realizzata da circuiti elettronici integrati e si caratterizza per la sua volatilità : la capacità di memorizzazione richiede un continuo flusso di alimentazione elettrica e lo spegnimento del calcolatore determina la cancellazione del suo contenuto. Viene definita memoria centrale per indicare il suo ruolo nei confronti di altre memorie definite secondarie o di massa in grado di mantenere i dati.

I dispositivi di memoria costituiti da celle di memorizzazione supportano uno di questi tipi di accesso:

accesso sequenziale : prima di poter leggere una cella è necessario leggere tutte quelle che la precedono (nastri magnetici). accesso diretto : accesso immediato in una determinata cella ( memoria centrale); accesso misto :( diretto+ sequenziale) ( dischi magnetici); accesso associativo : accesso in base al contenuto ricercato su più celle ( memoria cache ). La capacità tipica della RAM odierne è tra gli uno e i due GB. Il calcolatore dispone di una memoria aggiuntiva di sola lettura chiamata ROM. Questa non è volatile il cui contenuto può essere modificato dal calcolatore mediante procedure di aggiornamento. È veloce quasi come la RAM. Contiene istruzioni di inizializzazione del calcolatore eseguite all’avvio ( Bootstrap ) e funzioni di supporto per diagnosticare malfunzionamenti. Il booststrap è un processo di avvio che si sostiene da solo senza l’aiuto dall’esterno. 1.2.4 Le memorie di massa o memorie secondarie Mentre la memoria centrale è caratterizzata da volatilità e quindi è inadatta all’archiviazione, la memoria di massa o memorie secondarie hanno come funzione principale quella di garantire a persistenza dei dati. Alcune memorie di massa si basano su supporti rimovibili per la cui lettura e scrittura il calcolatore dev’essere dotato di un apposito dispositivo denominato drive , connesso con un cavo (tipicamente USB). Altre memorie di massa sono da considerarsi fisse, saldamente installate nella chassis. Con il termine backup , ci si riferisce ad una delle tecniche impiegate per il disaster recovery: la produzione di copie aggiuntive dei dati, conservati su un dispositivo di memoria allo scopo di consentire il ripristino del contenuto informativo di un calcolatore. Le memorie di massa si possono classificare in: dispositivi magnetici, dispositivi ottici e memorie flash.

1. I dischi e i nastri magnetici : sono materiali ferromagnetici che se esposti ad un campo magnetico esterno assumono uno stato di magnetizzazione e in tal stato vi rimangono anche dopo la scomparsa del campo stesso. I dispositivi magnetici sono memorie in cui il supporto di memorizzazione è costituito da una superficie ricoperta da un materiale ferromagnetico. Una testina, posizionata in prossimità della superficie è in grado di magnetizzarne piccole aree e di rappresentare quindi i dati che rimangono memorizzati e possono essere letti dalla testina stessa in un momento successivo.

  • Floppy disk: costruito da materiale plastico sottile e flessibile, racchiuso un un involucro rettangolare di plastica, molto popolare negli anni ’90, di diametro di 9 cm e di capacità di 1, MB. Le testine di lettura/scrittura accedono alla superficie del disco attraverso un’apertura dell’involucro normalmente chiusa da un apertura metallica che si apre nel momento in cui s’inserisce il floppy nel drive del computer. Utilizzato per i backup, ruolo soppiantato dall’avvento di memorie flash. Il drive non rientra più nella dotazione dei computer.
  • Disco rigido (HD o Hard Disk): supporto di memorizzazione costituito da uno o più dischi chiamati piatti , in vetro o lega di alluminio ricoperti da una superficie sottile di materiale ferromagnetico sovrapposti e con al centro un perno di rotazione. Il tutto è racchiuso in un contenitore metallico sigillato e collocato in genere, all’interno della chassis del calcolatore (disco fisso). I dischi rigidi impiegati nei personal computer presentano un diametro di 3,5” per i desktop

1.2.5 Gerarchie di memoria Per il già citato collo di bottiglia von Neumann, una CPU moderna, soprattutto quando le sono richieste elaborazioni semplici su grosse quantità di dati si trova spesso a dover perdere tempo nell’attesa che un dato sia letto dalla memoria o scritto nella medesima. Un approccio adottato per ridurre gli effetti negativi da ciò derivanti, si basa sul principio di località :

- località temporale: se un programma, nel corso della sua esecuzione fa riferimento ad una particolare cella di memoria è probabile che esso, successivamente faccia riferimento alla stessa cella. - località spaziale: se un programma, nel corso della sua esecuzione fa riferimento ad una particolare cella di memoria è probabile che esso, successivamente faccia riferimento ad una cella vicina ad essa. Oltre alla memoria centrale e alla memoria di massa un calcolatore moderno dispone di una più articolata gerarchia di memoria in cui i livelli più vicini alla CPU si caratterizzano per maggior velocità e minor capacità secondo questo schema: - registri della CPU; - cache di livello 1; - cache di livello 2; - cache di livello 3; - memoria centrale; - dischi interni; - dischi esterni. 1.2.6 Le periferiche Con il termine periferiche si indicano i dispositivi connessi all’unità centrale di un calcolatore, che supportano l’immissione ( inpu t) e l’emissione ( output ) di dati. Il grosso successo riscontrato dalle interfacce UBS ha portato alla diffusione di numerose interfacce che si connettono al calcolate esternamente, con tale standard. Vi sono due tipi di comunicazione tra l’interfaccia e il dispositivo: - seriale: prevede la presenza di un unico canale consentendo quindi la trasmissione di un singolo bit alla volta; - parallela: presenza di più canali di trasmissione paralleli, consentendo quindi la trasmissione simultanea di gruppi di bit, in genere un byte. Vi sono connessioni a interfacce di tipo diverso, le più importanti connessioni sono: connettori minijack (speaker e altri dispositivi audio I/O), connettori USB (dischi rigidi, mouse, tastiera, stampanti... ), connettore firewire (per il collegamento seriale a un interfaccia firewire, con caratteristiche analoghe a quelle delle interfacce USB), interfacce bluetooth (utilizza onde radio, simile a IrDA), interfaccia IrDA (per connessioni per il collegamento seriale Wireless a infrarossi di mouse, tastiere, stampanti...) utilizza onde elettromagnetiche. 1. La tastiera Dispositivo di input più comune, si rifà alla macchina da scrivere e i tasti sono identificati di simboli. La pressione su uno dei tasti provoca in genere l’input del simbolo corrispondente. La disposizione dei tasti varia in base alle diverse versioni nazionali. Alcuni tasti detti “tasti modificatori” non producono alcun input ma premuti in combinazione con altri permettono di accedere alle funzioni secondarie di alcuni tasti (tasto maiuscolo ad esempio). Vi sono altri tasti

detti “tasti funzione” (F1, F2...) servono in genere per consentire l’invio rapido di comandi ai software e possono essere combinati anche con i tasti modificatori ( Alt, Ctrl). Altri tasti sono i “tasti freccia” con funzione specifica nell’ambito di editing del testo e talvolta è presente anche un tastierino numerico.

2. Il video Schermo, monitor o display è il dispositivo di output più comune, è formato da piccolissimi rettangoli detti pixel di cui il sistema ne controlla il funzionamento, attribuendo a ciascuno di essi un colore, generando quindi ciò che appare all’occhio umano ovvero un’immagine che è composta da piccolissimi punti colorati molto vicini tra loro. La CPU gestisce lo schermo con l’intermediazione di una scheda grafica, la quale mantiene una mappa dello schermo, una memoria con le informazioni relative al colore da attribuire a ciascun pixel, varie decine di volte al secondo la scheda trasmette al video il segnale per la ricolorazione dei pixel. L’ immagine visibile è misurata in pollici lungo la diagonale dello schermo. La risoluzione indica il numero massimo di pixel visibile nelle dimensioni di 4:3 (standard) e 16:9 (formato panoramico, Widescreen). Più uno schermo ha risoluzione più alto è il numero di pixel che ha (maggiore qualità grafica). Altre caratteristiche importanti sono: profondità di colore (misura del numero di colori alternativi che possono essere assunti da ciascun pixel), luminosità, contrasto, frequenza d’aggiornamento e l’angolo di visibilità. Per costruire i video viene solitamente impiegata la tecnologia a raggi catodici (CRT), a cristalli liquidi (LCD) e al plasma. I video CRT hanno come vantaggi i prezzi più bassi, eccellente contrasto, brillantezza e angolo di visibilità, svantaggi sono gli elevanti consumi. LCD hanno un prezzo maggiore hanno limiti nel contrasto, luminosità e angolo visibilità ma consumano poco e peso contenuto. Al plasma sono compatti e leggeri, ma i pixel sono maggiori quindi si adattano a schermi grandi, consumo energetico e prezzo sono elevati. Il videoproiettore: utilizzato in ambito didattico, per conferenze pubbliche e presentazioni, viene proiettata un immagine su un grande schermo (home theatre per uso domestico). 3. Dispositivi di puntamento Quasi tutti i software oggi in uso offrono un’interfaccia grafica, sul video sono rappresentanti oggetti grafici detti controlli, interattori o widget(file,icone, finestre e i menù) con il quale l’utente può interagire servendosi di dispositivi di puntamento (cursore). Quando viene portato in corrispondenza ad uno dei controlli l’utente ha la possibilità di operare sul dispositivo di puntamento scatenando l’esecuzione di un’operazione che il software associa a tale controllo. Il dispositivo di puntamento per eccellenza è il mouse il quale si collega al calcolatore con una porta seriale USB (con filo) o tramite Wireless (connessione IR o Bluetooth). Abbiamo: il mouse meccanico scivola su una pallina e il movimento di questa è codificata da alcune rotelle interne al mouse che dei sensori riconoscono provvedendo così a muovere il cursore nello schermo. Mouse ottico , tramite una componente elettronica acquisisce i movimenti tramite immagini dettagliate della superficie d’appoggio e le confronta tra loro determinando l’entità dello spostamento nelle varie direzioni. Il mouse compie altre funzioni: click, doppio click, triplo click, trascinamento, scorrimento grazie a rotella. Altri dispositivi di puntamento sono: Trackball, joystick, touchpad, tavoletta grafica +stylus, touchscreen.

7. Le reti Una rete di calcolatori è un’insieme di calcolatori connessi tra loro allo scopo di comunicare e condividere risorse. Le reti possono essere classificate in:

  • rete personale (connette PC con dispositivi periferici);
  • rete locale (interconnette i calcolatori in un edificio o in edifici adiacenti);
  • rete metropolitana (area urbana), rete geografica (ampia area geografica) rete globale( livello globale). Internet è una rete di reti di calcolatori estesa a livello globale, la rete per eccellenza. Diffuse sono WLAN (Wirless Lan) e WPAN ovvero reti locali e personali senza fili. 8. La comunicazione Requisito essenziale affinché duo o più calcolatori costituiscano una rete è che essi siano in grado di comunicare, di scambiarsi quindi informazioni. Definiamo segnale una grandezza fisica il cui valore cambia nel tempo (ad esempio la temperatura corporea di una persona). Una sorgente vuole trasferire un messaggio ad un interlocutore, il destinatario, e quindi formula un messaggio rappresentato da simboli di un alfabeto. È necessario che sorgente e destinatario condividano lo stesso contesto attribuendo al messaggio lo stesso contenuto. Un canale di trasmissione è in grado di trasferire un segnale alle cui estremità abbiamo un trasmettitore e un ricevitore. La sorgente invia il messaggio al trasmettitore: vengono codificati i simboli mediante la modulazione del segnale questo, trasportato dal canale giunge al ricevitore che è in grado di decodificarlo che contiene il contenuto informativo che la sorgente ha inteso comunicargli. Ciascun canale è soggetto alla presenza e agli effetti negativi del rumore che può determinare differenze nel segnale ricevuto, trasmettitore e ricevitore concordano l’utilizzo di tecniche di codifica con ridondanza per cui vengono codificati simboli aggiuntivi che consentono al ricevitore di verificare o correggere il messaggio. 9. I mezzi fisici Dato che i calcolatori utilizzano codifiche binarie, anche i mezzi di collegamento che serve per connetterli devono essere in grado di trasmettere segnali binari, utilizzando o mezzi guidati ( il segnale viaggia lungo linee fisiche, cavi ) o mezzi non guidati ( o reti cablate, il segnale tramite onde elettromagnetiche viene irradiato nello spazio WireLess). Ogni mezzo di comunicazione è caratterizzato da proprietà fisiche che determinano la velocità massima con la quale i dati possono essere trasmessi e (bit al secondo), e distanza massima oltre la quale il segnale risulta illeggibile. Tra i mezzi guidati abbiamo: Il doppino telefonico è un mezzo fisico per la trasmissione di segnali elettrici costituito da 8 fili di rame e suddiviso in 4 coppie di fili intrecciati racchiuso in una guaina d’isolante esterna. È il mezzo più comune nell’ambito delle WLAN. Un cavo UTP presenta alle estremità un connettore e uno di essi è inserito nella presa nell’interfaccia di rete del calcolatore, l’altra a una delle prese disponibile di un concentratore che smista la comunicazione tra calcolatori e LAN. Il cavo coassiale è impiegato anch’esso per la trasmissione di segnali elettrici e composto da un corpo centrale in rame. La fibra ottica consente la trasmissione di segnali luminosi, la ridotta attenuazione del segnale consente trasmissione anche su lunghe distanze, l’elevata velocità e l’immunità alle interferenze elettromagnetiche rendono la fibra ottica particolarmente utile nell’interconnessione di LAN e nelle MAN.

Tra i mezzi non guidati abbiamo: IrDA che utilizza onde elettromagnetiche infrarosse con una frequenza superiore alle onde radio, può connettere tra loro dispositivi vicini ed ha una connessione lenta, per WPAN tecnologia obsoleta; Bluetooth: tecnologia basata sulle onde radio per la creazione di WPAN, basso consumo e sicuro permette il collegamento di dispositivi nel raggio di 3 metri; e il Wi-Fi : tecnologia basata su onde radio, l’access point è un dispositivo che interconnette dispositivi dotati di un’interfaccia Wi-Fi e di connetterli con una LAN cablata ed eventualmente a Internet, diffuso ambito domestico, aeroporti, stazioni ferroviarie e Università perché permette la la realizzazione di LAN e la condivisione a Internet senza cablaggio.

10. Internetworking È un dispositivo online quando risulta connesso ad una rete e offline quando è disconnesso, termini solitamente utilizzati per parlare di un calcolatore connesso a Internet. La connessione da parte di un privato, o piccola LAN di un’impresa o ente pubblico si realizza tramite un’azienda specializzata nella fornitura della connettività (Internet Service Provider, ISP, fornitore di servizi internet o un Internet Access Provider, IAP, fornitore di accessi internet). Dopo il versamento di un canone il cliente connette il proprio calcolatore o la LAN alla rete dell’ISP. La connessione avviene attraverso linea telefonica alla quale viene installato un modem , connesso al calcolatore a sua volta. Il modem funge da interfaccia tra un calcolatore e una linea telefonica e svolge le funzioni di:

  • modulazione : riceve un flusso di bit che codifica sotto forma di segnali elettrici lungo la linea telefonica;
  • demodulazione : decodifica i segnali elettrici sotto forma di bit da inviare al calcolatore. Per collegare due reti si necessita di due router (connessi tra loro mediante modem e linea telefonica). Egli analizza i blocchi di dati e gli instrada verso i router corrispondenti. ·Con un modem analogico è possibile collegare tra loro due calcolatori, in particolare un calcolatore ad una ISP tramite una linea telefonica commutata (quella delle abitazioni) ma data la lentezza oggi si è raggiunti da una ISDN una l inea telefonica digitale (e un modem ISDN) molto più veloce. Sono connessioni dial-up attive quando il modem impegna la linea. Oltre il canone bisogna anche saldare le tariffe alle chiamate del modem come fossero telefonate normali. ·le imprese più grandi si collegano all’ISP una linea dedicata ( CDN ) la quale versando un contributo mensile fisso permette una connessione 24/24 con velocità più elevati della connessione ISDN. ·La tecnologia DSL ( linea digitale per il cittadino privato), consente ad un ottimo rapporto prestazioni/prezzo di avere una connessione con velocità maggiore di quelle dial-up e con un filtro apposito può connettersi 24/24 senza disturbare il traffico telefonico sulla stessa linea. Tra le connessioni DSL abbiamo la ADSL (asimmetric DSL) con la caratteristica di asimmetria nella velocità di trasferimento dei dati ( download è maggiori di quello in upload). Altre DSL sono HDSL (con velocità simmetrica). Molto diffusi i router ADSL che comprendono: modem ADSL, Firewall, (protegge LAN da accessi non autorizzati) accesso Wi-FI e switch di rete. · WiMAX : connessione al ISP a banda larga e senza fili mediante un’antenna (per zone non coperte da ADSL). ·anche i cellulari possono operare come ISP per erogare connettività wireless (connessione tramite: Smartphone, calcolatore collegato a telefono che funge da modem e calcolatore con modem cellulare).

L’unione di un calcolatore e di un traduttore di un linguaggio di programmazione di alto livello costituisce una macchina astratta, in antitesi alla macchina fisica rappresentata dal solo calcolatore. Un programmatore che vuole realizzare uno stesso programma per diverse macchine fisiche deve imparare i singoli linguaggi macchina e a riscrivere il programma per ciascuno di essi, il programmatore di alto livello invece può scrivere il programma in tale linguaggio ignorando i dettagli dei singoli linguaggi. 1.3.3 Il software: opera dell’ingegno Il Software può essere duplicato facilmente e distribuito su supporti economici, ed è un opera dell’ingegno e come tale è soggetto alle norme sul diritto d’autore. Quando un’azienda commissiona ad una software house (azienda specializzata nella produzione di software) la produzione di uno specifico software ritagliato sulle proprie esigenze ( custom software), in genere il commettente acquista anche la versione sorgente e la titolarità del diritto d’autore per potere liberamente impiegare e manutenere il software. In altri casi il produttore di software immette il suo prodotto sul mercato mantenendone la titolarità del diritto d’autore e concedendone la licenza d’uso che vieta la copia, la modifica e la ridistribuzione. Oppure avviene la distribuzione via internet o su supporti ottici allegati a riviste, con una licenza shareware , prodotto utilizzato per un periodo di prova di solito un mese e oltre il termine viene chiesta la registrazione presso il produttore. Ci sono i prodotti con licenza freeware distribuiti gratuitamente dal titolare stesso poi c’è il software libero e opensource , entrambi distribuiti con la versione sorgente dal titolare del diritto d’autore che ne incoraggia l’uso. 1.3.4 Il software applicativo Il software per i calcolatori viene classificato in due categorie:

  • software applicativo: programmi detti applicazione che supportano l’utente nella risoluzione di problemi specifici in determinati ambiti applicativi;
  • software di base, programmi di utilizzo generale che gestiscono le risorse in dotazione al calcolatore e supportano l’esecuzione de software applicativo. Molte sono le applicazioni in ogni ambito applicativo, quelli più comuni sono i software di produttività individuale , distribuiti spesso in pacchetti, che ne raggruppano alcuni ( Microsoft Office, Open Office). Questi pacchetti comprendono applicazioni di video scrittura (Word), gestione di fogli elettronici ( Excel) presentazioni multimediali (Power Point), applicazioni di deskstop publishing, applicativi per la gestione di base di dati (Base, Access). E altri servizi disponibili on-line come la posta elettronica. 1.3.5 Il software di base: il sistema operativo Il software di base (sistema operativo SO) è una collezione di programmi di utilizzo generale per l’interazione tra utente e calcolatore, la gestione delle risorse in dotazione allo stesso calcolatore, e il supporto all’esecuzione del software applicativo. I sistemi operativi sono progettati con un architettura a macchine virtuali stratificate. Un SO è costituito dalla stratificazione di più macchine virtuali e si possono individuare queste componenti: nucleo, che gestisce la CPU e il suo impiego; il gestore della memoria, che gestisce la RAM; gestore dei dispositivi input/output; File system, gestisce l’archiviazione e il reperimento dei dati sulle memorie di massa; gestore della rete, gestisce la comunicazione con altri calcolatori connessi in rete; interprete dei comandi, che gestisce l’interazione con l’utente.

La combinazione di un calcolatore con un sistema operativo costituisce a sua volta una macchina virtuale con un interfaccia per i programmi applicativi e una per l’utente umano, spesso denominata piattaforma ( Wintel è CPU intel + SO Windows ). I sistemi operativi più comuni sono: Unix, sviluppato fine anni sessanta, impiegato su personal computer, work station, mini/super computer; Linux famiglia di sistemi operativi tra cui il famoso Ubuntu, software free e open source, si rifà a Unix;Windows prodotto dalla Microsoft è un OS per personal computer e server, per lo più con CPU intel ( compatibili con una GUI basata su finestre);Windows CE ( calcolatori embanded, PDA e smarth phone); Mac Os prodotto da Apple per i suoi personal computer Machintosh a una GUI a finestre; iPhone OS per smartphone iPhone derviato da Mac OS; Palm OS, prodotto da Palm Computing. La gestione della CPU I primi calcolatori elettronici negli anni ’40 erano monoprogrammati cioè in grado di mantenere memorie ed eseguire un solo programma per volta, e non disponevano di sistema operativo, il linguaggio macchina era codificato in genere su schede perforate. Negli anni ’50 si introdusse il monitor, una prima versione del sistema operativo in grado di automatizzare l’avvio dei programmi, che disponeva di un Job una sorta di programma per organizzare l’esecuzione di programmi. Le schede perforate erano organizzate in lotti corrispondenti ai <job e i calcolatori impiegati in tale modo vanno definiti sistemi di Batch. Negli anni ’60 i calcolatori divennero sistemi multi programmati e i videoterminali determinarono la progressiva scomparsa delle schede perforate e la possibilità di interazione tra calcolatore e utente. Successivamente si collegarono più terminali allo stesso computer in quanto vi la necessità (a causa della massiccia elaborazione e dell’attesa di un input dalla tastiera da parte della CPU) di collegare più terminali alo stesso calcolatore diventando così un sistema timesharing o multitasking. Simulando per ciascun utente la presenza di una CPU a lui dedicata. La Gestione della memoria centrale L’esecuzione di un programma richiede la creazione di un processo per creare nella RAM spazio per il codice e per i dati la coesistenza di più processi favorisce la nascita di conflitti tra essi per impiego di tali risorse e serve quindi all’interno del SO un gestore per separarli. Ciò viene realizzato con una tecnica introdotta negli anni ’60 nota come memoria virtuale , la quale rende disponibile a ogni processo il suo spazio di indirizzamento virtuale, per cui ogni programma opera come se avesse a completa disposizione l’intera RAM. La Gestione delle periferiche A partire dagli anni ’60 i sistemi operativi hanno incominciato a inglobare un gestore con lo scopo di consentire ogni processo di lavorare su periferiche virtuali. Ogni sistema operativo è distribuito con i driver per le periferiche più comuni. Gli altri sono in genere forniti dal produttore della periferica a corredo della stessa. Il driver fornisce al sistema operativo tutti i dettagli operativi per gestire una periferica.

Un worm è un intero programma che non è annidato in altri che tramite la rete invia copie di se stesso ad altri calcolatori. Un trojan horse è un programma che si presenta come un’inutile applicazione gratuita che durante l’esecuzione apre una breccia nelle difese dal calcolatore rendendolo di facile agli attacchi e accessi non autorizzati da parte di haker. Uno spyware è un programma installato senza autorizzazione che raccoglie informazioni sull’utente. Un adware è un programma che crea pubblicità sotto forma di immagini, pagine web... Il crimeware è progettato per il furto d’identità e l’ hoax è una bufala che tramite messaggio di posta elettronica annuncia arrivo di pericolosi messaggi infettati da virus. Esistono sistemi automatici per la difesa tra cui firewall (contro attacchi di trojan) e antiviru s (previene, individua ed elimina i malaware).

2. La rappresentazione dei dati per le scienze umane

2.1 La codifica dell’informazione

Per comprendere il funzionamento dei moderni calcolatori è opportuna approfondire la conoscenza delle codifiche da essi impiegate. I supporti fisici di cui dispongono, la memoria centrale e di massa, sono costruiti essenzialmente da dispositivi bistabili, in grado di rappresentare sequenze di simboli tratti da un alfabeto estremamente ridotto: i bit (le due cifre binarie “0” e “1”). Per ogni tipo di informazione che si vuole trattare (numerica, grafica...) con un calcolatore è necessario individuare una codifica che si avvalga di tale alfabeto.

2.2 La rappresentazione dei numeri

L’informazione di tipo numerico ha sempre attirato l’interesse dell’uomo alla ricerca di rappresentazioni efficaci di sistemi automatici o semi automatici per la sua elaborazione. 2.2.1 La rappresentazione decimale posizionale La notazione decimale posizionale si è diffusa in India ed è stata portata in Europa dagli Arabi. L’aggettivo “decimale” fa riferimento alla cardinalità (numero di elementi) dell’alfabeto utilizzato nella codifica: 10 simboli cifre da 0 a 9. L’aggettivo posizionale indica che ogni cifra assume un diverso ruolo in funzione della sua posizione. Si dice che 10 è la base del nostro sistema di rappresentazione grafica decimale. Aggiungendo inoltre il separatore decimale , in Italia la “,” si possono rappresentare i sottomultipli decimali dell’unità. 2.2.2 Le rappresentazioni non posizionali Il sistema di numerazione romano è un esempio di sistema numerico non posizionale ed è un sistema di numerazione che in origine costituiva un sistema di numerazione additivo che può essere così descritto:

  • è definito un insieme di simboli (simboli letterali) a ciascuno dei quali è associato un valore numerico, e un insieme di simboli rappresentano un numero. 2.2.3 La rappresentazione posizionale in base non decimale (saltato)

2.2.4 La codifica binaria Per rappresentare dei dati all’interno del calcolatore viene in genere adottata una codifica binaria. Per i numeri, in particolare, si ricorre alla notazione binaria posizionale: le cifre binarie 0 e 1 (bit) sono moltiplicate per le varie potenze di 2 ( 1byte=8 bit: 2 all’ottava=256 n naturali). Un nibble è un’unità di misura composta da una sequenza di 4 bit (2 alla quarta:16 n naturali) può essere rappresentato da una cifra esadecimale. La notazione esadecimale è molto popolare tra gli informatici perché invece che trascrivere lunghissime sequenze di bit si raggruppano i bit in nibble che vengono rappresentati dalla corrispondente cifra esadecimale.

2.3 La quantità di informazione: incertezza e probabilità

Se i dati (simboli su un supporto fisico), portano informazione si può pensare di misurare la quantità di informazioni contenuta in un supporto. La teoria dell’informazione , branca del ICT nata del 1948 si occupa dello studio sistematico delle basi teoriche dell’informazione e della comunicazione. La quantità di informazione portata dal documento di pubblicazione può essere definita come la differenza tra i logaritmi delle probabilità rispettivamente valutate dopo e prima della sua lettura.

2.4 L’informazione quantitativa: codifica analogica e digitale

Per la rappresentazione dell’informazione di tipo quantitativo esistono fondamentalmente due apporci: la codifica analogica e la codifica digitale. La codifica analogica di una grandezza richiede l’individuazione di una grandezza analoga: ad ogni incremento/decremento della prima dovrà corrispondere un corrispondente incremento/decremento della seconda (operazioni matematiche con i sassolini). La codifica digitale di una grandezza richiede invece l’introduzione di una alfabeto di simboli e di un insieme di regole di codifica che specificano come ogni possibile valore della grandezza è rappresentato da una sequenza di detti simboli e la rappresentazione numerica posizionale rappresenta la codifica digitare per eccellenza (calcolatrice digitale). L’approccio digitale più compatto: la sequenza di simboli “18453” è più gestibile che la stessa quantità in sassolini; la codifica analogica a differenza di quella digitale porta implicitamente meta- informazioni di tipo ordinale e metrico (si capisce subito la se quantità maggiore o minore). È impossibile senza specifiche informazioni sulle regole di codifica comprendere che “31” è un valore maggiore rispetto “13”. Il numero di sassolini è una grandezza discreta ovvero l’insieme dei suoi possibili valori è riconducibile ai numeri naturali, la temperatura invece è una grandezza continua , ovvero l’insieme dei suoi possibili valori è riconducibile ai numeri reali. Per esempio in un termometro analogico la rappresentazione della temperatura è continua: ogni sua variazione corrisponde ad una variazione della colonna di mercurio, invece in un termometro digitale, la rappresentazione della temperatura è discreta, rappresentando nello stesso modo una temperatura di 37° o 38°. Questa quantizzazione è una caratteristica in tutte le codifiche digitali. Nella codifica digitale se si vuole rappresentare l’andamento nel tempo è necessario ricorrere al campionamento. La frequenza di campionamento è definita come il numero di campioni acquisiti nell’unità di tempo prestabilita (es: 7 hz ( hertz), indica che ogni secondo vengono rivelati 7 campioni). Quantizzazione e campionamento sono l’essenza della codifica digitale ed entrambi sono approssimati e quindi perdono una parte di informazione.