Rappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto

Documenti analoghi
Codifica binaria. Rappresentazioni medianti basi diverse

CONVERSIONE BINARIO DECIMALE NB: Convertire in decimale il numero binario N = N =

Cap. 2 - Rappresentazione in base 2 dei numeri interi

Calcolo numerico e programmazione Rappresentazione dei numeri

Modulo e segno Complemento a 1 (CA1) Complemento a 2 (CA2)

Rappresentazione dell Informazione

Lezione 3. I numeri relativi

1.2f: Operazioni Binarie

Conversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due

Rappresentazione di Numeri Reali. Rappresentazione in virgola fissa (fixed-point) Rappresentazione in virgola fissa (fixed-point)

Rappresentazione dei Numeri

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria

La codifica. dell informazione

Rappresentazione in complemento a 2: caratteristiche generali

Sistemi di Numerazione Binaria

Somma di numeri binari

Rappresentazione dei Dati

Conversione binario-decimale. Interi unsigned in base 2. Esercitazioni su rappresentazione. dei numeri e aritmetica

04 Aritmetica del calcolatore

Rappresentazione dell informazione

Algoritmi Istruzioni che operano su dati. Per scrivere un programma è necessario. che l esecutore automatico sia in grado di.

Lezione 4. Sommario. L artimetica binaria: I numeri relativi e frazionari. I numeri relativi I numeri frazionari

Rappresentazione e Codifica dell Informazione

Aritmetica dei Calcolatori

La codifica. dell informazione

Seconda lezione. Rivediamo un po di definizioni principali Proseguiremo con nuovi codici

Codifica binaria dell informazione

Calcolatori Elettronici Parte II: Sistemi di Numerazione Binaria. Prof. Riccardo Torlone Università di Roma Tre

Rappresentazione di numeri interi

Codifica dei Numeri. Informatica ICA (LC) 12 Novembre 2015 Giacomo Boracchi

Rappresentazione dell informazione. Argomenti trattati: Codifica: Teoria generale. Proprietà di una codifica:

Numeri interi (+/-) Alfabeto binario. Modulo e segno

Appunti di informatica. Lezione 4 anno accademico Mario Verdicchio

Programmazione I Paolo Valente /2017. Lezione 6. Notazione posizionale

Sistema Numerico Decimale

Argomenti trattati: Rappresentazione dell informazione. Proprietà di una codifica: Codifica: Teoria generale

Corso di Architettura degli Elaboratori

Esempi - overow Considerando numeri binari di 4 bit, eettuare la somma (9) 10 =(1001) 2 (7) 10 =(0111) Il risultat

Esame di INFORMATICA (*) Operazioni Aritmetiche: Somma. Lezione 3. Operazioni Aritmetiche: Somma. Operazioni Aritmetiche: Somma

Appunti di informatica. Lezione 3 anno accademico Mario Verdicchio

Decimale, binaria,esadecimale

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dei numeri relativi

Analogico vs. Digitale. LEZIONE II La codifica binaria. Analogico vs digitale. Analogico. Digitale

La "macchina" da calcolo

Codifica e aritmetica binaria

Fondamenti di Programmazione. Sistemi di rappresentazione

La rappresentazione dei numeri. La rappresentazione dei numeri. Aritmetica dei calcolatori. La rappresentazione dei numeri

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Codifica di informazioni numeriche

Rappresentazione dei dati

Rappresentazione dei numeri in un calcolatore

Rappresentazione di numeri reali. Architetture dei Calcolatori (Lettere. Perché la rappresentazione in virgola mobile

Esercitazioni di Reti Logiche. Lezione 1 Rappresentazione dell'informazione. Zeynep KIZILTAN zkiziltan@deis.unibo.it

Rappresentazione numeri relativi e reali

APPUNTI DI INFORMATICA

Fondamenti di Informatica

Codifica. Rappresentazione di numeri in memoria

Lezione 4. Lezione 4. Rappresentazioni numeriche. Rappresentazioni numeriche. Rappresentazioni numeriche. Rappresentazioni numeriche

Numeri reali. Notazione scientifica (decimale) Floating Point. Normalizzazione. Esempi. Aritmetica del calcolatore (virgola mobile)

Codifica dati e istruzioni. Lezione 9. Codifica dati e istruzioni. Codifica dati e istruzioni. Codifica binaria dell informazione

I.4 Rappresentazione dell informazione

Fondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012

Esercitazione del 09/03/ Soluzioni

Sommario. I Sistemi di numerazione Posizionale e non Posizionale (1/2) I Codici. I Codici I Sistemi di numerazione Posizionali e non posizionali

Modulo: Elementi di Informatica

Algebra di Boole e porte logiche

La codifica digitale

La codifica binaria. Informatica B. Daniele Loiacono

Rappresentazione dell informazione

Rapida Nota sulla Rappresentazione dei Caratteri

Codifica binaria dei dati numerici: i numeri naturali

Rappresentazione dell informazione

Fondamenti di Programmazione. Sistemi di rappresentazione

Introduzione ai sistemi informatici 1

Le operazioni fondamentali con i numeri relativi

modificato da andynaz Cambiamenti di base Tecniche Informatiche di Base

Sistemi di Elaborazione delle Informazioni

Aritmetica dei Calcolatori

TECNOLOGIA DIGITALE. CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale

LA CODIFICA DELL INFORMAZIONE. Introduzione ai sistemi informatici D. Sciuto, G. Buonanno, L. Mari, McGraw-Hill Cap.2

LEZIONE 1. del 10 ottobre 2011

Algebra. I numeri relativi

0ROWLSOLFD]LRQHH'LYLVLRQH WUDQXPHULUHODWLYL

Informatica Generale 1 - Esercitazioni Flowgraph, algebra di Boole e calcolo binario

Rappresentazione informazione ed elementi di aritmetica dei computer

Si ottiene facendo precedere i numeri naturali dal segno + o dal segno -.

Potenziamento formativo, Infermieristica, M. Ruspa RIPASSO DI MATEMATICA

Rappresentazione dei numeri reali in un calcolatore

Rappresentazione di dati: numerazione binaria. Appunti per la cl. 3 Di A cura del prof. Ing. Mario Catalano

Esercizi su Sistemi di Numerazione Binaria. Prof. Riccardo Torlone Università di Roma Tre

Esercitazione del 2/3/2010- Numeri binari e conversione

Codifica di Dati e Istruzioni. Architetture dei Calcolatori (Lettere. Sistema di Codifica: Numeri Interi (Decimali) Sistemi di Codifica.

Corso di Laurea Ingegneria Civile Fondamenti di Informatica

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2

Calcolatori: Rappresentazione dei Dati e Aritmetica binaria

Aritmetica dei Calcolatori Elettronici

Somma di numeri floating point. Algoritmi di moltiplicazione e divisione per numeri interi

Laboratorio del 21/10/2010- Numeri binari e conversione

Rappresentazione dell informazione. Argomenti trattati: Codifica: Teoria generale. Proprietà di una codifica:

Riassunto Nell'esercitazione di oggi e' stata introdotta la codifica binaria naturale, intera e razionale in virgola fissa. Il materiale teorico

Transcript:

Rappresentazione di numeri relativi (interi con segno) E possibile estendere in modo naturale la rappresentazione dei numeri naturali ai numeri relativi. I numeri relativi sono numeri naturali preceduti da un segno: - positivi (segno +) - negativi (segno -) La parte che segue il segno è il valore assoluto Il segno può assumere 2 valori => Basta 1 bit per rappresentarlo. Il valore assoluto è un numero naturale. Quindi, se ho N bit per rappresentare un numero, 1 bit rappresenta il segno e gli altri N-1 il valore assoluto Rappresentazione di numeri interi relativi (con N bit) Prima rappresentazione possibile (più naturale): Segno e Valore Assoluto Il primo bit indica il segno (0=positivo, 1=negativo), cui segue la rappresentazione (su N-1 bit) del valore assoluto del numero, cioè del numero naturale che si ottiene eliminando il segno. Es. (con 8 bit) 10000011 = - 3 NB Esistono 2 rappresentazioni per lo zero! 10000000 (-0) e 00000000 (+0) Rappresentazione di numeri interi relativi (con N bit) Rappresentazione alternativa (più furba ) : Complemento a due Un numero negativo -n è rappresentato attraverso il complemento a 2 del suo valore assoluto, cioè dal numero intero positivo 2 N - n. Es. N=8 2 N =256 (6) 10 = (00000110) 2 (-6) 10 =(11111010) 2 [Infatti: 256-6 = 250] 1

Osservazioni I numeri naturali e i corrispondenti numeri relativi positivi hanno la stessa rappresentazione e hanno come cifra più significativa 0 (35) 10 = (00100011) 2 in tutte le rappresentazioni Tutti i numeri negativi hanno 1 come cifra più significativa (come nella rappresentazione in segno e valore assoluto) (-35) 10 = (10100011) 2 rappr. segno + val. ass. (11011101) 2 rappr. mediante compl. a 2 Lo zero ha un unica rappresentazione E possibile estendere la proprietà dei numeri relativi per cui m n = m + (-n) Rappresentazione dello 0 modulo e segno rappresentazione ambigua +0 = 00000000-0 = 10000000 complemento a due rappresentazione univoca infatti il complemento a due di 00000000 è ancora 0 (primo vantaggio!) Quindi: in una rappresentazione a N bit con complemento a 2 posso rappresentare i numeri da - (2 N-1 ) a + 2 N-1-1 Es. con 8 bit rappresento i numeri da -128 -(2 7 ) a 127 (2 7-1) Addizione Se si utilizza la notazione con complemento a 2, si può ragionare in termini algebrici : Es. 22 21 Rappresento -21 in complemento a 2 bit di overflow (1) 1 1 1 1 1 1 0 0 0 1 0 1 1 0 1 1 1 0 1 0 1 1 0 0 0 0 0 0 0 1 La sottrazione equivale alla somma del minuendo con la negazione (rappresentazione complementata) del sottraendo. Secondo vantaggio della rappresentazione in complemento a 2: all interno del calcolatore somme e sottrazioni sono eseguite utilizzando la stessa operazione (circuito). 2

Calcolo rapido del complemento a 2 Il complemento a 2 di un numero in una rappresentazione ad N bit si definisce come: C(n) = 2 N - n Possiamo scrivere anche C(n) = (2 N - n - 1) + 1 N.B.!! Dati n (ad es. 00100011) ed N (ad es. 8) la rappresentazione di 2 N - n - 1 è uguale alla rappresentazione di n con le cifre invertite (11011100) Allora: il complemento di un numero si calcola invertendo tutti i suoi bit e sommando 1 E quindi.. Per calcolare il complemento a 2 di un numero 1. si rappresenta il numero in binario 2. Si invertono tutte le cifre (1 ->0 e 0 ->1) 3. Si somma 1. 32 = 00100000-32 = 11011111 + 1 = 11100000 N.B. Il complemento del complemento di un numero è il numero stesso C (32) = 256-32 = 224; (uso 8 bit) C (C (32)) = 256 - (256-32) = 32 Esempi di rappresentazioni Ad esempio, avendo a disposizione un byte, il numero naturale 35 ha la seguente rappresentazione binaria: 00100011 Il numero 35 in segno e valore assoluto: 10100011 Il numero 35 in complemento a due: rappr. di 35 00100011 scambio 0<->1 11011100 aggiungo 1 11011101 3

Rappresentazioni a lunghezza fissa: problemi Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili (solo un certo numero di configurazioni è disponibile). Questo può provocare errori di due tipi: Overflow indica un errore nella rappresentazione di un certo numero (di solito il risultato di una operazione) dovuto al fatto che la quantità di cifre disponibili è minore rispetto a quelle necessarie a rappresentare il numero. Es. i due addendi di una somma possono essere rappresentabili ma il risultato della somma no. Es. (interi senza segno su 8 bit) 130 + 150 =280 Ma con 8 bit rappresento al max. il numero 255. Underflow indica che il risultato è troppo piccolo per essere rappresentato, cioè minore del più piccolo numero rappresentabile. Es. divisione fra interi quando il dividendo è minore del divisore. Il risultato in questo caso è 0. 25/50 = 0.5, ma io posso rappresentare solo 0, 1, Esempio 1 (overflow) Supponiamo di essere nel primo caso e di avere 11111111 = (255) 10 255 + 1 =? 1 1111111 11111111+ 00000001 1 00000000 Ma ho solo 8 bit => il risultato dell operazione è 0! Esempio 2 (overflow) Supponiamo di essere nel secondo caso e di avere 01111111 = (127) 10 127 + 1 =???? Ultimo riporto (carry) 1111111 01111111+ 00000001 --------- 0 10000000 Ma 10000000 è negativo! (-128) 4

Esempio 3 (overflow) Supponiamo di essere nel secondo caso e di avere 01111111 = (127) 10 127-128 =???? Ultimo riporto (carry) 0 01111111+ 10000000 --------- 0 11111111 Complemento 11111111 11111111 -> 00000000 00000000+1= 1 Quindi il risultato è -1 (corretto) Overflow Se sto rappresentando numeri naturali ho overflow se il bit di overflow è 1 Se sto rappresentando numeri relativi ho overflow se il bit di overflow è diverso dall ultimo riporto (bit di carry) Esercizi Verificare che (10000101) 2 = (133) 10 Data una rappresentazione intera a 8 bit senza segno, rappresentare e calcolare in binario le seguenti operazioni (decimali) : 12 + 78 240 + 17 (che risultato apparente ottengo con 8 bit???) Data una rappresentazione a 8 bit con complemento a 2 determinare il minimo numero rappresentabile determinare il massimo numero rappresentabile rappresentare e calcolare: 125-33 125 + (-33) 37-125 5