• 34 + 77 [R. (1101111)2]
• 34 + 77 [R. (157)8]
• 34 + 77 [R. (6F)16]
• 84 – 37 [R. (101111)2]
• 84 – 37 [R. (57)8]
• 84 – 37 [R. (2F)16]
111111 X
11110 =
1233332100
1111110 +
11111100 +
111111000 +
1111110000 =
11101100010
111101 X
11111 =
1233332100
111101 +
1111010 +
11110100 +
111101000 +
1111010000 =
11101100011
111011 X
11111 =
123333211
111011 +
1110110 +
11101100 +
111011000 +
1110110000 =
11100100101
110111 X
11111 =
1223332210
110111 +
1101110 +
11011100 +
110111000 +
1101110000 =
11010101001
11110111011|1100011
1100011 | 10011
110001011|
1100011 |
11000101|
1100011|
1100010|
12°) Esegui la divisione binaria tra 1999 e 100, convertendo il quoziente ed il resto in
decimale.
11111001111|1100100
1100100 | 10011
110001111|
1100100 |
11000111|
1100100|
1100011|
13°) Esegui la divisione binaria tra 1990 e 91, convertendo il quoziente ed il resto in
decimale.
11111000110|1011011
1011011 | 10101
1000010110|
1011011 |
10101010|
1011011|
1001111|
14°) Esegui la divisione binaria tra 1937 e 97, convertendo il quoziente ed il resto in
decimale.
11110010001|1100001
1100001 | 10011
110000001|
1100001 |
10111111|
1100001|
1011110|
11111111
256 – 107 = 149 = 100101012 100101012 +
127 = 011111112 011111112 =
000101002
DEC(00010100) = 4+16 = 20
11111111
256 – 99 = 157 = 100111012 100111012 +
119 = 011101112 011101112 =
000101002
DEC(00010100) = 4+16 = 20
11111 11
256 – 103 = 153 = 100110012 100110012 +
115 = 011110112 011110112 =
000101002
DEC(00010100) = 4+16 = 20
111 11
256 – 95 = 161 = 101000012 101000012 +
115 = 011100112 011100112 =
000101002
DEC(00010100) = 4+16 = 20
SOTTRAZIONI TRA NUMERI INTERI
RAPPRESENTATI IN COMPLEMENTO A DUE
111
256 – 115 = 141 = 100011012 100011012 -
256 – 95 = 161 = 101000012 101000012 =
111011002
DEC(11101100) = 4+8+32+64-128 = -20
11111
256 – 123 = 133 = 100001012 100001012 -
256 – 103 = 153 = 100110012 100110012 =
111011002
DEC(11101100) = 4+8+32+64-128 = -20
111111
256 – 119 = 137 = 100010012 100010012 -
256 – 99 = 157 = 100111012 100111012 =
111011002
DEC(11101100) = 4+8+32+64-128 = -20
111111
256 – 127 = 129 = 100000012 100000012 -
256 – 107 = 149 = 101000012 100101012 =
111011002
DEC(11101100) = 4+8+32+64-128 = -20
ESERCIZI SUI NUMERI IN VIRGOLA MOBILE
1°) Calcola il valore del numero rappresentato in virgola mobile dalla parola binaria
corrispondente al numero esadecimale (5E3C)16.
(5E3C)16 = (0101111000111100)2
S = 0, E = 10111, M = 1000111100
e = 101112 – 15 = 1+2+3+16-15 = 8
m = (1,10001111)2
x = (1,10001111)2 x 2^8
2°) Calcola il valore del numero rappresentato in virgola mobile dalla parola binaria
corrispondente al numero esadecimale (5FCC)16.
(5FCC)16 = (0101111111001100)2
S = 0, E = 10111, M = 1111001100
e = 101112 – 15 = 1+2+4+16-15 = 8
m = (1,11110011)2
x = (1,11110011)2 x 2^8
3°) Calcola il valore del numero rappresentato in virgola mobile dalla parola binaria
corrispondente al numero esadecimale (60AC)16.
(60AC)16 = (0110000010101100)2
S = 0, E = 11000, M = 0010101100
e = 110002 – 15 = 8+16-15 = 9
m = (1,00101011)2
x = (1,00101011)2 x 2^9
(6174)16 = (0110000101110100)2
S = 0, E = 11000, M = 0101110100
e = 110002 – 15 = 8+16-15 = 9
m = (1,01011101)2
x = (1,01011101)2 x 2^9
5°) Rappresenta in virgola mobile con 16 bit il numero 0,1, convertendo il risultato in
esadecimale.
6°) Rappresenta in virgola mobile con 16 bit il numero 0,3, convertendo il risultato in
esadecimale.
7°) Rappresenta in virgola mobile con 16 bit il numero 0,7, convertendo il risultato in
esadecimale.
8°) Rappresenta in virgola mobile con 16 bit il numero 0,9, convertendo il risultato in
esadecimale.
; 11011001
MOVLW 205 ; W = (11001101)2 +
ADDLW 217 ; (11011001)2 =
; (10100110)2 = 2 + 4 + 32 +
; + 128 = 166
; C = 1, DC = 1, Z = 0
; 11001111
MOVLW 237 ; W = (10111000)2 -
SUBLW 184 ; (11101101)2 =
; (11001011)2 = 1 + 2 + 8 + 64
; + 128 = 203
; C = 0, DC = 0, Z = 0
6°) Trasformare il contenuto del registro d’indirizzo (20) 16 dal codice ASCII di una lettera
in forma maiuscola al codice ASCII della stessa lettera in forma minuscola.
8°) Scambiare tra loro i contenuti dei registri d’indirizzo (20) 16 e (30)16.
9°) Invertire il livello del segnale presente su ciascuna delle quattro linee d’uscita RB4,
RB5, RB6 ed RB7, senza modificare il segnale sulle altre linee della porta B.
10°) Sommare al contenuto del registro d’indirizzo (20) 16 quello del registro d’indirizzo
(30)16 solo se il risultato è minore di 256.
11°) Sottrarre al contenuto del registro d’indirizzo (20) 16 quello del registro d’indirizzo
(30)16 solo se il risultato è maggiore o uguale a zero.
12°) Traslare di una posizione verso sinistra tutti i bit del codice binario contenuto nel
registro d’indirizzo (20)16, copiando il valore del bit più significativo nella posizione di
ordine zero.
13°) Incrementare di uno il numero binario di 16 cifre la cui parte bassa è contenuta nel
registro d’indirizzo (20)16 e la cui parte alta è contenuta nel registro d’indirizzo (21) 16.
MOVLW 1 ;W = 1
ADDWF 20H,F ;[20h] = [20h] + W = [20h] + 1
MOVF STATUS,W ;W = STATUS
ANDLW 00000001B ;W = STATUS and (00000001)2
ADDWF 21H,F ;[21h] = [21h] + Carry
14°) Moltiplicare per due il numero binario di 16 cifre la cui parte bassa è contenuta nel
registro d’indirizzo (20)16 e la cui parte alta è contenuta nel registro d’indirizzo (21) 16.
15°) Configurare le linee RA0, RA1, RA2 ed RA3 in ingresso; la linea RA4 in uscita ed a
livello alto.
16°) Simulare una porta logica NOT con ingresso la linea RA0 ed uscita la linea RA4 (si
supponga che RA0 sia già impostata in ingresso ed RA4 in uscita).
17°) Simulare una porta AND con ingressi le linee RA0 ed RA1 ed uscita la linea RA4 (si
supponga che RA0 ed RA1 siano già impostate in ingresso ed RA4 in uscita).
19°) Simulare una porta EXOR con ingressi le linee RA0 ed RA1 ed uscita la linea RA4
(si supponga che RA0 ed RA1 siano già impostate in ingresso ed RA4 in uscita).
20°) Simulare una porta NAND con ingressi le linee RA0 ed RA1 ed uscita la linea RA4
(si supponga che RA0 ed RA1 siano già impostate in ingresso ed RA4 in uscita).
21°) Simulare una porta NOR con ingressi le linee RA0 ed RA1 ed uscita la linea RA4 (si
supponga che RA0 ed RA1 siano già impostate in ingresso ed RA4 in uscita).