Di Parola Umberto e Pani Lara. Aritmetica di macchina Numeri di macchina Operazioni di macchina.

Slides:



Advertisements
Presentazioni simili
Metodo di Calcolo Numerico per Equazioni differenziali Ordinarie
Advertisements

I numeri interi relativi
INTEGRAZIONE NUMERICA
1 I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI.
Precorso di Matematica
Rappresentazione di Numeri Reali
Come possono essere classificati?
© 2007 SEI-Società Editrice Internazionale, Apogeo Unità E1 Dallanalisi del problema alla definizione dellalgoritmo.
Capitolo 8 Sistemi lineari.
Fondamenti di Informatica CDL in Ingegneria Meccanica - A.A CDL in Ingegneria Meccanica - A.A Tipi di dati Ing. Simona Colucci.
Fondamenti di Informatica CDL in Ingegneria Gestionale - A.A Tipi di dati Ing. Simona Colucci.
esponente del radicando
Anno accademico Gli operatori e le espressioni in C.
Il linguaggio C Gli operatori e le espressioni C Language
Progetto Pilota 2 Lettura e interpretazione dei risultati
Interpretazione Astratta
A.S.E.7.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 7 Errore di rappresentazioneErrore di rappresentazione Fattore di scalaFattore di scala Rappresentazione.
Corso di Laurea in Biotecnologie Informatica (Programmazione)
Liceo Scientifico "A.Volta" Reggio Calabria
Rappresentazione dei numeri reali
Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili: Overflow indica un errore nella rappresentazione del risultato in.
Rappresentazione di Numeri Reali
Laboratorio di Metodi Numerici
Metodi numerici per equazioni differenziali ordinarie Laboratorio di Metodi Numerici a.a. 2008/2009.
Laboratorio di Metodi Numerici a.a. 2008/2009 Prof. Maria Lucia Sampoli.
Corso di Laurea in Scienze e Tecnologie Chimiche corso di Informatica Generale Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
ARITMETICA BINARIA.
I numeri interi relativi
Il numero è l'elemento base della aritmetica
Milano, 17 Dicembre 2013 Informatica B Informatica B Matlab Laboratorio del 14/01/2014 Responsabili di laboratorio: Gianluca Durelli:
Metodi matematici per economia e finanza. Prof. F. Gozzi
DATA MINING PER IL MARKETING
LE EQUAZIONI DI PRIMO GRADO
Le misure sono osservazioni quantitative
DATA MINING PER IL MARKETING
Process synchronization
1 Corso di Informatica (Programmazione) Lezione 8 (7 novembre 2008) Programmazione in Java: operatori aritmetici, operatori di assegnamento e cast.
Rappresentazione dell’informazione nel calcolatore.
Calcolo letterale.
Parte 3 Lo stato: variabili, espressioni ed assegnazioni

Microsoft Access Chiavi, struttura delle tabelle.
Rappresentazione della Informazione
Rappresentazione dell’informazione
Rappresentazioni a lunghezza fissa: problemi
A.S.E.14.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 14 Rappresentazione esponenzialeRappresentazione esponenziale Virgola mobileVirgola mobile Operazioni.
Rappresentazione in virgola mobile (floating-point) Permette di rappresentare numeri con ordini di grandezza molto differenti utilizzando per la rappresentazione.
Fondamenti di Informatica
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
1 © 1999 Roberto Bisiani Overflow n Overflow  traboccamento Si verifica se il risultato di un’operazione non puo’ essere rappresentato con il numero di.
Rappresentazione dell'informazione
Rappresentazione dell'informazione 1 Se ho una rappresentazione in virgola fissa (es. su segno e 8 cifre con 3 cifre alla destra della virgola) rappresento.
Elementi di statistica Le cifre significative
La codifica dei numeri.
Conversione binario-ottale/esadecimale
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
Le quattro operazioni.
I RADICALI Positivi Negativi SOLO Positivi C.E.: Radicando
Rappresentazione dei numeri
6. LIMITI Definizione - Funzioni continue - Calcolo dei limiti
Cifre significative I numeri possono essere: esatti, conteggi, definizioni Ottenuti da misure : Misurare una distanza Ogni misura sperimentale ha un errore.
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Numeri in virgola Marco D. Santambrogio – Ver. aggiornata al 24 Agosto 2015.
Calcolo della radice quadrata Con metodo della bisezione Rodolfo Pietrasanta matr
I sistemi di numerazione
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Numeri con segno ed in virgola Marco D. Santambrogio – Ver. aggiornata al 20 Marzo.
Definizioni Rappresentazione Operazioni Espressioni Esercizi
La frazione come numero razionale assoluto
Operazioni con le frazioni
I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI Numeri.
Transcript della presentazione:

Di Parola Umberto e Pani Lara

Aritmetica di macchina Numeri di macchina Operazioni di macchina

Numeri di macchina Rappresentazione in virgola mobile o Floating-point ? Spazio limitato sul calcolatore Approssimazione Errore assoluto (Ea)  |(x - x°)| Errore relativo (Er)  |(x - x°)/x| Precisione di macchina o ε di macchina ( eps )

TroncamentoArrotondamento Data una mantissa di t cifre, l’approssimazione può avvenire per Escludo la parte destra della t-esima cifra Errore relativo elevato Errore assoluto: |x - x°| < β -t eps =N 1-t Aggiungo ½ N -t alla mantissa in questione e poi tronco quest’ultima alla t- esima cifra Errore relativo basso Errore assoluto: |x - x°| < ½ β -t eps = ½ N 1-t t = 6 1,  1,26592 Er = (1, ,26592)/1, = 7,74 * ,  1,26593 Er = (1, ,26593)/1, = -1,58*10 -8

Sia ε l’errore relativo della rappresentazione di x (ε = (fl(x) – x)/x ⇒ fl(x) = x (1 + ε)) eps, |ε| ≤ eps fl(x) = x(1 + ε), |ε| ≤ eps fl(x) l’operazione di approssimazione di x a numero di macchina in aritmetica floating-point le operazioni di macchina (funzionali all’applicazione di operazioni aritmetiche ai numeri macchina), che a due numeri macchina ne associano un terzo, ottenuto arrotondando (attraverso le tecniche precedentemente viste) l’esatto risultato dell’operazione aritmetica in questione.

a ⊕ b = fl(fl(a) + fl(b)) = (fl(a) + fl(b))(1 +ε1), |ε1| ≤ eps; a ---- b = fl(fl(a) − fl(b)) = (fl(a) − fl(b))(1 +ε2), |ε2| ≤ eps; a ⊗ b = fl(fl(a) × fl(b)) = (fl(a) × fl(b))(1 +ε3), |ε3| ≤ eps; a // b = fl(fl(a) / fl(b)) = (fl(a) / fl(b))(1 +ε4), |ε4| ≤ eps. Principio di equivalenza: si definiscono equivalenti due espressioni che in aritmetica finita forniscono risultati la cui distanza relativa differisce di una quantità dell’ordine della precisione di macchina. Proprietà Rappresentazione in linguaggio Java Rappresentazione in linguaggio Java Overflow e underflow Overflow e underflow

Propietà Non tutte le proprietà delle operazioni aritmetiche si conservano per le operazioni di macchina. La proprietà commutativa per somma e prodotto si conserva anche per le operazioni di macchina: a ⊕ b = b ⊕ a, a ⊗ b = b ⊗ a, Ma non valgono più le seguenti proprietà: a ⊕ (b ⊕ c) ≠ (a ⊕ b) ⊕ c, a ⊗ (b ⊗ c) ≠ (a ⊗ b) ⊗ c, a ⊗ (b ⊕ c) ≠ (a ⊗ b) ⊕ (a ⊗ c), (a ⊗ b) // b ≠ a, (a // b) ⊗ b ≠ a, (a ⊗ b) // c ≠ (a // c) ⊗ b.

Rappresentazione in Java

Overflow e Underflow elaborazione eccedente, per numero di cifre rispettivamente positive e negative, il limite della capacità di una memoria. ERRORE

Errore Cancellazione numericaCancellazione numerica: Si dice cancellazione numerica il fenomeno di perdita di cifre significative che si verifica quando si opera una sottrazione tra due numeri di macchina “quasi uguali” tra loro (ovvero, il risultato è più piccolo di ciascuno dei due operandi). TUTTAVIA, la sottrazione non genera problemi in sé, ma amplifica errori di approssimazione già esistenti sugli operandi. Applicazione di algoritmi: Applicazione di algoritmi: Valutando l’algoritmo nella sua stabilità numerica e nella qualità del condizionamento del problema rispetto a cui è applicato, si giunge ad ipotizzare l’incidenza di tre tipi di errori. Più nello specifico, considerando un generico problema di partenza descritto da una funzione esplicita y = f(x), si ha…

fl(x1) = · 10 3, fl(x2) = · 10 3  fl(x1) fl(x2) = · 10 3 = ·  fl(x1) = · 10 3, fl(x2) = · 10 3  fl(x1) fl(x2) = · 10 3 = ·  [|(fl(x1) fl(x2)) − (x1 − x2)| ]/ [|(x1 − x2)|] =

Nel campo pratico tali forme di errore possono essere, in certi casi, parzialmente ridotte (ma non evitate) tramite il ricorso a formulazioni alternative, dove il fenomeno della cancellazione numerica si riduce di entità: Esempio 1: Le radici di un equazione di secondo grado (x 2 - 2ax + ε = 0) si trasformano ne seguente modo, al fine di evitare l’applicazione della sottrazione, che produce un maggiore errore (obbiettivo condiviso anche con i successivi esempi): x 1 = a + √a 2 - ε e x 2 = a - √a 2 - ε = ε/x 1. Esempio 2 : √x + ε - √ε = ε/(√x + ε + √x). Esempio 3 : cos(x+ε) – cos(x) = -2sin(ε/2) sin(x + ε/2).

un errore x - x°, al quale corrisponde un errore finale, dovuto non all’algoritmo, ma unicamente alla funzione f(x) (condizionamento): e 1 = f(x) – f(x°). Un errore derivante dal fatto che spesso f viene approssimata con una funzione più semplice f 1 (algoritmo); in questo caso abbiamo un ulteriore errore, detto di troncamento o discretizzazione: e 2 = f(x°) – f 1 (x°). Infine, le operazioni eseguite dal calcolatore nella valutazione di f 1 (x°) non sono esatte: invece del valore f 1 (x°) otterremo un valore f 2 (x°). L’errore: e 3 = f 1 (x°) – f 2 (x°), è dovuto alla propagazione degli errori di arrotondamento nel calcolo numerico f 1 (x°), di cui è responsabile la stabilità numerica dell’algoritmo.

Ecco come si riscontra l’errore in Java (terzo caso)

Bibliografia “100 pagine di elementi di calcolo numerico” di G.Monegato; “Informatica 3 quinto anno licei scientifici opzione scienze applicate” di Piero Gallo e Pasquale Sirsi; Sitografia (nella stesura de “video”); pdf; pdf 1_RappresentazioneNumeri.pdf; 1_RappresentazioneNumeri.pdf