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


Introduzione all'informatica, Appunti di Fondamenti di informatica

Una panoramica sull'informatica, che si occupa del trattamento dell'informazione attraverso processi, tecnologie e metodi. L'informazione può essere numerica, testuale o multimediale e viene elaborata, immagazzinata e trasferita. L'informatica ha applicazioni in diversi campi, come la salute, l'economia, lo spettacolo e l'arte. Il documento spiega anche come i computer utilizzano segnali digitali e come vengono rappresentati i caratteri e le immagini. Vengono inoltre presentati i sistemi di numerazione posizionale e i sistemi di numerazione in informatica.

Tipologia: Appunti

2023/2024

In vendita dal 15/01/2024

maria_concetta02
maria_concetta02 🇮🇹

4 documenti

1 / 52

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
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

Anteprima parziale del testo

Scarica Introduzione all'informatica e più Appunti in PDF di Fondamenti di informatica solo su Docsity!

Informatica

L’informatica raggruppa tutti quei processi, tecnologie e metodi rivolti al trattamento dell’informazione. Informazione+automatica. Trattamento dell’informazione: Include:

  • Elaborazione;
  • Immagazzinamento;
  • Trasferimento. In definitiva l’informatica si riferisce ai processi e alle tecnologie che si occupano dell’immagazzinamento, dell’elaborazione e del trasferimento dell’informazione. Cos’è l’informazione?
  • Numerica, testuale, multimediale (immagini, suoni, foto, video..); Campi di applicazione:
  • Salute e medicina: interventi a distanza, monitoring dei pazienti a distanza;
  • Economico e commerciale: commercio elettronico, banche telematiche e denaro elettronico, investimenti;
  • Spettacolo e arte: musica digitale, manipolazione ed animazione di immagini, effetti speciali, musei virtuali. Alcuni antenati:
  • 1674 - W. Leibnitz “scopre” il sistema binario e concepisce il calcolatore a scatti di Leibnitz. Benchè egli fu influenzato dalla Pascalina (l’addizionatrice inventata da Pascal nel 1642), il suo progetto fu assolutamente innovativo sia da un punto di vista concettuale che tecnico. Diversi problemi meccanici, oltre a un difetto di progettazione nel meccanismo di riporto, impedirono alla macchina di funzionare in modo affidabile. Tuttavia la calcolatrice di Leibnitz, in inglese Stepped Reckoner, è stata la prima calcolatrice meccanica della storia in grado di eseguire le quattro operazioni matematiche: addizione sottrazione, divisione e moltiplicazione.
  • 1840 - Macchina analitica di Babbage, un calcolatore a schede perforate. La macchina analitica, in inglese Analytical Engine, è stato il primo prototipo di un computer meccanico sviluppato per eseguire compiti generici. Infatti rappresenta un importante passo nella storia dell’informatica.

Hardware e software:

  • Hardware: letteralmente ferramente, è l’insieme delle componenti fisiche di un computer, di solito formato da un insieme di componenti e circuiti elettronici.
  • Software: l’insieme dei programmi che, eseguiti dall’hardware, permettono al computer di svolgere i più svariati compiti. Come ragiona un computer:
  • Come detto, il computer è una macchina programmabile che opera mediante la memorizzazione, l’elaborazione e la trasmissione di informazioni.
  • In generale le informazioni, e i segnali in genere, possono essere trasmessi in due modi distinti: analogico e digitale:
  • Analogico: le grande fisiche sono funzioni continue del tempo.
  • Digitale: le grandezze fisiche sono funzioni discrete del tempo.

Come ragione un computer: I computer utilizzano segnali di tipo digitale perchè:

  • Computer (e processori) che utilizzano i segnali digitali sono più facili da costruire.
  • Le informazioni e tutti i segnali digitali sono meno affetti da disturbi da trasmissione (esempio: tv digitale terrestre).
  • In particolare i computer utilizzano informazioni sotto forma di impulsi elettrici che possono assumere solo due valori: 0 (assenza di segnale, o interruttore spento) e 1 (presenza di segnale, o interruttore acceso). Tali impulsi sono detti bit (Binary digIT) e rappresentano l’unità fondamentale di informazione dei computer.
  • Un bit può quindi memorizzare solo due stati. Per rappresentare lettere e numeri è necessari utilizzare gruppi di bit.
  • Un raggruppamento di 8 bit viene chiamata byte ed è in grado di rappresentare 256 valori.
  • Codifica binaria: ogni possibile valore si ottiene provando tutte le combinazioni possibili di 0 e 1 nelle otto posizioni disponibili del byte, per esempio 000000001, 00000011111, 11111111, ecc.. il numero 256 corrisponde a 2 elevato a 8. Dato che gran parte delle informazioni elaborate da un PC sono numeri o lettere, il byte è stato usato come unità di misura della quantità di dati memorizzati su computer e della capacità di immagazzinamento dei dispositivi di memorizzazione. Come avviene per le unità di misura, anche per i byte si sono definiti dei multipli:

Mappa ASCII: Esempi: Codifica delle immagini:

  • Esistono molte tecniche per la memorizzazione delle immagine.
  • Di solito queste tecniche si basano sul principio di dividere l’immagine in un numero definito di “quadratini”, chiamati pixel (picture element), e memorizzare un uno o più valori numerici per ogni pixel, per rappresentare la luce e il colore di quel quadratino (codifica raster).
  • Ovviamente questo procedimento porta ad una approssimazione dell’immagine originale.
  • Maggiore è il numero di pixel, maggiore sarà l’accuratezza dell’immagine sull’ elaboratore.
  • Codifica delle immagini in scala di grigi: si usa una rappresentazione binaria, ad ogni livello di grigio corrisponde una sequenza di bit.
  • Ad esempio, utilizzando quattro bit si possono rappresentare 2^4=16 livelli di grigio, mentre con otto bit ne possiamo distinguere 2^8=256. Codifica delle immagini a colori:
  • Il colore, come nelle televisioni, viene generato dalla composizione di tre colori “primari”: red, green, blue (video RGB).
  • Ad ogni colore si associa una possibile sfumatura o gradazione mediante un’opportunità sequenza di bit.
  • Utilizzando 2 bit per ogni colore primario si possono ottenere 4 gradazioni per ognuno di essi, cioè 64 colori. Un pixel richiede quindi un byte circa (6 bit) in questa maniera.
  • Utilizzano 8 bit per pixel si può, ad esempio, riservare 3 bit per il rosso, 3 bit per il verde, e 2 per il blu (l’occhio umano è meno sensibile alle variazione di tonalità del blu).
  • A 32 bit: 8 bit per colore (in totale 24) più 8 bit per memorizzare le trasparenze. In totale si ottengono circa 16,8 milioni di colori possibili.
  • Memorizzare un’immagine raster (nel formato BMP, bitmap picture) richiede molto spazio.
  • Immagine a 6 megapixel: 3000x2000, tralasciando le trasparenze si hanno: 24 bit per pixel ( byte)x3000x2000=18000000 byte= circa 17 Mbyte.
  • Immagine a 12 megapixel: 4000x3000, 3 bytex4000x3000=36000000byte= circa 34 Mbyte. Soluzione: uso di appropriate codifiche che facciano risparmiare spazio:
  • Codifiche Lossles (senza perdita di informazioni).
  • Lossy (con perdita di informazioni, esempio:Jpg).
  • Altre codifiche: codifiche ibride (raster/vettoriale): ogni elemento geometrico primitivo viene specificato individualmente, esempio: PDF. Codifica dei video:
  • In linea di principio, un filmato può essere visto come una sequenza di immagini statische, dette frames.

Sistemi di numerazione posizionale:

  • Ogni numero si esprime come la somma dei prodotti di ciascuna cifra per la base elevata all’esponente che rappresenta la posizione.
  • Esempio: 237 (notazione decimale compatta) si può criteri come 2x10+3x10^1+7x10^0. Sistemi di numerazione in informatica:
  • La notazione posizionale può essere usata con qualunque base creando così differenti sistemi di numerazione. La base indica il numero di cifre utilizzate dal sistema di numerazione:
  • Numerazione decimale, 10 cifre (0,1,2,3,4,5,6,7,8,9);
  • Numerazione ottale, 8 cifre (0,1,2,3,4,5,6,7);
  • Numerazione esadecimale, 16 cifre (0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F);
  • Numerazione binaria, 2 cifre (0,1). Cambiamento di base, da base n a base 10:
  • È sufficiente rappresentarlo esplicitamente senza usare la notazione compatta:

Cambiamento di base, da base 10 a base N:

  • In questo caso bisogna procedere calcolando tutti i resti delle successive divisioni del numero che vogliamo convertire per la base n. Somma e prodotti tra numeri binari:
  • Per sommare o fare il prodotto di due numeri binari si procede sempre come si fa con i numeri decimali, facendo però attenzione al fatto che in binario 1+1=10!

Rappresentazione dei numeri interi con segno: L’overflow:

  • Tutti i computer, senza alcune eccezione, trattano i numeri sempre con un numero fisso di cifre binarie (ad esempio 32, 64 o più).
  • Se però si eseguono operazioni tra numeri (ad esempio, somme, moltiplicazioni o elevamento a potenze) che portano numeri più grandi del numero massimo rappresentabile dal computer, si ha un errore, chiamato errore di overflow. Esempio: supponendo di avere 8 bit

Rappresentazione dei numeri con virgola in binario: Per convertire un numero decimale ad una base B:

  1. Moltiplicare il numero per B;
  2. Togliere la parte interna, che è la prima cifra;
  3. Moltiplicare la parte decimale rimanente per B;
  4. Tornare al punto 1 fino a quando il valore che rimane è 0.

Rappresentazione dei numeri con virgola mobile, STANDARD IEEE 754 32 bit singola precisione: Algoritmo (STANDARD IEEE 754): 64 bit doppia precisione

Esercizi sui numeri binari: Tipologie di hardware:

  • Hardware di input;
  • Hardware di output;
  • Hardware (interno) di elaborazione;
  • Hardware di memorizzazione;
  • Hardware di comunicazione.

Come funziona un processore:

  • Per capire le sue funzioni possiamo immaginare il microprocessore o e suddiviso in due parti: l’unità di controllo (CU, Control Unit) e l’unità logico-aritmetica.
  • L’unità di controllo ha il compito di controllare le informazioni e i comandi che vengono inseriti nel computer e di tradurli in un linguaggio comprensibile agli altri componenti del computer; è esportabile dello “stoccaggio” delle informazioni e dei comandi nella memoria di lavoro del computer, il loro trasferimento alla ALU e viceversa.
  • L’unità logico-aritmetica esegue tutte le operazioni logiche e aritmetiche che vengono passate dall’unità centrale.
  • A questa è stata affiancata negli ultimi decenni una unità chiamata FPU (floating point unit) che si occupa delle operazioni di calcolo tra numeri in “virgola mobile” più complesse.
  • Inoltre un processore contiene dei registri, un dispositivo per gestire la memoria, un dispositivo per il controllo dell’I/O e la cache. Altre unità del processore:
  • Memory controller: si occupa della gestione della memoria centrale.
  • I/O: si occupa della gestione dell’input/output delle varie periferiche (esempio: scrittura su disco).
  • Registri: locazioni di memoria dove vengono eseguite le operazioni (esempio: EAX, EBX, ecc.. per architettura X86), vengono tenute informazioni relative allo stato attuale e vari flagelli di errore relativi ed eventi rari (esempio: overflow, registro PSW), o la prossima estrusione da eseguire (PC, program counter).
  • Di solito la tecnologia di un processore (esempio: 128 bit) si riferisce alla lunghezza di tali registri.
  • Cache: memoria speciale all’interno del processore per velocizzare le operazioni.
  • Nota bene: il processore esegue le operazioni solo sui registri e non direttamente sulla memoria centrale o sulla cache.

Come funziona un processore: E l’Apple M1? Il componente ANE (Apple Neural Engine) è un tipo di processore NPU (Neural Processing Unit). Svolgono lavori particolari quali apprendimento automatico e Machine learning (ML) alla velocità di 11 trilioni (11.000 miliardi) di operazioni al secondo.

  • UMA (Unified Memory Architecture, anche riferita alla sua tecnologica Uniform Memory Access) è un’architettura “unificata”). UMA permette di accedere agli stessi medesimi dati in memoria in processi contemporanei.