Rappresentazioni numeriche

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Sistemi di numerazione
Informatica Generale Susanna Pelagatti
Fondamenti di Informatica
Rappresentazione di Numeri Reali
Rappresentazioni numeriche
Trasmissione delle informazioni
Codifica dei Dati Idea: vogliamo rappresentare dati eterogenei utilizzando un linguaggio che l’elaboratore puo’ facilmente manipolare Essenzialmente vogliamo.
Sistemi di numerazione e codici
Esercitazioni su rappresentazione dei numeri e aritmetica
Rappresentazione dei dati e codifica delle informazioni
Codifica binaria dell’informazione
Informatica 3 Codifica binaria.
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
Sistemi di Numerazione
Corso di Informatica (Programmazione)
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Rappresentazione dellinformazione su calcolatore Anno Accademico 2009/2010.
Corso di Informatica (Programmazione)
Settembre 2002IFTS2002 Acq. Dati Remoti: INFORMATICA 1 Rappresentazione dellinformazione (1)
Corso di Informatica per Giurisprudenza
Esistono 10 tipi di persone al mondo: Quelli che conoscono il codice binario & Quelli che non lo conoscono.
Rappresentazioni numeriche
Rappresentazione binaria dei numeri interi senza segno.
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
Rappresentazioni numeriche. Introduzione Un calcolatore elettronico dispone di uno spazio finito per memorizzare le cifre che esprimono un valore numerico.
4) Rappresentazione dei dati in memoria
Cos’è un problema?.
Il sistema binario.
Gli esseri viventi ricevono informazione direttamente dal mondo circostante e dai propri simili attraverso i sensi (percezione). La percezione, tuttavia,
Codifica binaria Rappresentazione di numeri
Rappresentazione di numeri relativi (interi con segno)
Programma del corso Dati e loro rappresentazione Architettura di un calcolatore Sistemi operativi Linguaggi di programmazione Applicativi: - fogli elettronici.
Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili: Overflow indica un errore nella rappresentazione del risultato in.
Conversione binario - ottale/esadecimale
Conversione binario - ottale/esadecimale
Rappresentazione di Numeri Reali
RAPPRESENTAZIONE DELL’INFORMAZIONE
Rappresentazione dell’informazione
ARITMETICA BINARIA.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
Dalle potenze ai numeri binari
La rappresentazione delle informazioni in un computer Seconda parte.
Rappresentazione dell’Informazione
Rappresentazione dell’informazione nel calcolatore.
Informatica Docente : Jeremy Sproston Orario: Gruppo 1: (gli studenti i cui cognomi iniziano con la lettera A fino alla lettera L (inclusi)) Lunedì ore.
Capitolo 2 Architettura di un calcolatore
Informatica Lezione 3 Scienze e tecniche psicologiche dello sviluppo e dell'educazione (laurea triennale) Anno accademico:
ARCHITETTURA DEI SISTEMI ELETTRONICI
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 11.
Rappresentazione della Informazione
RETI LOGICHE Daniele Manzaroli
Rappresentazione dell’informazione
Rappresentazioni a lunghezza fissa: problemi
La Rappresentazione dell’Informazione
Rappresentazione dell'informazione
La codifica dei numeri.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Conversione binario-ottale/esadecimale
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Codifica dei numeri Il codice ASCII consente di codificare le cifre decimali da “0” a “9” fornendo in questo modo una rappresentazione dei numeri Per esempio:
Codifica binaria dell’informazione
Rappresentazione dei numeri
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 11.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Codifica binaria dell’informazione Marco D. Santambrogio – Ver. aggiornata al 24.
I sistemi di numerazione
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Numeri con segno ed in virgola Marco D. Santambrogio – Ver. aggiornata al 20 Marzo.
La numerazione ottale. Il sistema di numerazione ottale ha ampio utilizzo in informatica E’ un sistema di numerazione posizionale La base è 8 Il sistema.
Transcript della presentazione:

Rappresentazioni numeriche Sistemi posizionali, numeri binari, complemento a due

Conversione dalla base 10 alla base 2 Dato un numero N la sua rappresentazione in base due sarà del tipo ck ck-1ck-2 … c1c0 (dove “ci” è una cifra binaria) Per convertire un numero in base dieci nel corrispondente in base due si devono trovare i resti delle divisioni successive del numero N per due

Conversione dalla base 10 alla base 2 Esempio: il numero 610: 6/2 = 3 resto 0 3/2 = 1 resto 1 1/2 = 0 resto 1 Leggendo i resti dal basso verso l’alto, si ha che la rappresentazione binaria del numero 610 è 1102

Conversione dalla base 10 alla base 2 Esempio: il numero 34510: 345/2 = 172 resto 1 172/2 = 86 resto 0 86/2 = 43 resto 0 43/2 = 21 resto 1 21/2 = 10 resto 1 10/2 = 5 resto 0 5/2 = 2 resto 1 2/2 = 1 resto 0 1/2 = 0 resto 1 Leggendo i resti dal basso verso l’alto (in quanto si ottengono a partire dalla cifra meno significativa, l’unità), si ha che rappresentazione binaria del numero 34510 è 1010110012

Conversione dalla base 2 alla base 10 Sia cm cm-1cm-2 … c1c0 un numero rappresentato in base 2, usiamo: cm x 2m + cm-1 x 2m-1 + cm-2 x 2m-2 + … + c1 x 21 + c0 x 20 = N Esempio: 1010110012 1 x 28 + 0 x 27 + 1 x 26 + 0 x 25 + 1 x 24 + 1 x 23 + 0 x 22 + 0 x 21 + 1 x 20 = 256 + 64 + 16 + 8 + 1 345

Altri basi: ottale, esadecimale Sistema ottale Utilizza una notazione posizionale basata su otto cifre (0,1,…,7) e sulle potenze di 8 Esempio: 1038 = 1 x 82 + 0 x 81 + 3 x 80 = 67 Sistema esadecimale Utilizza una notazione posizionale basata su sedici cifre (0,1,…,9,A,B,C,D,E,F) e sulle potenze di 16 Esempio: 10316 = 1 x 162 + 0 x 161 + 3 x 160 = 259 Esempio: AC416 = 10 x 162 + 12 x 161 + 4 x 160 = 2756

Operazioni su numeri binari Vediamo solo il caso della addizione nella codifica binaria: Si mettono in colonna i numeri da sommare Si calcola il riporto ogni volta che la somma parziale supera il valore 1 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

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

Codici a lunghezza fissa Se si usa un numero prestabilito di cifre si ha un codice a lunghezza fissa In questo modo si pone anche un limite al numero massimo rappresentabile Esempio: qual è il numero più grande rappresentabile con 4 cifre? In base 10: 9999 In base 2: 1111 (=1510) In base 16: FFFF (=6553510) In base 8: 7777 (=409510)

Codici a lunghezza fissa Numeri maggiori di quello massimo rappresentabile causano problemi di overflow Ovvero per essere rappresentati richiedono più cifre di quelle a disposizione Esempio: 4 cifre In base 10: 9999 + 1 = 1000010 In base 2: 1111 + 1 = 100002 (=1610) In base 16: FFFF + 1 = 1000016 (=6553610) In base 8: 7777 + 1 = 100008 (=409610)

Codici a lunghezza fissa In generale, con N cifre a disposizione e base b il più grande numero (intero positivo) rappresentabile si può esprimere come bN – 1 Esempio: N=4 In base 10: 9999 = 104 - 1 In base 2: 1111 = 24 - 1 In base 16: FFFF = 164 - 1 In base 8: 7777 = 84 - 1

Codici a lunghezza fissa 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)

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 Per esempio “complemento a due” per rappresentare i numeri negativi

Rappresentazione dei numeri negativi Si può pensare di usare un bit per il segno “0” identifica “+” “1” identifica “-” Gli altri bit vengono usati per codificare il valore assoluto (modulo) del numero

Rappresentazione dei numeri negativi Con 3 bit avremo: Problemi: Il numero 0 ha due rappresentazioni Per l’operazione di somma si deve tener conto dei segni degli addendi 000 +0 001 +1 010 +2 011 +3 100 -0 101 -1 110 -2 111 -3 0 0 1 0 + (+2) 1 0 1 1 = (-3) 1 1 0 1 (-5 ERRATO)

Rappresentazione dei numeri negativi Complemento a due: Il bit più significativo rappresenta il segno del numero: 0 per i numeri positivi e 1 per i numeri negativi La rappresentazione di un numero positivo si ottiene codificando il valore assoluto del numero con i bit restanti La rappresentazione di un numero negativo si ottiene in tre passi: Si rappresenta in complemento a due il numeri positivo con lo stesso valore assoluto del numero negativo da codificare Si invertono tutti i bit in tale rappresentazione (01,10) Si somma uno al risultato ottenuto al passo precedente

Complemento a due Esempio (con 4 bit a disposizione): La codifica di +5 è 0101 La codifica del numero –5 avviene in tre passi: La rappresentazione in complemento a due di +5 è 0101 Invertendo tutti i bit si ottiene 1010 Sommando 1 si ottiene 1011, la rappresentazione in complemento a due di -5

Complemento a due Per ottenere un numero con segno data la sua rappresentazione in complemento a due: Se il primo bit è 0 il numero è positivo: per calcolarne il valore assoluto si esegue la conversione da binario a decimale Se il primo bit è 1 il numero è negativo: Si ignora il primo bit Si invertono i restanti bit Si converte il numero da binario a decimale Si somma uno al numero ottenuto per ottenere il valore assoluto del numero negativo

Complemento a due Esempio: 1011 Si esclude il primo bit Invertendo 011 si ottiene 100 che è codifica di 4 Va aggiunto 1 per ottenere il valore assoluto 5 Il risultato è quindi -5

Esercizio Esercizio: Rappresentare -3510 in complemento a 2 001000112 = +3510 11011100 + 1 = ------------ 11011101 Complemento a uno Soluzione: -3510 = 110111012

Complemento a due Esempi di addizione: Con 3 bit avremo: 0 0 1 0 + (+2) 1 0 1 1 = (-5) 1 1 0 1 (-3) 0 1 1 1 + (+7) 0 0 1 0 (+2) Nel secondo esempio, l’overflow è ignorato 000 +0 001 +1 010 +2 011 +3 100 -4 101 -3 110 -2 111 -1

Codifica dei numeri Codificare il numero 13210 nella corrispondente rappresentazione binaria Ordinare in modo crescente i seguente numeri: 10410 , 128 , 1000100002 , 1001110 Codificare il numero negativo –1210 nella rappresentazione in complemento a due

Concludendo … « There are only 10 types of people in the world: those who understand binary and those who don't » « Ci sono solamente 10 tipi di persone nel mondo: chi comprende il sistema binario e chi no »