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: bit, byte e rappresentazione dei dati - Prof. Audrito, Appunti di Elementi di Informatica

Appunti delle lezioni del professor Audrito

Tipologia: Appunti

2021/2022

In vendita dal 16/01/2023

Bttsra
Bttsra 🇮🇹

5

(1)

8 documenti

1 / 19

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Informatica
Codifica Binaria
Con 1 bit si rappresenta una scelta tra due alternative.
Esempio dell’asino di Buridiano: l’asino è assetato ed indeciso su quale
secchio d’acqua scegliere per iniziare a bere.
Se mancano le informazioni l’asino non sa quale secchio scegliere e
qundi è costretto a morire di sete.
All’asino manca 1 bit di informazione che lo aiuti a dirigersi verso il
secchio a sinistra (0) o versi quello di destra (1).
Come rappresentare una scelta tra più di 2 alternative? Usando una
sequenza di bit.
Sequenza di bit: sequenza di lunghezza adeguata al numero di alternative
da rappresentare.
N* bit permettono di rappresentare una scelta tra due alternative.
Per rappresentare una scelta tra N minore o uguale a 1 alternative, sono
necessari circa log2N bit.
Bit
Il bit è un’unità di misura dell’informazione, definita come la quantità
minima di informazione che serve a distinguere due possibili eventi.
Un bit è una cifra binaria ovvero uno dei due simboli del sistema
numerico binario, classicamente chiamati zero (0) e uno (1).
Alternative
1
2
3
4
5
6
7
8
bit
0
1
2
2
3
3
3
3
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13

Anteprima parziale del testo

Scarica Introduzione all'informatica: bit, byte e rappresentazione dei dati - Prof. Audrito e più Appunti in PDF di Elementi di Informatica solo su Docsity!

Informatica

Codifica Binaria

Con 1 bit si rappresenta una scelta tra due alternative.

Esempio dell’asino di Buridiano: l’asino è assetato ed indeciso su quale

secchio d’acqua scegliere per iniziare a bere.

  • Se mancano le informazioni l’asino non sa quale secchio scegliere e

qundi è costretto a morire di sete.

  • All’asino manca 1 bit di informazione che lo aiuti a dirigersi verso il

secchio a sinistra (0) o versi quello di destra (1).

Come rappresentare una scelta tra più di 2 alternative? Usando una

sequenza di bit.

Sequenza di bit: sequenza di lunghezza adeguata al numero di alternative

da rappresentare.

  • N* bit permettono di rappresentare una scelta tra due alternative.
  • Per rappresentare una scelta tra N minore o uguale a 1 alternative, sono

necessari circa log2N bit.

Bit

  • Il bit è un’unità di misura dell’informazione, definita come la quantità

minima di informazione che serve a distinguere due possibili eventi.

  • Un bit è una cifra binaria ovvero uno dei due simboli del sistema

numerico binario, classicamente chiamati zero (0) e uno (1).

Alternative 1 2 3 4 5 6 7 8

bit 0 1 2 2 3 3 3 3

  • Una sequenza di 8 bit è chiamata byte.

Byte

  • Byte=morso.
  • Il byte è diventato l’unità di misura fondamentale della quantità di

informazione e della capacità di memoria.

  • La possibilità di rappresentare info di varia natura attraverso numeri

permette di manipolare le informazioni rappresentate attraverso

operazioni fra numeri che i calcolatori sono in grado di compiere in

modo efficiente.

Byte

Bit

Rappresentazione di numeri in bit

I numeri, solitamente, vengono scritti in notazione posizionale.

Notazione posizionale: il significato di ogni cifra dipende dalla sua

posizione.

73 e 37 hanno significati diversi anche se sono composti dalle stesse cifre

(3 e 7).

Base 10: le cifre che compongono i numeri interi hanno significato di unità,

decine, centinaia (da dx verso sx).

235= 2 (centinaia) 3 (decine) 5 (unità)=

2x100 + 3x10 + 5x

0 1 1 0 0 0 1 0

Conversione di base

  • Convertire il numero x da base 10 a base 2:

235:2 = 117 r

117:2 = 58 r

58:2 = 29 r

29:2 = 14 r

14:2 = 7 r

7:2 = 3 r

3:2 = 1 r

1:2 = 0 r

DEC HEX BIN

0 0 OOOO

1 1 OOO

2 2 OO1O

3 3 OO

4 4 O1OO

5 5 O1O

6 6 O11O

7 7 O

8 8 1OOO

9 9 1OO

10 A 1O1O

11 B 1O

12 C 11OO

13 D 11O

14 E 111O

15 F 1111

  • Convertire il numero x da base 10 a base 16:

235:16 = 14 r

14:16 = 0 r

(235) 10 = (EB) 16

  • Convertire il numero x da base 2 a base 16 e 10: dividere in due blocchi

da 4 partendo da dx poi applicare il metodo delle carte.

Operazioni fra bit e byte

I calcolatori compiono le operazioni su bit a partire da alcune operazioni

fondamentali delle operazioni booleane.

  • NOT: negazione della variabile x.
  • AND: x AND y è vera se sia x che y sono vere.
  • OR: x OR y è vera se almeno una fra x e y è vera.
  • XOR: x XOR y è vera se solo una fra x e y è vera.

Un’operazione si dice:

A. Binaria se usa due variabili (AND, OR e XOR);

B. Unaria se richiede solo una variabile (NOT).

Bisogna prestare attenzione al fatto che “binario” sottolinea il numero di

operandi dell’operazione. Non indica la base di numerazione in cui si

opera.

La combinazione di operazioni definisce espressioni booleane. I valori

delle espressioni si rappresentano in tabelle di verità. Per ogni valore delle

variabili viene scritto il valore dell’espressione:

Valore 1 = Vero

Valore 0 = Falso

Rappresentazione del testo: codifica.

La codifica è la traduzione del testo in una sequenza di byte.

Da cosa è composto un testo?

Un testo è una sequenza di righe (line).

Ogni parola è composta da caratteri che sono termini più piccoli in cui può

essere scomposto un testo.

Standard ASCII

  • Il singolo carattere può essere codificato con lo standard ASCII.
  • Lo standard associa ad ogni carattere un singolo byte.
  • Lo standard ASCII non codifica:

Font;

Colore;

Aspetto (grassetto);

Dimensione;

Linguaggi diversi.

  • Individua 7 bit su 8.

Didascalia

UTF-

  • Sfrutta i byte che hanno il bit più significativo impostato a 1.
  • Vengono usati più byte per un singolo carattere:

конец

(fine)

In esadecimale:

72 75 73 73 6F 3A 2O DO 8A DO B4 D1 89 0A 66 69 6E 65

Ognuno dei 3 caratteri in cirillico è rappresentato da 2 byte.

  • Richiede 2 a 4 byte per un singolo carattere.

Rappresentazione delle immagini.

Le immagini sono codificate da pixel. Ogni pixel è codificato da una

tavolozza.

Le immagini si devono tradurre in una sequenza di byte (0-255)

  • risoluzione = + pixel

La risoluzione si misura con il numero di pixel usati in larghezza e altezza.

Codifica del colore

RGB: deriva dal modo di generare il colore nelle tv a tube catodico.

  • Ogni pixel viene colorato a seconda dell’intensità con cui viene colpito

da 3 fasci di elettroni.

  • R red

Architettura del calcolatore

Codifica delle istruzioni

  • Le istruzioni possono essere rappresentate da una sequenza di byte.
  • Programma = sequenza di istruzioni.
  • Codifica: concatenazione delle singole istruzioni.
  • Programma codificato = eseguibile da un calcolatore.
  • Codifica della singola istruzione = è una sequenza di byte composta da:

Codice operativo: determina il tipo

di istruzione;

Operandi: dati su cui opera

l’istruzione.

OA 62B1 ( istruzione )

Codice operativo

Operandi

Metafora del cuoco

  • Cuoco = processore (svolge le operazioni);
  • Ricetta = programma da eseguire;
  • Passi della ricetta = istruzione;
  • Ingredienti = operandi.

Componenti del calcolatore

  • Processore;
  • Memoria cache;
  • Bus di comunicazione;
  • Memoria principale;
  • Periferiche;
  • Controllore.

Processore

Esegue l’istruzione;

Registri del processore:

  • Piccole zone simili alla memoria;
  • Interni al processore;
  • Hanno un nome in base alle caratteristiche interne;
  • Sono più piccoli della memoria quindi sono più veloci;
  • Sono di quattro tipi:
    1. General purpose;
    2. MBR e MAR (gestiscono accessi in memoria);
    3. Di stato (stato processore);
    4. PC e IR (gestiscono le istruzioni).

Unità del processore: svolgono funzioni specializzate:

a) ALV: svolge operazioni aritmetiche e logiche;

b) FPU: svolge operazioni con numeri in virgola

mobile;

c) Control Unit: decodifica.

Fasi:

  • Fetch: istruzione da PC a IR;
  • Decode: calcolo della lunghezza (incremento di PC);
  • Execute: preleva operandi necessari per l’esecuzione - esegue

l’istruzione - si torna alla prima fase.

Codifica delle istruzioni:

a) CISC: istruzioni più complesse che fanno fare più cose;

b) RISC: poche ed elementari istruzioni.

Servono più RISC che CISC.

Velocità del processore:

  • Determinata dalla frequenza di clock;
  • La frequenza si misura in Hertz;
  • CISC: da 2 a 20 ciclo di clock;
  • RISC: da 1 a 4 ciclo di clock.

Accessi in memoria Cache:

  • Quando la CPU ha bisogno di alcuni dati, vengono prelevati dalla

memoria e da altre celle limitrofe;

  • I dati prelevati vengono copiati nella cache;
  • I dati necessari vengono poi copiati nella CPU e si esegue

l’istruzione.

  • Principio di località: permette alla cache di migliorare e prestazioni

della CPU.

Architetture multi-processore

Processore, memorie ecc.. sono costruite in silicio. Il silicio attraverso la

litografia può diventare conduttore e isolante.

Legge di Moore: determina una crescita esponenziale al numero di

transistor in un circuito integrato. Il numero di transistor raddoppia ogni

due anni.

Nel 2004 è stato cancellato il processore Intel perchè si raffredda

difficilmente.

Si è passati da un’architettura multi-processore a una multi-core.

Programmazione su carta a quadretti

I robot eseguono istruzioni. Le istruzioni sono azioni specifiche che i robot

sono stati predisposti a compiere.

Per eseguire le istruzioni i robot hanno bisogno di un programma (insieme

di sequenze).

Simboli per la programmazione

Mage Sort (sistema per fusione)

  1. La lista è divisa in due insiemi uguali, in modo casuale;
  2. Ogni insieme viene ordinato;
  3. Quando i singoli insiemi sono ordinati, si devono fondere;
  4. Fusione = rimuovere l’oggetto più piccolo fino a quando sono ordinate.

Problemi e algoritmi

L’algoritmo è l’insieme di istruzioni ordinate, non ambigue ed eseguibili.

Seguendo le istruzioni per ogni ingresso si ottiene n’uscita in un numero

finito di passi.

Problemi algoritmici = un algoritmo è una strategia per risolvere un

problema ben definito.

Un problema è ben definito quando:

a. L’insieme degli input è accettabile;

b. L’insieme degli input è corretto in funzione degli input.

Istanza di un problema = un algoritmo risolve un problema se produce

un’uscita corretta per ogni istanza ammissibile.

Esistono quattro tipi di problemi:

I. Trattabili: problemi la cui crescita è limitata;

II. Intrattabili: problemi con elevata crescita nel tempo;

III. NP-completi: si riconosce la correttezza di un’uscita in modo

efficiente;

IV. Intrattabili.

Ricerca di informazioni sul web = per facilitare la ricerca sul web a chi non

dispone degli strumenti adatti, sono nati i motori di ricerca.

Motori di ricerca = si basano su algoritmi per la ricerca. Le fasi della

ricerca sono:

  • Interrogazione;
  • Matching;
  • Ranking: ordina ciò che trova in base alla pertinenza.

Indicizzazione = interpretazione del contesto.

PageRank

I motori di ricerca stimano la corrispondenza di una pagina web rispetto

ad un’interpretazione dell’utente.

Metodo di Google

  • PageRank serve per il calcolo dell’importanza di una pagina;
  • L’importanza si valuta tramite i link;
  • Non tutti i link hanno lo stesso valore;
  • PageRank dipende da:

a. Numero di link;

b. Autorevolezza;

c. Numero di link in uscita.

  • Formula di PageRank: si deve calcolare navigando per i link. Si deve

attribuire un link a ciascuna pagina e si deve sommare il PageRank di

ciascuna pagina.

  • Per evitare il circolo vizioso del continuo ricalcolo del rank, l’algoritmo

ricorre ad un trucco: il navigatore causale.

  • Il navigatore decide, a caso, da che punto partire;
  • Sceglie a caso un link fra due punti;
  • Con una probabilità prefissata continua la navigazione da uno

dei due punti oppure sceglie una pagina a caso e riparte da

quella.

  • Ripetendo la procedura un numero sufficiente di volte e ricalcolando il

PageRank, sulla base di ogni interazione i valori delle pagine visitate su

stabilizzano e ci danno una stima della loro importanza.

  • Grafo: rappresentazione di rete. In un grafo la lunghezza delle linee può

non essere correlata al numero vicino.