4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0



Documenti analoghi
SISTEMI DI NUMERAZIONE DECIMALE E BINARIO

Alessandro Pellegrini

= 1*2^7 + 1*2^6 + 0*2^5 + 1*2^4 + 0*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 210

Convertitori numerici in Excel

SISTEMI DI NUMERAZIONE E CODICI

Dispense di Informatica per l ITG Valadier

Informazione analogica e digitale

SISTEMI DI NUMERAZIONE IL SISTEMA DECIMALE

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

I SISTEMI DI NUMERAZIONE

BIT? Cosa c è dietro a questo nome? Che cos è il bit? Perché si usa? Come si converte un numero binario?

Sistemi di Numerazione

(71,1), (35,1), (17,1), (8,1), (4,0), (2,0), (1,0), (0,1) 0, = 1, 431 0, = 0, 862 0, = 1, 792 0, = 1, 448 0, = 0, 896

Rappresentazione delle informazioni

ESEMPIO 1: eseguire il complemento a 10 di 765

I sistemi di numerazione

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Informatica. Rappresentazione dei numeri Numerazione binaria

Architettura degli Elaboratori I Esercitazione 1 - Rappresentazione dei numeri

Codifica dei numeri negativi

Parte II Indice. Operazioni aritmetiche tra valori rappresentati in binario puro. Rappresentazione di numeri con segno

Elementi di informatica

ESTRAZIONE DI RADICE

4. Operazioni aritmetiche con i numeri binari

Informatica Generale 02 - Rappresentazione numeri razionali

Aritmetica dei Calcolatori 1

RAPPRESENTAZIONE BINARIA DEI NUMERI. Andrea Bobbio Anno Accademico

Esercitazione Informatica I AA Nicola Paoletti

Sistema di numerazione binario, operazioni relative e trasformazione da base due a base dieci e viceversa di Luciano Porta

Operazioni binarie fondamentali

I SISTEMI DI NUMERAZIONE

Codici Numerici. Modifica dell'informazione. Rappresentazione dei numeri.

LA NOTAZIONE SCIENTIFICA

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Appunti di informatica. Lezione 2 anno accademico Mario Verdicchio

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

Obiettivi dell Analisi Numerica. Avviso. Risoluzione numerica di un modello. Analisi Numerica e Calcolo Scientifico

Parte 1. Vettori di bit - AA. 2012/13 1.1

Numeri naturali numeri naturali minore maggiore Operazioni con numeri naturali

SCHEDA DI RECUPERO SUI NUMERI RELATIVI

Esempi ed esercizi Aritmetica degli elaboratori e algebra di commutazione

24 : 3 = 8 con resto 0 26 : 4 = 6 con resto 2

Informatica B a.a 2005/06 (Meccanici 4 squadra) PhD. Ing. Michele Folgheraiter

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

2.12 Esercizi risolti

Corso di Laurea Ingegneria Informatica Fondamenti di Informatica

SOMMARIO I radicali pag I radicali aritmetici pag Moltiplicazione e divisione fra radicali aritmetici pag.

Funzioni inverse Simmetrie rispetto alla bisettrice dei quadranti dispari. Consideriamo la trasformazione descritta dalle equazioni : = y

Aritmetica: operazioni ed espressioni

Capitolo 2. Operazione di limite

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma.

I SISTEMI DI NUMERAZIONE (esercizi svolti)

Un ripasso di aritmetica: Rappresentazione binaria - operazioni. riporti

Sistemi di Numerazione Binaria NB.1

2. Codifica dell informazione

Rappresentazione dei numeri in un calcolatore

Fondamenti di Informatica

Appunti sulla Macchina di Turing. Macchina di Turing

Aritmetica dei Calcolatori 2

La somma. Esempio: Il prodotto. Esempio:

Definizioni iniziali

risulta (x) = 1 se x < 0.

APPUNTI DI ELETTRONICA DIGITALE

ESERCIZI di FONDAMENTI DI INFORMATICA RAPPRESENTAZIONE DEI NUMERI

Comparatori. Comparatori di uguaglianza

Codifica binaria dei numeri

- Sistemi di numerazione 1 - Sistemi di Numerazione

RETI E SOTTORETI. Copyright 2010 Marco Salatin Pagina 1

Conversione tra le basi binarie

Trattamento dell informazione

Numeri interi posi-vi e nega-vi

1 Sistema additivo e sistema posizionale

CONCETTO DI LIMITE DI UNA FUNZIONE REALE

90.1 Sistemi di numerazione Sistema decimale. 605 Capitolo 90 Dai sistemi di numerazione all organizzazione della memoria

Politecnico di Milano. Facoltà di Ingegneria Industriale. Corso di Analisi e Geometria 2. Sezione D-G. (Docente: Federico Lastaria).

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione dell informazione negli elaboratori

Fondamenti di Informatica 2. Le operazioni binarie

Algebra booleana. Si dice enunciato una proposizione che può essere soltanto vera o falsa.

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

Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo

I SISTEMI DI NUMERAZIONE E LA NUMERAZIONE BINARIA

Codifica binaria dei numeri relativi

Dimensione di uno Spazio vettoriale

PROVA INTRACORSO TRACCIA A Pagina 1 di 6

Università degli Studi di Ferrara Corso di Laurea in Informatica A.A. 2007/2008

Laurea Specialistica in Informatica

Codifica binaria e algebra di Boole

Logaritmi ed esponenziali

Per lo svolgimento del corso risulta particolarmente utile considerare l insieme

Elementi di Informatica e Programmazione

Sistemi di Numerazione

Lezioni di Matematica 1 - I modulo

4. Operazioni elementari per righe e colonne

La codifica delle informazioni

LA NUMERAZIONE BINARIA

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

Uso di JUnit. Fondamenti di informatica Oggetti e Java. JUnit. Luca Cabibbo. ottobre 2012

CALCOLATORI ELETTRONICI A cura di Luca Orrù. Lezione n.6. Unità di controllo microprogrammata

Transcript:

Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice anche che i numeri sono rappresentati in base 0. Le cifre possiedono un valore posizionale, cioè un valore a seconda della posizione occupata nella scrittura del numero. Quindi cifre uguali in posizioni diverse hanno significato diverso (si dice anche che hanno peso diverso, cioè pesano diversamente nella determinazione del valore del numero espresso). Per esempio nel numero 434 la prima cifra 4 vale 400, 4 centinaia (potenza di 0 con esponente 2), la cifra 3 vale 30 (potenza di 0 con esponente ) e la cifra 4 vale 4 unità (potenza di 0 con esponente 0) 4 3 4 = 4 x 0 2 + 3 x 0 + 4 x 0 0 aaa 0 2 0 0 0 posizione 0 posizione posizione 2 Il peso di una cifra è uguale alla base del sistema di numerazione (0, in questo caso) elevata alla potenza uguale alla posizione della cifra nel numero. Per esempio nel numero 434 il 4 in posizione 2 pesa 0 2 =00; il 3 in posizione pesa 0 =0 e il 4 in posizione 0 pesa0 0 = In Informatica viene ampiamente usato un altro sistema di numerazione, il sistema binario (numeri in base 2). Il sistema binario si lega strettamente alla tecnologia del funzionamento dei computer in quanto il computer utilizza dispositivi elementari che possono assumere solo due stati ai quali vengono associate le cifre 0 e che sono appunto le cifre del sistema binario. Nel linguaggio informatico le cifre binarie vengono indicate con il termine bit, dalla contrazione delle due parole inglesi BInary digit (cifra binaria). Il bit assume i valori 0 e con bit possiamo rappresentare 2 = 2 valori con 2 bit possiamo rappresentare 2 2 = 4 valori con 3 bit possiamo rappresentare 2 3 = 8 valori con n bit possiamo rappresentare 2 n valori. Si guarda il numero a partire da destra, la posizione parte da zero e si incrementa da destra a sinistra Con n bit, i valori naturali rappresentabili sono compresi nell intervallo [0, 2 n -] Con n bit, i valori interi rappresentabili sono compresi nell intervallo [-2 n-, 2 n- -] Nei numeri interi rappresentati in binario, il primo bit (quello più a sinistra) rappresenta il segno: 0=segno positivo =segno negativo ESEMPIO: con n=3 bit possiamo rappresentare 2 3 = 8 valori I numeri naturali rappresentabili appartengono all intervallo [0, 2 3 -] = [0, 7] I numeri interi rappresentabili appartengono all intervallo [-2 3-, 2 3- -] = [-2 2, 2 2 -] = [-4, 3] Quindi se voglio rappresentare il numero naturale 5, mi bastano 3 bit, ma se il numero 5 è intero, 3 bit non ci bastano.

In modo analogo al sistema decimale, le cifre del sistema binario 0 e assumono un valore posizionale nella scrittura del numero binario con riferimento alle potenze di 2, anziché alle potenze di 0. CONVERSIONE da base BINARIA a DECIMALE Se vogliamo convertire il numero binario 0 da base binaria a base decimale, per prima cosa prendiamo il numero da destra verso sinistra e cominciamo a scrivere sotto ogni numero, la base 2 (perché il numero è binario) elevata alla posizione che occupa (la posizione parte da 0 e si incrementa andando verso sinistra) 0 2 3 2 2 2 2 0 poi si moltiplica ciascuna cifra binaria a partire da destra per la corrispondente potenza di e si sommano i prodotti ottenuti. Vedi ESEMPIO x x x 0 + + x + = = x + 0x2 + x4 + x8 = + 0 + 4 + 8 = 3 2 3 2 2 2 2 0 quindi = x2 0 + 0x2 + x2 2 + x2 3 si ricorda che 2 = 2 2 0 = Riepilogando ( 0 ) 2 = (x2 0 + 0x2 + x2 2 + x2 3 ) 0 = x (x numero + 0x2 = + numero x4 + x8) 0 = 2 3 2 2 2 2 0 ( + 0 + 4 + 8) 0 = (3) 0 Base di partenza Volendo essere sicuri 2=binario che abbiamo applicato la regola correttamente e 0=decimale che i calcoli siano corretti, e cioè che effettivamente 0 2 corrisponda a 3 0, possiamo fare la PROVA facendo il procedimento inverso, cioè prendere il numero decimale ottenuto cioè 3 e trasformarlo in binario (vedi il paragrafo che segue x capire come fare) e vedere se il numero binario trovato coincide con 0 2. Se coincide, vuol dire che quanto fatto era giusto, altrimenti vuol dire che avevamo commesso errori durante il procedimento e dobbiamo ricontrollare il tutto. CONVERSIONE da base DECIMALE a BINARIA Per convertire un numero decimale (numero positivo e senza virgola) a un numero binario, si divide il numero dato per 2 e si scrive il resto (che può essere 0 o ); il quoziente ottenuto viene a sua volta diviso per 2 ottenendo un nuovo resto; si prosegue fino a quando si ottiene come quoziente il numero 0. La sequenza dei resti, letta dall ultimo resto ottenuto al primo, fornisce il numero binario corrispondente al numero decimale dato. dividendo 5 2 divisore Si ricorda che nella divisione 5 / 2 = 7 con resto 4 7 quoziente resto 00 2 00 50 2 0 50 25 2 0 24 2 2 2 6 2 si può 0 6 3 2 anche 0 2 2 scrivere 0 0 ( 0 0 ) 0 = ( 0 0 0 0 ) 2 Il numero binario si ottiene scrivendo i resti delle divisioni, iniziando dall ultimo resto ottenuto 0 x numero=0 Base di arrivo 2

Se vogliamo essere sicuri di aver calcolato correttamente il numero binario a partire dal numero decimale (nel nostro esempio 00 0 ), possiamo fare la PROVA facendo il procedimento inverso, cioè prendiamo il numero binario trovato (0000) 2 e lo ritrasformiamo in decimale. Se il risultato coincide con il numero decimale di partenza, allora il numero binario trovato è corretto. ESEMPIO di PROVA: abbiamo appena trasformato il numero decimale 00 in binario e cioè 0000 ( 0 0 ) 0 = ( 0 0 0 0 ) 2 La prova consiste nel fare il procedimento inverso (cioè da binario a decimale) e vedere se i decimali coincidono. ( 0 0 0 0 ) 2 = ( 0x2 0 + 0x2 + x2 2 + 0x2 3 + 0x2 4 + x2 5 + 2 6 2 5 2 4 2 3 2 2 2 2 0 x2 6 ) 0 = (4 + 32 + 64) 0 = (00) 0 Poiché dalla trasformazione del binario abbiamo ottenuto il numero decimale 00 che è lo stesso numero decimale da cui eravamo partiti inizialmente, deduciamo che il numero binario calcolato è corretto. Somme in binario OPERAZIONI in BINARIO La somma di due numeri binari viene calcolata adattando le stesse regole della somma dei numeri decimali: si ha un riporto in binario (rispettivamente per la notazione decimale) se la somma in qualunque posizione è maggiore di (rispettivamente 9 per la notazione decimale). Le somme in binario quindi possiamo dire che si effettuano secondo la seguente regola: Si ricorda che nella somma 5 + 2 = 7 5 è il addendo, 2 è il 2 addendo e 7 è la somma ES: Effettuiamo la somma 00 2 + 00 2 Si parte a sommare da destra (come accade con i numeri decimali) riporti 0 0 2 + 0 0 2 = 0 0 0 2 + = 0 e riporto di +0+ lo eseguo così: (+0)+=+=0 e riporto di ++0 lo eseguo così: (+)+0=0(e riporto)+0 =0 quindi 0 e riporto di ++ lo eseguo così: (+)+=0(e riporto)+ = quindi e riporto di +0+0 lo eseguo così: (+0)+0=+0 = senza riporto +(niente è come se ci fosse lo 0)=+0 = Per essere sicuri di aver eseguito correttamente la somma si può fare la PROVA. 3

La PROVA consiste nel trasformare tutti i numeri binari (i due addendi e la somma) in decimali e fare la somma dei corrispondenti addendi decimali. Se quest ultima coincide con la trasformazione in decimale della somma binaria, allora abbiamo calcolato correttamente la somma tra binari. Nell esempio appena svolto, abbiamo trovato che 00 2 + 00 2 = 000 2 Facciamo la PROVA per verificare che la somma che abbiamo calcolato è corretta. Trasformiamo tutti i numeri binari in decimale: 00 2 = x2 0 + 0x2 +x2 2 +x2 3 + 0x2 4 + x2 5 = + 4 + 8 + 32 = 45 00 2 = x2 0 +x2 + 0x2 2 + x2 3 + 0x2 4 = + 2 + 8 = 000 2 = 0x2 0 + 0x2 + 0x2 2 + x2 3 + x2 4 + x2 5 = 8 + 6 + 32 = 56 Ora 45 + = 56 che coincide con il decimale di 000 2 cioè quindi la somma binaria calcolata è corretta. Rappresentazione di numeri interi Ricordiamo che con n bit possiamo rappresentare 2 n valori. Con n bit, i valori naturali rappresentabili sono compresi nell intervallo [0, 2 n -] Con n bit, i valori interi rappresentabili sono compresi nell intervallo [-2 n-, 2 n- -] Nei numeri interi rappresentati in binario, il primo bit (quello più a sinistra) rappresenta il segno: 0=segno positivo =segno negativo n è la dimensione (in bit) della cella di memoria che contiene il numero. Per i numeri interi positivi (così come accade per i numeri naturali) si usa la rappresentazione binaria posizionale (000) 2 = (44) 0 Per rappresentare i numeri interi negativi non si può usare la stessa codifica dei numeri positivi impostando semplicemente a il primo bit; se così facessimo infatti la somma di un numero con il suo opposto non sarebbe zero. Infatti si osservi l esempio seguente in cui per comodità ci serviamo di una parola di 8 bit (n=8) scrivendo in grassetto il primo bit del segno: numero decimale + 7 codifica binaria impostazione degli 8 bit 0 0000 numero decimale - 7 codifica binaria impostazione degli 8 bit 0000 Se sommiamo i numeri binari dei due byte così ottenuti abbiamo 0 0000 + 0000 = 0000 Il numero ottenuto non corrisponde a 0. Dobbiamo allora trovare una codifica per i numeri negativi tale che la somma di un numero con il suo opposto produca 0 come risultato. COME RAPPRESENTIAMO I NUMERI INTERI NEGATIVI? ) dobbiamo conoscere n cioè quanti bit abbiamo a disposizione per rappresentare il numero; 2) dobbiamo rappresentare in binario il numero positivo (possiamo anche fare la PROVA per essere certi della conversione in binario); 3) dobbiamo aggiungere in testa al numero binario positivo trovato al punto 2), tanti zeri fino ad avere n bit; 4) trovare il numero negativo a partire dal numero trovato al punto 3) con questa semplice regola pratica: ricopiare, partendo da destra le stesse cifre fino a quando si incontra il primo (compreso). Dopodiché invertire le cifre rimanenti trasformando gli in 0 e viceversa; 5) per verificare (PROVA) che il numero negativo trovato sia corretto, basta sommare il numero positivo con il suo corrispondente negativo e verificare che la somma produca 0 come risultato. 4

ESEMPIO: rappresentare il numero intero -7 usando n=8 bit. Rappresentiamo il numero positivo 7 in binario. 7 2 6 3 2 7 0 = 2 aggiungo tanti zeri fino ad arrivare a n=8 cioè 5 zeri 2 2 7 0 = 00000 2 ora calcolo -7 con la regola pratica 0 0-7 0 = 00 2 Per verificare che il numero negativo sia corretto facciamo la prova cioè verifichiamo che 7 + (-7) = 0 riporti 7 0 = 0 0 0 0 0 + -7 0 = 0 0 = 0 0 0 0 0 0 0 0 n=8 questi n=8 bit sono tutti zero quindi il numero negativo trovato è corretto. Quindi -7 0 = 00 2 ESEMPIO: rappresentare il numero intero -44 usando n=8 bit. Rappresentiamo il numero positivo 44 in binario. 44 2 44 0 = 000 2 verifichiamo che la codifica binaria trovata sia corretta 44 22 2 000 2 = 0x2 0 +0x2 +x2 2 +x2 3 +0x2 4 +x2 5 =0+0+4+8+0+32=44 0 il numero 0 22 2 binario è corretto. Quindi 0 0 5 2 44 0 = 000 2 aggiungiamo tanti zeri fino ad avere n=8 bit 4 2 2 44 0 = 00000 2 ora calcoliamo -44 con la regola pratica 2 2-44 0 =0000 2 0 0 0 Per verificare che il numero negativo sia corretto facciamo la prova cioè verifichiamo che 44 +(-44)=0 riporti 44 0 = 0 0 0 0 0 + -44 0 = 0 0 0 0 = 0 0 0 0 0 0 0 0 n=8 questi n=8 bit sono tutti zero quindi il numero negativo trovato è corretto. Quindi -44 0 = 0000 2 5

Ricordiamo che CALCOLO DEL VALORE DI VERITA DI UN ESPRESSIONE BOOLEANA Ordine di precedenza degli operatori: NOT, AND, OR/XOR Questo significa che: ) NOT ha precedenza più alta di AND, OR e XOR; per esempio: NOT a AND NOT b OR NOT c equivale a scrivere (NOT a) AND (NOT b) OR (NOT c) 2) AND ha precedenza più alta di OR e XOR, per esempio: a AND b OR c equivale a scrivere (a AND b) OR c ESEMPIO: Siano a = F, b = V, c = F (dove V = Vero e F = Falso) Calcolare il valore di verità della seguente espressione booleana mostrando tutti i passaggi per trovare la soluzione: NOT b OR c AND NOT a OR ( c AND NOT b ) Soluzione: NOT b OR c AND NOT a OR ( c AND NOT b ) = NOT V OR F AND NOT F OR ( F AND NOT V ) = F OR F AND V OR (F AND F ) = F OR F OR F = F OR F = F Sostituisco i valori di verità alle variabili Eseguo le operazioni rispettando l ordine di precedenza degli operatori (sottolineo le operazioni che eseguo ad ogni passaggio) ESEMPIO: Siano a = 7, b = 2 Calcolare il valore di verità della seguente espressione booleana mostrando tutti i passaggi per trovare la soluzione: ( b 3 ) OR NOT ( a < 7 ) AND ( b > 7 ) Soluzione: ( b 3 ) OR NOT ( a < 7 ) AND ( b > 7 ) = ( 2 3 ) OR NOT ( 7 < 7 ) AND ( 2 > 7 ) = F OR NOT F AND V = F OR V AND V = F OR V = V Sostituisco i valori numerici alle variabili Calcolo il valore di ogni operazione di confronto Eseguo le operazioni rispettando l ordine di precedenza degli operatori (sottolineo le operazioni che eseguo ad ogni passaggio) 6