Architettura degli Elaboratori e Laboratorio. Matteo Manzali Università degli Studi di Ferrara Anno Accademico

Documenti analoghi
Architettura degli Elaboratori e Laboratorio

I.4 Rappresentazione dell informazione

Introduzione e Nozioni di Base. Prof. Thomas Casali

UD 1.2e: La codifica Digitale dei Numeri CODIFICA DIGITALE DEI NUMERI

Modulo 1: Le I.C.T. UD 1.2e: La codifica Digitale dei Numeri

Notazione posizionale. Codifica binaria. Rappresentazioni medianti basi diverse. Multipli del byte

Lezione 2. Rappresentazione dell informazione

Codifica binaria. Rappresentazioni medianti basi diverse

1.2 Concetti base dell Informatica: Informazione

Rappresentazione dell informazione. Rappresentazione dell informazione. Rappresentazione dell informazione. Codifica dei numeri

Rappresentazione dell informazione

Lezione 2. Rappresentazione dell informazione

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

Rappresentazione e Codifica dell Informazione

Codifica di informazioni numeriche

1-Rappresentazione dell informazione

Aritmetica dei Calcolatori Elettronici

Rappresentazione dell informazione

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

1.2f: Operazioni Binarie

Modulo 1 I numeri. Università degli Studi di Salerno

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

Informatica e Laboratorio di Programmazione Sistema Binario Alberto Ferrari. Alberto Ferrari Informatica e Laboratorio di Programmazione

Conversione binario-ottale/esadecimale. Conversione binario-ottale/esadecimale. Rappresentazione di Numeri Interi Positivi (numeri naturali)

Esercitazioni su rappresentazione dei numeri e aritmetica dei calcolatori

Corso di Calcolatori Elettronici I

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

Rappresentazione dell informazione

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

La codifica. dell informazione. Codifica dei numeri. (continua) Codifica dei numeri. Codifica dei numeri: il sistema decimale

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

La codifica dei numeri

Rappresentazione dell'informazione

Sistema Numerico Decimale

Lezione 2. La conoscenza del mondo

Rappresentazione dei numeri

Abilità Informatiche e Telematiche

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

La codifica. dell informazione

Rappresentazione binaria

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

Lezione 1. Rappresentazione dei numeri. Aritmetica dei calcolatori. Rappresentazione dei numeri naturali in base 2

Rappresentazione binaria

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

Rappresentazione dei numeri interi in un calcolatore

Rappresentazione dei numeri interi in un calcolatore. Rappresentazione dei numeri

Rapida Nota sulla Rappresentazione dei Caratteri

INPUT COMPUTER OUTPUT

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

Corso di Sistemi di Elaborazione delle informazioni

TECNOLOGIA DIGITALE. TECNOLOGIA DIGITALE (segue)

04 Aritmetica del calcolatore

Rappresentazione dei numeri interi in un calcolatore

Lezione 2. Rappresentazione dell informazione

Sistemi di numerazione

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

Anno Accademico Lezione 10 : Conversione di Base (p. 3) Lunedì 6 Dicembre 2010

Rappresentazione dell' informazione. Cenni, necessari per capire le caratteristiche dei tipi di dato e delle limitazioni dell'aritmetica del computer

Rappresentazione dell informazione

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

Aritmetica dei Calcolatori

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

Calcolatori Elettronici Parte III: Sistemi di Numerazione Binaria

Lezione 2. Rappresentazione dell informazione

Informazione binaria: - codici binari, notazione binaria/ottale/esadecimale -

Lezione 2. Rappresentazione dell informazione

Rappresentazione dei dati in memoria

Sistemi di Numerazione Binaria

ARCHITETTURA DEGLI ELABORATORI CLASSE 2 A.A. 2014/15. Docente: Vincenzo Auletta RAPPRESENTAZIONE DELL INFORMAZIONE

La codifica. dell informazione

Codice binario. Codice. Codifica - numeri naturali. Codifica - numeri naturali. Alfabeto binario: costituito da due simboli

Aritmetica dei Calcolatori

Unita aritmetica e logica. Input e output della ALU. Rappresentazione degli interi. Rappresentazione in modulo e segno. Aritmetica del calcolatore

Rappresentazione dei numeri

N= a i b i. Numeri e numerali. Sistemi di Numerazione Binaria. Sistemi posizionali. Numeri a precisione finita

DIPARTIMENTO DI MATEMATICA E INFORMATICA SISTEMI OPERATIVI. Anno Accademico 2017/2018. Docente: ing. Salvatore Sorce

Lezione 3. I numeri relativi

La codifica dei numeri

La rappresentazione dei dati

Rappresentazione dell informazione

1.2e: La codifica Digitale dei Numeri

La Rappresentazione dell Informazione

Sistemi di Elaborazione delle Informazioni

Bit, Byte, Word e Codifica Dati

Rappresentazione dei Dati

Un ripasso di aritmetica: Rappresentazione decimale - limitazioni

CPU, memoria centrale ae e dspost dispositivi sono o realizzati con tecnologia elettronica digitale

Informatica di Base - 6 c.f.u.

Informatica B. Sezione D. Scuola di Ingegneria Industriale Laurea in Ingegneria Energetica Laurea in Ingegneria Meccanica

Abilità Informatiche e Telematiche

Transcript:

Architettura degli Elaboratori e Laboratorio Matteo Manzali Università degli Studi di Ferrara Anno Accademico 2016-2017

Analogico vs digitale Segnale analogico Segnale digitale Un segnale è analogico quando i valori utili che lo rappresentano sono continui (infiniti). Un segnale è digitale quando i valori utili che lo rappresentano sono discreti e finiti. 2

I sistemi digitali In genere la moderna tecnologia si basa su segnali digitali (tecnologia digitale). I calcolatori utilizzano segnali digitali che possono assumere due stati logici: le informazioni vengono rappresentate da sequenze binarie alcune sequenze hanno nomi specifici bit 01010100001110101011010101110100 byte word 3

Aritmetica dei calcolatori L aritmetica usata dai calcolatori è diversa da quella comunemente utilizzata dalle persone: i numeri devono essere memorizzati entro un limitato spazio di memoria la precisione con cui i numeri possono essere espressi è finita e predeterminata (dipende dall architettura) Es.: π = 3. 1 4 1 5 9 2 9 4

Numeri a precisione finita I numeri a precisione finita sono quelli rappresentati con un numero finito di cifre. Fissando le caratteristiche della precisione si determina anche l insieme di valori rappresentabili. Es.: Si possono rappresentare solo numeri naturali con al massimo due cifre Insieme dei valori rappresentabili: 0 99 Esempi di valori NON rappresentabili: 999 0.123-12 etc 5

Operazioni a precisione finita Le operazioni con numeri a precisione finita causano errori nel caso in cui il risultato non appartiene all insieme dei valori rappresentabili: underflow il risultato è minore del più piccolo valore rappresentabile overflow il risultato è maggiore del più grande valore rappresentabile non appartenenza all insieme il risultato non è rappresentabile (pur non essendoci ne underflow ne overflow) 6

Operazioni a precisione finita Es.: Si possono rappresentare solo numeri naturali con al massimo due cifre 20-90 = -70 (underflow) 90 + 20 = 110 (overflow) 5 / 2 = 2.5 (non appartenenza all insieme) 7

Notazione posizionale La numerazione decimale che utilizziamo quotidianamente è una notazione posizionale in base 10. Nella notazione posizionale si associano alle cifre un diverso valore in base alla posizione che occupano nella notazione. 1234 è diverso da 4321 Base 10 significa che utilizziamo 10 cifre diverse per la numerazione (0, 1, 2, 3, 4, 5, 6, 7, 8, 9). 8

Notazione posizionale Scelta una base di rappresentazione B: ogni numero è rappresentato da una sequenza di simboli (cifre) appartenente ad un alfabeto di B simboli distinti ogni cifra rappresenta un valore compreso fra 0 e B-1 a ogni posizione corrisponde un peso, uguale ad una potenza della base crescente da destra a sinistra valore del numero = somma dei prodotti di ciascuna cifra per il peso associato alla sua posizione Esempio di rappresentazione su N cifre: 9

Sistemi con basi diverse Simboli ammessi con sistemi di basi diverse: sistema binario (B=2): 0 1 sistema decimale (B=10): 0 1 2 3 4 5 6 7 8 9 sistema esadecimale (B=16): 0 1 2 3 4 5 6 7 8 9 A B C D E F I sistemi con base B > 10 richiedono dei simboli aggiuntivi rispetto al sistema decimale. Per convenzione si utilizzano le lettere dell alfabeto: A = 10 B = 11 etc 10

Sistemi con basi diverse Ad ogni numero corrispondo notazioni diverse in basi diverse: sistema binario: 1001 1x2 3 + 0x2 2 + 0x2 1 + 1x2 0 sistema ottale: 11 1x8 1 + 1x8 0 sistema decimale: 9 9x10 0 Queste tre notazioni rappresentano lo stesso numero in basi diverse! 1001, 11, 9 Come capire la base? 11

Sistemi con basi diverse Esistono 10 tipi di persone: quelle che capiscono la notazione binaria e quelli che non la capiscono. Per evitare ambiguità se si utilizzano basi diverse bisogna specificare la base per ogni numero: (11111010001)due = (2001)dieci = (7D1)sedici base Base in lettere, così è implicitamente decimale! 12

Conversione tra basi Convertire un numero da base B a base 10 (somma dei pesi): (b)b = (bn B n + bn-1 B n-1 + + b1 B 1 + b0 B 0 )B = (c)dieci si sommano i pesi delle singole cifre è il metodo più intuitivo (ne esistono altri) Esempio: convertire (1011)cinque in base 10 (1011)cinque = 1 5 3 + 0 5 2 + 1 5 1 + 1 5 0 = 125 + 0 + 5 + 1 = 131 (1011)cinque = (131)dieci 13

Conversione tra basi Convertire un numero da base 10 a base B (serie di divisioni): (c)dieci = (cn cn-1 c1 c0)dieci = (bm bm-1 b1 b0)b se divido (c)dieci per B e prendo il resto ottengo b0 se divido per B il quoziente della divisione precedente e prendo il resto ottengo b1 continuo fino a quando il quoziente non è zero Esempio: convertire (131)dieci in base 5 131 / 5 = 26 resto 1 26 / 5 = 5 resto 1 5 / 5 = 1 resto 0 (131)10 = (1011)5 1 / 5 = 0 resto 1 14

I numeri binari Il sistema binario (bin) viene ampiamente utilizzato nella tecnologia digitale: ogni cifra può essere rappresentata tramite un livello di tensione (es. 0 0V, 1 5V) Anche il sistema esadecimale (hex) è molto usato nei calcolatori I bit (le cifre di un numero binario) vengono spesso rappresentati raggruppati di 4 in 4: facilità la conversione tra numeri binari ed esadecimali (0010 1000 0000 1111)due ( 2 8 0 F )sedici Alternativa per rappresentazione esadecimale: 0x280F 15

I numeri interi In un sistema di calcolo i numeri interi sono tipicamente rappresentati con un numero di bit che è una potenza di 2: 8 bit char 16 bit short 32 bit int 64 bit long long int I numeri possono essere con segno (signed) o senza segno (unsigned): char o unsigned char int or unsigned int 16

Numeri senza segno Nei calcolatori i numeri naturali (interi senza segno) vengono rappresentati con la loro notazione in base 2. Vanno considerati sempre tutti i bit previsti dalla precisione scelta. 0000 0000 = 0 0000 0001 = 1 Rappresentazione a 8 bit 0000 0010 = 2 Least Significant Bit (LSB) 0000 0011 = 3 Most Significant Bit (MSB) 1111 1110 = 254 1111 1111 = 255 = 2 8-1 Con n bit si possono rappresentare 2 n numeri, da 0 a 2 n - 1. 17

Addizione Valgono le stesse regole dell addizione con i numeri decimali (somma e riporto). Quando entrambi i bit hanno valore 1 si ha il riporto. Se la somma dei due bit più significativi genera riporto, si ha un overflow. Es.: riporto 11 1 1000 + 1001 + 1000 + 0011 = 0011 = 1000 = 1011 1100 10000 overflow 18

Numeri con segno Per i numeri interi con segno si sono inventate diverse rappresentazioni nel tempo. Quella universalmente utilizzata ora è complemento a 2. Per calcolare l opposto di un numero si procede come segue: si negano tutti i bit del numero si somma +1 Es. convertire 3 in -3 (utilizzando 4 bit per la rappresentazione) 0011 3 1100 nego i bit 1101 sommo +1 19

Numeri con segno Riguardo al complemento a 2: Il bit più significativo (MSB) rappresenta sempre il segno: 0 positivo, 1 negativo Rappresentazione dei numeri positivi identica a quella dei numeri senza segno. Il complemento a 2 permette di implementare la sottrazione come somma dell opposto: (X - Y) = (X + (-Y)) semplifica la logica del processore 20

Numeri con segno Esempio di rappresentazione a 4 bit di numeri in complemento a 2: 0111 = 7 1111 = -1 0110 = 6 1110 = -2 0101 = 5 1101 = -3 0100 = 4 1100 = -4 0011 = 3 1011 = -5 0010 = 2 1010 = -6 0001 = 1 1001 = -7 0000 = 0 1000 = -8 bit del segno Dati n bit, il range dei valori rappresentabili con il complemento a 2 è [-2 n-1, 2 n-1-1]. 21

Estensione del segno Dato un numero a n bit in complemento a 2, è possibile aumentare il numero di bit con cui il numero viene rappresentato estendendo il bit del segno: 0011 (+3 a 4 bit) 0000 0011 (+3 a 8 bit) 1101 (-3 a 4 bit) 1111 1101 (-3 a 8 bit) 22

Sottrazione Valgono le stesse regole della sottrazione con i numeri decimali (sottrazione e prestito). Metodo alternativo: grazie al complemento a 2 si può implementare la sottrazione come somma dell opposto. Es.: calcolare 5-3 tramite rappresentazione binaria a 4 bit (5)dieci = (0101)due (3)dieci = (0011)due 0101-0011 = 0101 + (-0011) = 0101 + (1100+1) = 0101 + 1101 = 0010 complemento a 2 0101 + 1101 = 10010 \ 23

Moltiplicazione Prima un esempio in base dieci: 123 x // moltiplicando 45 = // moltiplicatore 615 + 492 5535 Si moltiplica il moltiplicando per ogni cifra del moltiplicatore a partire dalla meno significativa. Ad ogni iterazione si sposta a sinistra di una cifra il risultato parziale rispetto ai risultati parziali precedenti. 24

Moltiplicazione In binario il procedimento è simile: 1110 x 0110 = 0000 + 1110 + 1110 + 0000 = 1010100 Ogni risultato parziale o è zero o è il moltiplicando spostato progressivamente a sinistra. La moltiplicazione si riduce ad una serie di somme e spostamenti a sinistra. 25