A.S.E.4.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 4 Conversione da base 2 a base 8 e 16 e...

Post on 03-May-2015

213 views 0 download

Transcript of A.S.E.4.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 4 Conversione da base 2 a base 8 e 16 e...

A.S.E. 4.1

ARCHITETTURA DEI SISTEMI ELETTRONICI

LEZIONE N° 4• Conversione da base 2 a base 8 e 16 e

viceversa• Modulo e Modulo “M”• Rappresentazione di numeri con segno

– Modulo e segno– Complemento a 2– Complemento a 1– Traslazione

• Operazioni con iteri relativi

A.S.E. 4.2

Richiami

• Base 2, 3, 4, 5, 8, 10, 12, 16

• Aritmetica binaria

• Conversione da base “N” a base 10

• Conversione da base 10 a base “N”

A.S.E. 4.3

Binario Ottale• Dato un numero binario

• Operando per fattorizzazione:

33

22

11

00

11

22

33

44

55

66

77

88

321012345678

222

222222222

.

ddd

ddddddddd

ddddddddddddN

10

31

22

100

01

12

2

103

14

25

206

17

28

303

12

21

000

11

22

303

14

25

606

17

28

82228222

82228222

22222222

22222222

dddddd

dddddd

dddddd

dddddd

A.S.E. 4.4

Metodo di conversione

• Basta raggruppare le cifre del numero binario (bit) tre a tre e convertire ciascun gruppo nella corrispondente cifra (digit) ottale

• Esempio

• Nota: sono stati aggiunti degli zeri in testa e in coda affinché si avessero due gruppi di digit multipli di tre

153267.472

010111100.111110010011101001

10011101.1101111101011010

A.S.E. 4.5

Binario Esadecimale

• Stesso procedimento del caso precedente, però ora si raggruppano i bit quattro a quattro

• Esempio:

• Per le conversioni:– ottale binario;– esadecimale binario

si opera in modo simile convertendo ciascun digit nel corrispondente numero binario

D6B7.9D

11011001.0111101101101101

10011101.1101111101011010

A.S.E. 4.6

Ottale Esadecimale(Esadecimale Ottale)

• Conversione intermedia in binario • Esempio:

– ottale esadecimale

– esadecimale ottale

16

8

F53001101011111

0110101011117523

8

16

174741100111100111001001

11000011111110019F3C

A.S.E. 4.7

Modulo

• Il modulo di un numero è il valore assoluto del numero stesso – si indica con due barre verticali

• Risulta:• Esempio • Graficamente si ha:

N

531.0531.0;7.27.2;3131;2727

x

|x|

3

3

-3

0se0se XXXeXXX

A.S.E. 4.8

Osservazione

• Dati due numeri arbitrari X e Y, con Y ≠ 0, allora

– Se R = 0 allora X è divisibile per Y• Si può dimostrare che R e Q esistono e

sono unici• Esempi

YRR,YQX 0

5,27,19 RQYX

2,37,19 RQYX2,37,19 RQYX0,57,35 RQYX

5,27,19 RQYX

A.S.E. 4.9

Modulo-M (1/2)

• “X modulo M” è il “resto” della divisione di “X” diviso “M” (intero positivo); – si indica con due barre verticali e pedice M:

• R è detto anche “residuo”, e risulta

• Esempi:

MXR

MXMMXX

24.424.124;24.124.124;325;525;4251037107

parte intera inferioredella divisione X/M

resto della divisione intera X/M

A.S.E. 4.10

Modulo-M (2/2)

• Altra interpretazione: dato un numero X e detto R il modulo “M” di X

• 1° caso 0 ≤ X < M segue R = X• 2° caso X ≥ M si togli tante volte M in

modo che risulti 0 ≤ R < M • 3° caso X ≤ 0 si somma tante volte M in

modo che risulti 0 ≤ R < M

A.S.E. 4.11

Proprietà del modulo-M

• Dati due interi X e Z, e , risultano vere le seguenti relazioni:1) 2) 3)

MMMMZXZX

MMXKMX

MMMMZXZX

x

0M 2M-2M -M

y=|x|MM

K NM

A.S.E. 4.12

Osservazione 1

• L’operazione modulo “M” in generale non è biunivoca , ovvero dato il numero X è univocamente determinato R = |X|M

Dato R esistono infiniti numeri che hanno per residuo R stesso

• L’operazione modulo “M” è biunivoca se risulta

122

M

XM

A.S.E. 4.13

Esempio grafico

• Per M = 16 risulta

-16 -15 -14 -13 -12 -11 -10 -9 -8 -7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 160

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

712

82

M

M

A.S.E. 4.14

Osservazione 2

• Data una base B, se si dispone di un numero limitato di digit (K), se si esegue l’addizione di due numeri la cui somma eccede BK , allora la somma S assume il valore

• Esempio In base 10, disponendo di sole due cifre si ha:

KBBAS

87 54 141 41

A.S.E. 4.15

Numeri binari con segno

• Il numero massimo di bit usato da un calcolatore è noto e fisso

• Solitamente è : 4 o 8 o 16 o 32 (Word)• 8 bit formano un Byte

• Non esiste un apposito simbolo per il segno• Si usa il bit più significativo per indicare il

segno• 0 = +• 1 = -

• Si hanno varie tecniche di codifica• Modulo e segno

– Complemento a 2• Complemento a 1• Traslazione ( cambia la codifica del segno)

A.S.E. 4.16

Modulo e segno (1)

• Operando in base “B” e disponendo di “N” cifre

• Si può numerare BN oggetti distinti [0 ÷ (BN-1)]• Dovendo numerare sia oggetti positivi, che negativi, si

sceglie di “centrare l’intervallo

122

1 NN B

XB

A.S.E. 4.17

Modulo e segno (2)

• Assumendo– B > base in cui si opera– N > Digit (cifre) a disposizione (lunghezza della

parola) – X > numero di cui si vuole eseguire la conversione– XMS > rappresentazione di X in M.S.

• Risulta

• In Base 2 risulta11

1

2 ha si 0 21per

ha si 120per

N

MSN

MSN

XXX

XXX

2 ha si 0

21per

ha si 12

0per

N

MS

N

MS

N

BXXX

B

XXB

X

A.S.E. 4.18

Esempio 1

• Disponendo di 3 digit in base 10– Stabilire il max e min rappresentabile– Convertire in MS i numeri 25, 147, -13, -258

• Essendo B = 10 e N = 3, risulta

499X499- 122

1 NN B

XB

25 025

147 147

13 13 500 513

258 258 500 758

A.S.E. 4.19

Esempio 2

• Disponendo di 8 digit in base 2– Stabilire il max min rappresentabile– Convertire in MS i numeri 1111 (15), 1110101 (117),

-10111 (-23), -1011001 (-89)

271X127- 1221 77 X

1111 00001111

1110101 01110101

10111 10010111

1011001 11011001

A.S.E. 4.20

Modulo e segno (3)

• Se si dispone di “n” bit

• Il corrispondente in base 10 è

• Il renge dei numeri risulta

• Esempio n = 4

021 dddw nn

00

33

2210 2221 1 dddw n

nn

ndn

1221 110

1 nn w

5510101 0 6611110 1

A.S.E. 4.21

Complemento a 2 (1)

• Assumendo– B > base in cui si opera = 2– N > Digit (cifre) a disposizione (lunghezza della

parola) – X > numero di cui si vuole eseguire la conversione– XC2 rappresentazione di X in C2

• Risulta 12 2

12 2

per 0 2 1 si ha 2

per 2 0 si ha 2 2

N

N

N NC

N N NC

X X X X

X X X X

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

-20 -16 -12 -8 -4 0 4 8 12 16 20

Serie1

A.S.E. 4.22

Esempio

• Disponendo di 8 digit in base 2– Stabilire il max e min rappresentabile– Convertire in C2 i numeri 1111 (15), 1110101 (117),

-10111 (-23), -1011001 (-89)

271X128- 122 77 X

1671010011110110011000000001011001

233111010011011110000000010111

011101011110101

000011111111

A.S.E. 4.23

Esempio grafico

• Per B = 2 e N = 4, si ha

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

-20 -16 -12 -8 -4 0 4 8 12 16 20

Serie1

1 8, 8 8 1 7

per 0 7

per 8 0 16

NB X

X Y X

X Y X

A.S.E. 4.24

Complemento a 2 (2)

• Se si dispone di “n” bit

• Il corrispondente in base 10 è

• Il renge dei numeri risulta

• Esempio n = 4

021 dddw nn

1 2 3 010 1 2 3 02 2 2 2n n n

n n nw d d d d

122 110

1 nn w

0101 8 0 5 5 1110 8 1 6 2

A.S.E. 4.25

Complemento a 1 (1)

• Assumendo– Bit a disposizione (lunghezza della parola)

N– X numero di cui si vuole eseguire la

conversione– XC1 rappresentazione di X in C1

• Risulta

12 ha si 0 21per

ha si 120per

11

11

NC

N

CN

XXX

XXX

A.S.E. 4.26

Esempio

• Disponendo di 8 digit in base 2– Stabilire il max min rappresentabile– Convertire in C1 i numeri 1111 (15), 1110101 (117),

-10111 (-23), -1011001 (-89)

271X127- 1221 77 X

10100110101100111111111101100111000000001011001

11101000101111111111110111110000000010111

011101011110101

000011111111

A.S.E. 4.27

Complemento a 1 (2)

• Se si dispone di “n” bit

• Il corrispondente in base 10 è

• Il renge dei numeri risulta

• Esempio n = 4

021 dddw nn

00

33

221

110 22221 ddddw n

nn

nnn

1221 110

1 nn w

550810101 161811110

A.S.E. 4.28

Traslazione (1)

• Assumendo– Bit a disposizione (lunghezza della parola)

N– X numero di cui si vuole eseguire la

conversione– XT rappresentazione di X in T

• Risulta

12 NT XX

A.S.E. 4.29

Esempio

• Disponendo di 8 digit in base 2– Stabilire il max e min rappresentabile– Convertire in T i numeri 1111 (15), 1110101 (117),

-10111 (-23), -1011001 (-89)

271X128- 122 77 X

001001111011001100000001011001

01101001101111000000010111

111101011110101100000001110101

100011111111100000001111

A.S.E. 4.30

Traslazione(2)

• Se si dispone di “n” bit

• Il corrispondente in base 10 è

• Il renge dei numeri risulta

• Esempio n = 4

021 dddw nn

100

22

1110 2222

nnn

nn dddw

1 1102 2 1n nw

3850101 68141110

A.S.E. 4.31

Trasformazione da numeri positivi a numeri negativi e viceversa

• Per la rappresentazione in modulo e segno• Basta cambiare il bit di segno

• Per la rappresentazione in complemento a 1• Si complementano tutti bit

• Per la rappresentazione in complemento a 2• Si complementano tutti bit e si somma 1

• Per la rappresentazione in traslazione• Si somma sempre 2n-1

110105001015 NN

110105001015 NN

110111110105001015 NN

010115165101015165 NN

A.S.E. 4.32

Modulo e segno

• In Base 2 risulta

• Per parola di 8 bit si ha:

XXX

XXXN

MSN

MSN

11

1

2 ha si 0 21per

ha si 120per

A.S.E. 4.33

Tabella Riassuntiva

• Con riferimento a una word di “n” bit, si ha:

• K = 2n

• H = 2n-1

• W numero in base 2 da convertire• W’ numero convertito

1222222TR.12222222 C.1221222211 C.12212221S. M.

DINAMICAVALORETIPO

110

100

22

11

110

110

100

33

221

110

110

100

33

221

110

110

100

33

2210

1

nnnn

nn

n

nnnn

nnn

n

nnnn

nnn

n

nnnn

nn

d

wdddwwddddwwddddwwdddw n

WHWWHWWKWWWWKWWWWHWWW

HK NN

''TR.''2 C.

1''C.1''S. M.

0W 0WTIPO

22 1

A.S.E. 4.34

Varie rappresentazioni su 4 bit Base 10 Mod e seg comp a

1comp a

2trasl.

7 0.111 0.111 0.111 1.1116 0.110 0.110 0.110 1.1105 0.101 0.101 0.101 1.1014 0.100 0.100 0.100 1.1003 0.011 0.011 0.011 1.0112 0.010 0.010 0.010 1.0101 0.001 0.001 0.001 1.0010 0.000 0.000 0.000 1.0000 1.000 1.111 0.000 1.000-1 1.001 1.110 1.111 0.111-2 1.010 1.101 1.110 0.110-3 1.011 1.100 1.101 0.101-4 1.100 1.011 1.100 0.100-5 1.101 1.010 1.011 0.011-6 1.110 1.001 1.010 0.010-7 1.111 1.000 1.001 0.001-8 - - 1.000 0.000

A.S.E. 4.35

Addizione in Modulo e segno

• Somma [1-2n-1<(X+Y)<2n-1-1]

• * è necessario fare un test sul segno prima di eseguire

la somma

Addendi Somma Somma M. S. Correzione

0'

0

0' *

0

0' *

0

0' 2 *

0

XZ X Y Z X Y OK

Y

XZ X Y Z X Y H no

Y

XZ X Y Z X Y H no

Y

XZ X Y Z X Y H no

Y

WHWWHWWKWWWWKWWWWHWWW

HK NN

''TR.''2 C.

1''C.1''S. M.

0W 0WTIPO

22 1

A.S.E. 4.36

Addizione in Complemento a 2• Somma [-2n-1<(X+Y)<2n-1-1]

• Osservare che K non è possibile rappresentarlo su n bit• * Per X < |Y| il risultato è rappresentato in C. 2• ** Per Y < |X| il risultato è rappresentato in C. 2• *** Il risultato è rappresentato in C. 2

***2'0

0

**''

0

0

*''

0

0

''0

0Correzione2 C. SommaSommaAddendi

KYXZYXZY

XXY

ZZKYXZYXZ

Y

XYX

ZZKYXZYXZ

Y

X

ZZYXZYXZY

X

WHWWHWWKWWWWKWWWWHWWW

HK NN

''TR.''2 C.

1''C.1''S. M.

0W 0WTIPO

22 1

A.S.E. 4.37

Esempi • Parola di 4 bit • 3 + 4 = 7 5 + (-3) = 2 (-5) + 3 = (-

2)

• (- 4) +(-3) = -7 6 + 5 =11 (-6) + (-5) =(-11)

0 0 1 1

0 1 0 0

0 1 1 1

0 1 0 1

1 1 0 1

1 0 0 1 0

0 1 1 0

0 1 0 1

1 0 1 1

1 0 1 1

0 0 1 1

1 1 1 0

1 1 0 0

1 1 0 1

1 1 0 0 1

1 0 1 0

1 0 1 1

1 0 1 0 1

A.S.E. 4.38

Osservazioni

• Se la word si estende “K” bit si ha• per numeri positivi si aggiungono in testa K zeri• per numeri negativi si aggiungono in testa K uno

• EsempioWord di 4 bit

Word di 6 bit

3 0.011 0.00011

4 0.100 0.00100

7 0.111 0.00111

-3 1.101 1.11101

-4 1.100 1.11100

-7 1.001 1.11001

A.S.E. 4.39

OverfloW• Parola di 4 bit • 3 + 4 = 7 5 + (-3) = 2 (-5) + 3 = (-

2)

• (- 4) +(-3) = -7 6 + 5 =11 (-6) + (-5) =(-11)

0 0 0 0

0 0 1 1

0 1 0 0

0 1 1 1

1 1 0 1

0 1 0 1

1 1 0 1

1 0 0 1 0

0 1 0 0

0 1 1 0

0 1 0 1

1 0 1 1

0 0 1 1

1 0 1 1

0 0 1 1

1 1 1 0

1 1 0 0

1 1 0 0

1 1 0 1

1 1 0 0 1

1 0 1 0

1 0 1 0

1 0 1 1

1 0 1 0 1

1 nn ccOv

A.S.E. 4.40

Conclusioni

• Rappresentazione di numeri con segno– Modulo e segno– Complemento a 2– Complemento a 1– Traslazione

• Operazioni con iteri relativi (prima parte)