Operazioni su numeri binari - PowerPoint PPT Presentation

1 / 31
About This Presentation
Title:

Operazioni su numeri binari

Description:

Operazioni su numeri binari Addizione: 0 + 0 = 0 con riporto 0 0 + 1 = 1 con riporto 0 1 + 0 = 1 con riporto 0 1 + 1 = 0 con riporto 1 Esempi: 1 0 1 + – PowerPoint PPT presentation

Number of Views:245
Avg rating:3.0/5.0
Slides: 32
Provided by: DIPARTIME54
Category:

less

Transcript and Presenter's Notes

Title: Operazioni su numeri binari


1
Operazioni su numeri binari
  • Addizione
  • 0 0 0 con riporto 0
  • 0 1 1 con riporto 0
  • 1 0 1 con riporto 0
  • 1 1 0 con riporto 1
  • Esempi

1 1 1 0
1 0 1 1 1 1 0 0 0
1 0 1 1 0 1 0 1 1 0 0 0 1 1 0 1 1 1 1 1 0
1 1
1 1 1 1 1 1 0 1 0
2
Overflow (il sistema decimale)
  • Consideriamo la base dieci con tre cifre
    decimali si possono rappresentare i numeri
    compresi tra 0 e 999
  • Il numero successivo (1000) richiede una quarta
    cifra che non abbiamo
  • In questo caso si dice che si ha un problema di
    overflow si genera un errore perché il numero
    1000 non può essere rappresentato
  • Poiché il numero 999 può essere scritto come
    103-1 (ossia 1000-1), possiamo enunciare la
    seguente regola
  • con N cifre decimali si possono
  • rappresentare i numeri da 0 a 10N-1

3
Overflow (il sistema decimale)
  • Esempio alla rappresentazione decimale si
    possono applicare le operazioni aritmetiche
  • Vogliamo usare solo tre cifre decimale
  • 325 158 483
  • 6 98 104
  • 12 45 57
  • 678 421 1099
  • 560 923 1483
  • 999 1 1000

Tre cifre sono sufficiente
Tre cifre non sono sufficiente overflow
4
Overflow (il sistema binario)
  • Consideriamo la base due con tre cifre binarie
    si possono rappresentare i numeri compresi tra 0
    e 23-1 (ossia 8-1), possiamo enunciare la
    seguente regola
  • con N cifre binarie si possono
  • rappresentare i numeri da 0 a 2N-1

5
Overflow (il sistema binario)
  • Esempio di overflow nel sistema binario dovuto a
    operazioni aritmetiche
  • 5 4 9 (in sistema decimale)
  • abbiamo usato solo un cifre decimale per il
    risulto
  • Ricordiamo 510 1012 , 410 1002
  • Errore overflow
  • (non può essere codificato
  • 910 10012 con tre bit)

1 0 1 1 0 0 1 0 0 1
(in sistema binario)
6
Rappresentazione dei numeri
  • In realtà, una semplice codifica binaria come
    quella discussa fino ad ora non è sufficiente,
    per due motivi
  • numeri negativi
  • numeri con la virgola
  • Per questi numeri vengono utilizzate delle
    rappresentazioni differenti

7
Codifica dellinformazione
  • Quanti bit si devono utilizzare per rappresentare
    300 simboli?
  • Quanti byte occupa la parola psicologia se la
    si codifica utilizzando il codice ASCII?
  • Dati 12 bit per la codifica, quante informazioni
    distinte si possono rappresentare?

8
Codifica delle immagini
  • Quanti byte occupa unimmagine di 100 x 100 pixel
    in bianco e nero?
  • Quanti byte occupa unimmagine di 100 x 100 pixel
    a 256 colori?
  • Se unimmagine a 16,7 milioni di colori occupa
    2400 byte, da quanti pixel sarà composta?

9
Codifica dei suoni
  • Quanto spazio occupa un suono della duranta di 10
    secondi campionato a 100 Hz (100 campioni al
    secondo), in cui ogni campione occupa 4 byte?

10
Codifica dei numeri
  • Codificare il numero 13210 nella corrispondente
    rappresentazione binaria.
  • Ordinare in modo crescente i sequente numeri
    10410 , 128 , 1000100002 , 1001110

11
Strutturazione logica dei dati i file
  • Informazione più complesse possono essere
    composte a partire da informazioni elementari
  • Esempio di una banca (Console e Ribaudo)
  • Supponiamo di voler mantenere allinterno di un
    computer tutte le informazioni riguardanti i
    clienti
  • Per ogni cliente dovremo registrare
  • Il cognome
  • Il nome
  • Lindirizzo
  • Il numero di conto
  • La disponibilità sul conto
  • La foto

12
Strutturazione logica dei dati i file
  • I dati riguardanti ciascun cliente devono essere
    raggruppati, mentre i dati riguardanti clienti
    diversi devono essere mantenuti separati tra di
    loro
  • Le informazioni devono essere organizzate in modo
    tale che il loro reperimento e il loro uso
    risultino semplici
  • È necessario introdurre dei meccanismi per la
    strutturazione dei dati, costruendo strutture di
    codifica delle informazioni composte

13
Strutturazione logica dei dati i file
  • Per lesempio della banca
  • Tutte le informazioni riguardanti un cliente
    possono essere viste come un blocco le cui
    componenti possono eventualmente essere
    analizzate independentemente

14
File, record e campi
  • Un file è un meccanismo di strutturazione delle
    informazioni che permette di aggregare
    informazioni elementari in strutture più
    complessse
  • Un file può essere definito introducendo i
    concetti di campo e record

15
File, record e campi
  • Un campo è costituito da un insieme di byte
  • Serve per codificare una singola informazione che
    può essere
  • numerico
  • alfabetica o alfanumerico
  • unimmagine o un suono
  • Un record è constituito da un insieme di campi
    logicamente correlati tra di loro (quindi è un
    insieme di byte)
  • Un file è costituito da una sequenza di record

16

file
record
campo
campo
campo
  • Un campo è costituito da un insieme di byte
  • Un record è constituito da un insieme di campi
    logicamente correlati tra di loro
  • quindi è un insieme di byte
  • Un file è costituito da una sequenza di record
  • quindi è un insieme di byte

17
File, record e campi
  • Nellesempio della banca le informazioni relative
    ad un singolo cliente possono essere viste come
    un record i cui campi sono
  • Un campo alfabetico per il nome
  • Un campo alfabetico per il cognome
  • Un campo alfanumerico per lindirizzo
  • Un campo numerico per il numero del conto
  • Un campo numerico per la disponibilità sul conto
  • Un campo immagine per la foto
  • Le informazioni riguardanti la banca possono
    essere viste come un file costituito da un
    insieme di record, uno per ogni cliente

18
File, record e campi
  • Un aspetto importante riguarda la lungezza dei
    record
  • Vi sono due possibilità
  • file con record a lunghezza costante
  • file con record a lunghezza variabile

19
Record a lunghezza costante
  • Solo per comodità, possiamo rappresentare
    graficamente un file con record a lunghezza
    costante come una tabella


114561 513,89 Massimiliano Rossi Via Milano 151
271564 7000,14 Cristina Bianchi Corso Venezia 1
102574 13,67 Elena Rossi Via Milano 151
143256 1208,90 Ada Bo Via Po 1
  • Per definire un file con record a lunghezza
    costante occorre precisare il numero di byte
    destinati a ciascun campo

20
Record a lunghezza costante
  • La scelta di avere file con record a lunghezza
    costante presenta due svantaggi
  • è difficile stimare a priori la dimensione di
    ciascun campo
  • nella maggior parte dei casi, linformazione che
    deve essere memorizzata allinterno di un campo
    occupa meno spazio di quello a disposizione
  • Lalternativa alla stabilire a priori le
    dimensioni dei campi è quella di avere campi a
    dimensione variabile

21
Record a lunghezza variabile
  • Nel caso di campi a dimensione variabile sorge
    tuttavia il problema di separare le informazioni
    tra di loro

22
Struttura fisica di un file
  • Sebbene abbiamo usato una struttura a tabella per
    discrevere logicamente le infoirmazioni contenute
    in un file è importante notare che un file è una
    struttura lineare
  • record1 record2 record 3
  • Questo è anche il modo in cui un file viene
    memorizzato fisicamente nella memoria di un
    elaboratore

23
Struttura fisica di un file
  • Nel caso di campi, e quindi di record con
    dimensione variabili, è necessario introdurre dei
    caratteri speciali per separare le varie
    informazioni
  • Per esempio, per separare i record e per
    separare i campi
  • 1146561513,89MassimilianoRossiVia Milano
    1512715647000,14CristinaBianchiCorso Venezia
    1
  • I separatori e non sono necessari nel
    caso di file con campi a dimensioni costanti

24
Struttura fisica di un file
  • Un altro aspetto fondamentale riguarda il
    problema del reperimento delle informazioni
  • I dati che vengono memorizzati in un file devono
    poter essere letti e modificati
  • I principali metodi di accesso sono
  • accesso sequenziale
  • accesso diretto
  • accesso con chiave

25
I file ad accesso sequenziale
  • La ricerca dei record avviene sempre a partire
    dallinizio del file, leggendo tutti i record uno
    dopo laltro, fino a quando non si arriva a
    quello disiderato
  • Esempio supponiamo di voler leggere i dati sul
    cliente Bianchi
  • Dobbiamo leggere tutte le informazioni fino ad
    arrivare al cognome cercato
  • 1146561513,89MassimilianoRossiVia Milano
    1512715647000,14CristinaBianchiCorso Venezia
    1
  • Questo metodo di accesso non è efficiente perché
    ogni volta la ricerca viene effettuata a partire
    dallinizio del file

26
I file ad accesso diretto
  • Lideale, dal punto di vista delle velocità di
    accesso, sarebbe di poter accedere direttamente
    ad un record senza dover considerare tutti quelli
    precedenti
  • Per fare questo è necessario conoscere
    esattamente il punto del file (sequenza di
    record) in cui inizia il record cui si è
    interessati

27
I file ad accesso diretto
  • Il punto di inizio di un record allinterno di un
    file prende il nome di indirizzo di record
  • Un file è un sequenza di byte e lindirizzo di
    un byte è il numero che
  • corrisponde alla posizione del byte nella
    sequenza
  • Il primo byte ha indirizzo 0, il seconda ha
    indirizzo 1, ecc.
  • Lindirizzo di un campo è quindi lindirizzo del
    primo byte del campo
  • Lindirizzo di un record è lindirizzo del primo
    campo del record

28
I file ad accesso diretto
  • Se lindirizzo di un record è noto, è possibile
    posizionarsi direttamente in quel punto ed
    accedere allinformazione in modo diretto, senza
    considerare le informazione precedenti
  • In questo caso il tempo necessario per accedere a
    un dato non depende dal punto in cui esso è
    memorizzato nella sequenza

29
I file ad accesso diretto
  • Nel caso di record a lunghezza costante
  • È possibile calcolare il punto di inizio di
    ciascun record, anche senza conoscerne
    direttamente lindirizzo
  • Esempio supponiamo di avere un file con record
    lunghi 50 byte
  • I record inizieranno rispettivamente in posizione
    0, 50, 100, 150, nel file
  • In generale, dato un file con record lunghi M
    byte, per recuperare il record in n-esima
    posizione ci si dovrà posizionare al byte che si
    trova in posizione
  • M(n-1)

30
I file ad accesso diretto
  • Nel caso di record a lunghezza costante
  • Per esempio file con record a lunghi 10 byte
    (M10)
  • Per recuperare il record in secondo posizione ci
    si dovrà posizionare al byte che si trova in
    posizione 10 ( M(n-1) 10(2-1) )
  • Per recuperare il record in quarto posizione ci
    si dovrà posizionare al byte che si trova in
    posizione 30 ( M(n-1) 10(4-1) )

0 1 2
9 10
20
30




10 byte
10 byte
10 byte
10 byte
31
I file ad accesso diretto
  • Nel caso di record a lunghezza variabile
  • Non è possibile calcolare il punto di inizio di
    un record
  • Quindi non è possibile usare laccesso diretto
Write a Comment
User Comments (0)
About PowerShow.com