Rappresentazione dei numeri positivi e negativi - PowerPoint PPT Presentation

About This Presentation
Title:

Rappresentazione dei numeri positivi e negativi

Description:

Title: Lectures for 2nd Edition Author: Tod Amon Last modified by: Gianni Danese Created Date: 8/27/1997 8:06:46 PM Document presentation format: Presentazione su schermo – PowerPoint PPT presentation

Number of Views:48
Avg rating:3.0/5.0
Slides: 19
Provided by: TodA178
Category:

less

Transcript and Presenter's Notes

Title: Rappresentazione dei numeri positivi e negativi


1
Rappresentazione dei numeri positivi e negativi
  • Esiste un problema come rappresentare i numeri
    negativi
  • Prima soluzione rappresentazione in Modulo e
    Segno (anche detta Binario Naturale)
  • Si utilizza un bit per rappresentare il segno
    del numero considerato
  • 0 ? (numero positivo)
  • 1 ? - (numero negativo)
  • Se consideriamo un byte, rimangono ora 7 bit per
    il modulo del numero i numeri rappresentabili
    sono perciò ?0-127

/- b6 b5 b4 b3 b2 b1 b0
2
Rappresentazione dei numeri positivi e negativi
Significato in modulo e segno Rappresentazione binaria Significato in valore assoluto
7 0 111 7
6 0 110 6
5 0 101 5
4 0 100 4
3 0 011 3
2 0 010 2
1 0 001 1
0 0 000 0
-0 1 000 8
-1 1 001 9
-2 1 010 10
-3 1 011 11
-4 1 100 12
-5 1 101 13
-6 1 110 14
-7 1 111 15
  • Consideriamo per
  • semplicità solo 4 bit.
  • In modulo e segno
  • In valore assoluto

/- b2 b1 b0
b3 b2 b1 b0
3
Rappresentazione dei numeri in Modulo e Segno
4
Rappresentazione in modulo e segno problemi
  • Addizione e sottrazione sono le operazioni di cui
    si deve disporre per poter realizzare qualsiasi
    operazione aritmetica più complessa
  • Si supponga che il calcolatore abbia una Unità
    Aritmetica che realizzi indipendentemente le due
    operazioni.
  • Di fronte ad una somma algebrica, il calcolatore
    dovrebbe
  • confrontare i due segni
  • se uguali, attivare il circuito di addizione
  • se diversi, identificare il maggiore (in valore
    assoluto) ed attivare il circuito di sottrazione
  • completare il risultato con il segno corretto
  • I passi indicati non sono eseguibili
    contemporaneamente perché ognuno dipende dai
    precedenti
  • In pratica per effettuare somma e sottrazione si
    ricorre ad un unico circuito, utilizzando un
    metodo che permette di evitare le operazioni di
    confronto

5
Complemento alla base di un numero
  • Nella rappresentazione in complemento alla base
    con n cifre le bn combinazioni rappresentano
    numeri positivi e negativi.
  • In particolare
  • le combinazioni da 0 a bn2 - 1 rappresentano i
    numeri positivi, rispettando la usuale
    rappresentazione posizionale
  • Le combinazioni da bn2 fino a bn 1
    rappresentano i numeri negativi, con la seguente
    definizione
  • dato un numero positivo X, il suo corrispondente
    negativo è dato da
  • bn-X

6
Complemento alla base 1 di un numero
  • Nella rappresentazione in complemento alla base
    1 con n cifre le bn combinazioni rappresentano
    numeri positivi e negativi.
  • In particolare
  • le combinazioni da 0 a bn2 - 1 rappresentano i
    numeri positivi, rispettando la usuale
    rappresentazione posizionale
  • Le combinazioni da bn2 fino a bn 1
    rappresentano i numeri negativi, con la seguente
    definizione dato un numero positivo X, il suo
    corrispondente negativo è dato da
  • (bn-1)-X

7
Complemento alla base
  • b2, n5
  • Positivi da 0 a 01111
  • Negativi da 10000 a 11111
  • X 01011 trovo -X
  • 1 0 0 0 0 0 -
  • 0 1 0 1 1

b2, n7 Positivi da 0 a 0111111 Negativi da
1000000 a 1111111 X0011000 trovo -X 1 0 0
0 0 0 0 0 - 0 0 1 1 0 0 0
1 0 1 0 1
1 1 0 1 0 0 0
Regola pratica partendo dal bit meno
significativo, si riportano invariati tutti i bit
fino al primo bit a 1 compreso si complementano
i rimanenti bit (0 ? 1, 1 ? 0)
8
Complemento alla base -1
  • X36, b10, n2
  • in complemento alla base -1 è 99 - 36 63
  • Si ottiene complementando a 9 ogni singola cifra
  • X01011, b2, n5
  • -X in complemento alla base -1 è (25 - 1) - X
    (100000 - 1) - X
  • 11111 - 01011 10100
  • Si ottiene complementando ogni singolo bit (0 ?
    1, 1 ? 0)

9
Rappresentazione in complemento Riepilogo
  • Rappresentazione in complemento a 2 i numeri
    positivi sono rappresentati dal loro modulo e
    hanno il bit più significativo (segno) posto a 0.
    I numeri negativi sono rappresentati dalla
    quantità che manca al numero positivo per
    arrivare alla base elevata al numero di cifre
    utilizzate, segno compreso. Pertanto i numeri
    negativi hanno il bit del segno sempre a 1
  • Metà delle configurazioni sono perciò riservate
    ai numeri positivi e metà ai numeri negativi
  • Discorsi analoghi possono essere fatti per basi
    diverse da 2 in base 10 un numero è negativo se
    la prima cifra è ? 5, in base 8 se ? 4, in base
    16 se ? 8

10
Rappresentazione in complemento alla base
  • Con n bit a disposizione
  • Il numero minimo rappresentabile è -2n-1
  • Il numero massimo rappresentabile è 2n-1 - 1
  • -1 è rappresentato da tutti 1 qualunque sia il
    numero di bit considerato
  • Il numero può essere interpretato considerando il
    bit più significativo con segno negativo

b3 b2 b1 b0
N - b3 ? 23 b2 ? 22 b1 ? 21 b0? 20
11
Utilità del complemento alla base
  • Con la tecnica del complemento si può utilizzare
    un solo circuito per effettuare sia laddizione,
    sia la sottrazione
  • Operiamo in base 10 e vogliamo calcolare A B.
  • Si supponga di conoscere il risultato
    delloperazione 10 - B (complemento a 10 di B).
    Allora
  • A - B A (10 - B) a condizione che si
    trascuri il riporto
  • Analogo discorso con k cifre purché si disponga
    del risultato delloperazione 10k B
    (complemento a 10k). Si ricordi sempre di fissare
    il numero di cifre
  • Se operiamo in base 2, con k cifre
  • A - B A (2k - B) a condizione che si
    trascuri il riporto
  • Se si utilizza la tecnica del complemento alla
    base -1 occorre sommare il riporto al risultato
    finale

12
Operazioni aritmetiche in complemento
  • Esempi con 6 cifre binarie
  • Complemento a 2 Complemento a 1
  • 19 (-17) 19 (-17)
  • 0 1 0 0 1 1
    0 1 0 0 1 1
  • 1 0 1 1 1 1
    1 0 1 1 1 0
  • 1 0 0 0 0 1 0 (2) 1 0 0 0 0 0 1
  • 1
  • 0 0 0 0 1 0 (2)

13
Operazioni aritmetiche in complemento
  • Esempi con 6 cifre binarie
  • Complemento a 2 Complemento a 1
  • (-17) (-2) (-17) (-2)
  • 1 0 1 1 1 1
    1 0 1 1 1 0
  • 1 1 1 1 1 0
    1 1 1 1 0 1
  • 1 1 0 1 1 0 1 (-19) 1 1 0 1 0 1 1
  • 1
  • 1 0 1 1 0 0 (-19)

14
Operazioni aritmetiche in complemento
  • Esempi con 6 cifre binarie
  • 19 17
  • 0 1 0 0 1 1

    0 1 0 0 0 1

1 0 0 1 0 0 (-28)
Si sono sommati due numeri positivi e si è
ottenuto un numero negativo. Il risultato
corretto (36) non è rappresentabile in
complemento a 2 con 6 bit (massimo numero
rappresentabile 31) Il fenomeno si chiama
traboccamento o overflow
15
Operazioni aritmetiche in complemento
Esempi con 6 cifre binarie
  • Complemento a 2
  • (-19) (-17)
  • 1 0 1 1 0 1
  • 1 0 1 1 1 1

Complemento a 1 (-19) (-17) 1 0 1 1 0 0
1 0 1 1 1 0
1 0 1 1 0 1 0 1
1 0 1 1 1 0 0 (28)
0 1 1 0 1 1 (27)
Si sono sommati due numeri negativi e si è
ottenuto un numero positivo. Il risultato
corretto (-36) non è rappresentabile in
complemento a 2 con 6 bit (minimo numero
rappresentabile -32 in C.a 2 e 31 in C. a
1) Il fenomeno si chiama traboccamento o overflow
16
Somma di numeri di N bit in complemento a 2
0 ? A ? 2N-1 -1 0 ? B ? 2N-1 -1 -2N-1 ? A lt 0 0 ? B ? 2N-1-1 0 ? A ? 2N-1 -1 -2N-1 ? B lt 0 -2N-1 ? A lt 0 -2N-1 ? B lt 0
0 ? S ? 2N-2 -2N-1 ? S lt 2N-1-1 -2N-1 ? S lt 2N-1-1 -2N ? S lt 0
Sommando due numeri positivi si ha overflow se si ottiene un numero negativo. S potrebbe non essere rappresentabile in N bit ma lo è sempre in N1 bit. Non ci sono mai problemi di overflow. Non ci sono mai problemi di overflow. Sommando due numeri negativi si ha overflow se si ottiene un numero positivo. S potrebbe non essere rappresentabile in N bit ma lo è sempre in N1 bit.
17
Esempi di somma di numeri binari
  • Complemento a 2
  • 120
  • 105
  • - 31
  • Overflow1

Valore Assoluto 120 105 225 Riporto0
0 1 1 1 1 0 0 0 0 1 1 0 1 0 0 1 1 1 1 0 0 0
0 1
251 240 235 Riporto1
- 5 - 16 - 21 Overflow0
1 1 1 1 1 0 1 1 1 1 1 1 0 0 0 0 1 1 1 0 1 0 1
1
18
Tecnica delleccesso
  • Usato per scopi particolari
  • Viene sommata una costante fissa, ad esempio con
    n bit pari a 2n-1-1, al numero dotato di segno da
    rappresentare il numero risultante viene
    convertito in binario
  • Con questa convenzione il bit di segno è invertito

8 1111
7 1110
6 1101
5 1100
4 1011
3 1010
2 1001
1 1000
0 0111
-1 0110
-2 0101
-3 0100
-4 0011
-5 0010
-6 0001
-7 0000
Write a Comment
User Comments (0)
About PowerShow.com