COMPITO IN CLASSE DI TPS Classe 3AInf

Transcript

COMPITO IN CLASSE DI TPS Classe 3AInf
COMPITO IN CLASSE DI TPS Classe 3AInf.
a.s.2014-2015 IQuadrimestre
ALUNNO__________________________
1) Calcolare il risultato delle seguenti operazioni binarie tra numeri interi con segno
rappresentati in complemento a due su 8 bit (indicando la presenza di un eventuale
overflow):
(00001101 + 00111101);
(00001100 + 10110110);
(00010100 – 01101111);
(11110100 + 11101000);
(00000001 + 11111110).
Scrivere l’equivalente rappresentazione dei numeri e del risultato anche in
decimale.
2) Siano date le seguenti coppie (a, b) di numeri binari su 8 bit:
(11110101, 11101010) e (11001010, 01001100).
Calcolare i risultati della differenza (a - b) considerando gli operandi codificati
rispettivamente come:
- numeri interi positivi;
- numeri interi con segno rappresentati in complemento a 2.
Indicare la presenza di un eventuale superamento nella rappresentazione .
3) Codificate il esadecimale tutti i numeri e i risultati degli esercizi precedenti e il valore restitutito nel registro
dei flag.
4)Convertite in binario il numero 175,43 fermandovi alla terza cifra dopo la virgola
Valutazione Il compito vale 10 punti
Obiettivi
Conoscere i principi della codifica binaria e il significato dei flag
COMPITO IN CLASSE DI TPS Classe 3AInf.
a.s.2014-2015 IQuadrimestre
ALUNNO__________________________
1) Calcolare il risultato delle seguenti operazioni binarie tra numeri interi con segno
rappresentati in complemento a due su 8 bit (indicando la presenza di un eventuale
overflow):
(00001101 + 00111101);
(00001100 + 10110110);
(00010100 – 01101111);
(11110100 + 11101000);
(00000001 + 11111110).
Scrivere l’equivalente rappresentazione dei numeri e del risultato anche in
decimale.
2) Siano date le seguenti coppie (a, b) di numeri binari su 8 bit:
(11110101, 11101010) e (11001010, 01001100).
Calcolare i risultati della differenza (a - b) considerando gli operandi codificati
rispettivamente come:
- numeri interi positivi;
- numeri interi con segno rappresentati in complemento a 2.
Indicare la presenza di un eventuale superamento nella rappresentazione .
3) Codificate il esadecimale tutti i numeri e i risultati degli esercizi precedenti e il valore restitutito nel registro
dei flag.
4)Convertite in binario il numero 175,43 fermandovi alla terza cifra dopo la virgola
Valutazione Il compito vale 10 punti
Obiettivi
Conoscere i principi della codifica binaria e il significato dei flag
SOLUZIONI
1) Soluzione:
(00001101 + 00111101)=; (13 + 61)dec=a+b 0 1 0 0 1 0 1 0 (74)10 60 Capitolo 2
(00001100 + 10110110): = 0 0 1 1 1 1 0 0 ;(12-74)dec= 1 1 0 0 0 0 1 0 (–62)dec
(00010100 – 01101111):
R00010000
a 0 0 0 1 0 1 0 0 + (20)10 +
b 1 0 0 1 0 0 0 1 (–111)10
a+b 1 0 1 0 0 1 0 1 (–91)10
(11110100 + 11101000):
R11100000
a 1 1 1 1 0 1 0 0 + (–12)10 +
b 1 1 1 0 1 0 0 0 (–24)10
a+b 1 1 0 1 1 1 0 0 (–36)10
(00000001 + 11111110):
R00000000
a 0 0 0 0 0 0 0 1 + (1)10 +
b 1 1 1 1 1 1 1 0 (–2)10
a+b 1 1 1 1 1 1 1 1 (–1)10
2) Soluzione:
(11110101, 11101010):
Considerando gli operandi numeri interi positivi rappresentati con 8 bit: Codifica dell'informazione
61
R11100000
a 1 1 1 1 0 1 0 1 + (245)10 +
b 1 1 1 0 1 0 1 0 (234)10
a+b 1 1 0 1 1 1 1 1 overflow
Considerando gli operandi numeri interi con segno rappresentati in modulo e
segno con 8 bit, gli operandi risultano entrambi negativi (–117, –106)10. Si effettui
la somma dei valori assoluti (rappresentati con 7 bit) degli operandi:
R1100000
|a| 1 1 1 0 1 0 1 + (117)10 +
|b| 1 1 0 1 0 1 0 (106)10
|a|+|b| 1 0 1 1 1 1 1 overflow
Considerando gli operandi numeri interi con segno rappresentati in complemento
a 1 con 8 bit, gli operandi risultano entrambi negativi (–10, –21)10.
R11100000
a 1 1 1 1 0 1 0 1 + (–10)10 +
b 1 1 1 0 1 0 1 0 (–21)10
11011111
Sommando al risultato così ottenuto il riporto in uscita dal bit più significativo si
ottiene il risultato finale:
00011111
11011111+
00000001
a+b 1 1 1 0 0 0 0 0 (–31)10
Considerando gli operandi numeri interi con segno rappresentati in complemento
a 2 con 8 bit:
R11100000
a 1 1 1 1 0 1 0 1 + (–11)10 +
b 1 1 1 0 1 0 1 0 (–22)10
a+b 1 1 0 1 1 1 1 1 (–33)10
(11001010, 01001100):
Considerando gli operandi numeri interi positivi rappresentati con 8 bit:
R11001000
a 1 1 0 0 1 0 1 0 + (202)10 +
b 0 1 0 0 1 1 0 0 (76)10
a+b 0 0 0 1 0 1 1 0 overflow
Considerando gli operandi numeri interi con segno rappresentati in modulo e
segno con 8 bit, gli operandi risultano (–74, +76)10. Essendo gli operandi di segno
discorde, occorre confrontare i valori assoluti (rappresentati con 7 bit) ed
effettuare la sottrazione binaria tra il minuendo (76)10 e il sottraendo (74)10
tenendo conto dei prestiti: 62 Capitolo 2
P0000010
|a| 1 0 0 1 1 0 0 – (76)10 –
|b| 1 0 0 1 0 1 0 (74)10
|a|–|b| 0 0 0 0 0 1 0 (2)10
Premettendo il segno positivo al risultato si ottiene: 00000010
Considerando gli operandi numeri interi con segno rappresentati in complemento
a 1 con 8 bit:
R11001000
a 1 1 0 0 1 0 1 0 + (–53)10 +
b 0 1 0 0 1 1 0 0 (+76)10
00010110
Sommando al risultato così ottenuto il riporto in uscita dal bit più significativo si
ottiene il risultato finale:
00000000
00010110+
00000001
a+b 0 0 0 1 0 1 1 1 (23)10
Considerando gli operandi numeri interi con segno rappresentati in complemento
a 2 con 8 bit:
R11001000
a 1 1 0 0 1 0 1 0 + (–54)10 +
b 0 1 0 0 1 1 0 0 (76)10
a+b 0 0 0 1 0 1 1 0 (22)10