presentazione del corso · • con una rappresentazione del tipo: xxxx.dddd, con quante cifre...
TRANSCRIPT
Obiettivi
➢ Conversione verso la base 10
➢ Conversione dalla base 10 alla base B
➢ Operazioni aritmetiche in base B
➢ Conversione tra le basi B e Bn
➢ Rappresentazione in complemento
➢ Rappresentazione in virgola mobile
➢ Rappresentazione dei caratteri e delle immagini
1
Cifre 3 2 7 2 3
Posizioni
Pesi
5
105
4
104
3
103
2
102
1
101
0
100
-1
10-1
-2
10-2
-3
10-3
Scrittura di un numero: cn-1 …c2 c1 c0 . c-1 c-2 …c-m
Sistema decimale: ci {0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }
,
3*102 + 2*101 + 7*100 + 2*10-1 + 3*10-2
Sistemi di numerazione posizionali
Cifre c5 c4 c3 c2 c1 c0 c-1 c-2 c-3
Pesi 25 24 23 22 21 20 2-1 2-2 2-3
0 0 1 1 0 1
,
Sistema binario (simboli 0,1)
Conversione verso la base 10
4
Cifre c5 c4 c3 c2 c1 c0 c-1 c-2 c-3
Pesi B5 B4 B3 B2 B1 B0 B-1 B-2 B-3
Zi
i
i Bc
00 000001 000102 001003 001104 010005 010106 011007 011108 100009 100110 101011 101112 110013 110114 111015 111116 10000
dec bin
Contare in base 2
Rappresentazione
della base ( 2 ) 10 = ( 10 )2
cifre ci = 0, 1In inglese: binary digit
bit
Massimo valore
rappresentabile
con n cifre
11 = 100 – 1 = 22 – 1
111 = 1000 – 1 = 23 – 1
1111 = 1 0000 – 1 = 24 – 1
1111 1111 = 1 0000 0000 – 1 = 28 – 1
1 11 … 11 = 1 00 … 00 – 1 = 2n – 1
Con 8 bit si possono rappresentare 28 = 256 combinazioni
diverse di 0 ed 1. ( Interi da 0 a 255 )
Sistema di numerazione binario
35 = 32+2+1 = 100011
12 = 8+4 = 1100
255 = 256 -1 = 1 0000 0000 – 1 = 1111 1111
260 = 256+4 = 1 0000 0100
51 x 4 = (32+16+2+1) x 4 = 11 0011 x 100
= 1100 1100
50 / 2 = (32+16+2) / 2 = 11 0010 / 10 = 1 1001
Esercizi
Operazioni aritmetiche in base 4
8
Conversione da esadecimale a decimale
(1A3)16= 1 × 16 2 + 10 × 16 1 + 3 × 16 0 = 419 10
( FF )16= 15 × 16 + 15 = 25510 = 16 2 - 1
( 10 )16 = 1 × 16 + 0 = 1610 = ( 1 0000 )2
Simboli 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Sistema esadecimale ( base 16 )
Contare nelle basi
00 0000 001 0001 102 0010 203 0011 304 0100 405 0101 506 0110 607 0111 708 1000 809 1001 910 1010 A11 1011 B12 1100 C13 1101 D14 1110 E15 1111 F16 10000 10
dec bin hex
Una cifra esadecimale
sintetizza
l’informazione
contenuta in 4 bit
1110 2 = 14 10 = E 16
1111 2 = 15 10 = F 16
1 0100 2 = 0001 0100 2 = 14 16 = 20 10
111 1010 0101 2 = 0111 1010 0101 2 = 7 A 5 16
1111 1111 2 = F F 16
B 6 16 = 1011 01102
Conversioni tra le basi: 2 e 16 4 cifre binarie 1 cifra esadecimale
Funzioni di Excel per le conversioni(Categoria ingegneristiche)
➢ BINARIO.DECIMALE
⚫ Converte un numero binario in decimale
➢ BINARIO.HEX
➢ DECIMALE.BINARIO
⚫ Converte un numero decimale in binario
➢ DECIMALE.HEX
➢ HEX.DECIMALE
➢ HEX.BINARIO
Unità di misura delle memorie
1 Byte = 8 bit
1 KB = 1024 B = 210 Byte ( 1 Kilo 103 )
1 MB = 1024 KB = 220 B ( 1 Mega 106 )
1 GB = 1024 MB = 230 B ( 1 Giga 109 )
1 TB = 1024 GB = 240 B ( 1 Tera 1012 )
1 PB = 1024 TB = 250 B ( 1 Peta 1015 )
1 EB = 1024 PB = 260 B ( 1 Exa 1018 )
Memoria centrale di un PC
Disco fisso di un PC
• Quattro interi di un byte l’uno, in totale 32 bit;ogni intero può variare tra 0 e 255
• Il numero massimo di indirizzi IP è:
232 = 22 • 210 • 210 • 210 = 4 Giga
• Un indirizzo IP è rappresentato da 4 numeri interi separati da un punto
1111 1111 . 1111 1111 . 1111 1111 . 1111 1111 =
= FF . FF . FF . FF
http://193.204.255.12
Indirizzi IPv4 in Internet
• Classe A - primo bit: 0
Poche reti (indirizzate con 7 bit) con molti host (identificati con 24 bit)
• Classe B - primi due bit: 10
Numero medio di reti (indirizzate con 14 bit) con numero
medio di host (identificati con 16 bit)
• Classe C - primi tre bit: 110
Molte reti (indirizzate con 21 bit) con pochi host (identificati con 8 bit)
Indirizzi IPv4 in Internet
http://193.204.255.12
4/1/2020 8:55:34 AM
16
Subnet Mask
➢ Serve per estrarre la NetID da un indirizzo IP
➢ ad es.
⚫ 128.156.14.7⚫ 1000 0000 ' 1001 1100 ' 0000 1110 ' 0000 0111
⚫ 1111 1111 ' 1111 1111 ' 0000 0000 ' 0000 0000
⚫ ———————————————————————
⚫ 1000 0000 ' 1001 1100 ' 0000 0000 ' 0000 0000
⚫ 128.156.0.0
AND
NetID
4/1/2020 8:55:34 AM
17
➢ 127.0.0.1 ➔ indirizzo di loopback
➢ NetID.255 ➔ tutti gli host della rete (broadcastdiretto)
➢ 255.255.255.255 ➔ tutti i nodi della rete fisica (broadcast limitato)
➢ 0.0.0.0 ➔ indirizzo non utilizzato (se non in via transitoria), indica ‘questo host’
➢ indirizzi per reti locali (intranet) non visibili in Internet:⚫ 10.*.*.*
⚫ 172.16-31.*.*
⚫ 192.168.*.*
Indirizzi particolari
Colori RGB (Red, Green, Blue)
➢ Tonalità dei tre colori R, G, B ⚫ da 0 a 255 in decimale
⚫ da 00 a FF in esadecimale
➢ Rosso 255,0,0 FF 00 00
➢ Verde 0,255,0 00 FF 00
➢ Blu 0,0,255 00 00 FF
➢ Nero 0,0,0 00 00 00
➢ Bianco 255,255,255 FF FF FF
➢ Giallo 255,255,0 FF FF 00
➢ Verificabile con i colori personalizzati di Office
Quanti colori differenti si
possono scegliere con
questa rappresentazione ?
Tipo Valori Limite Bit
Shortint - 128 .. 127 8
Integer - 32 768 .. 32 767 16
Longint - 2 147 483 648 .. 2 147 483 647 32
Byte 0 .. 255 8
Word 0 .. 65 535 16
Rappresentazione interna degli interi con segno
• Gli interi della rappresentazione sono usati in parte peri valori positivi ed in parte per quelli negativi
• Segno e valore assoluto
• Complemento a 2 (aritmetica dei contatori)
04 ( +4 )
03 ( +3 )
02 ( +2 )
01 ( +1 )
00 ( 0 )
99 ( -1 )
98 ( -2 )
97 ( -3 )
96 ( -4 )
Verificare che:
(+4) + (-2) = +2
(-4) + (+2) = -2
(-2) + (+2) = 0
(-1) + (-2) = -3
Rappresentazione interna degli interi con segno
• Rappresentazione in virgola fissa: xxxx.dddd
• Forte riduzione dell’intervallo numerico rappresentato.
• Con una rappresentazione del tipo: xxxx.dddd, con
quante cifre significative potrebbero essere rappresentati ivalori: 1234567.8, 1324.5678, 0.00018888 ?
• Quante cifre sarebbero necessarie per poter rappresentarevalori del tipo: 1.5*10+50, 2.0*10-30 ?
Rappresentazione interna dei Reali
▪ Un numero reale α in base b può essere scritto:
= x * b n = x E n
= c0. c1 c2 c3 c4 c5.. E n, c0 0
▪ Esempi:
-27.3E – 4 , - 12.45 E 00 , + 2.3 E –25 , 0.7845 E +30
-0.00273 , - 12.45 , + 0.0 …23 , 78450…0
▪ Normalizzazione: 1 | x | < b
Rappresentazione interna dei Reali
Virgola mobile (o floating point)
c0. c1 c2 c3 c4 c5.. E n, c0 0
c0 c1 c2 c3 c4 c5…
Mantissa
Per esempio, usando 8 cifre per la mantissa e quattro per
l’esponente:
12.5 = +1.25 E+1 12500000 0001
378.45 = +3.7845 E+2 37845000 0002
0.0073 = +7.3 E-3 73000000 9997
n
Esponente
Mantissa e Esponente
Tipo Valori Limite Bit
Real 2.9E-39 .. 1.7E+38 48
Single 1.5E-45 .. 3.4E+38 32
Double 5.0E-324 .. 1.7E+308 64
Extended 3.4E-4932 .. 1.1E+4932 80
Alcuni esempi di rappresentazione dei reali in virgola mobile
Rappresentazione Interna dei Caratteri
Codice ASCII
S\D 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 nil Bel Bs lf Ff cr
1
2 sp ! “ # $ % & ‘ ( ) * + , - . /
3 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4 @ A B C D E F G H I J K L M N O
5 P Q R S T U V W X Y Z [ \ ] ^ _
6 a b c d e f g h i j k l m n o
7 p q r s t u v w x y z | del
26
Codice ASCII (base)
27
Codice EBCDIC
Codice ASCII
• 1 carattere 2 cifre esadecimali
• Numero di caratteri rappresentati: 128 (7 bit)256 (8 bit)
Esempi: 00H nil
20H spazio
30H 0
41H A
61H a
……………
La rappresentazione interna induce l’ordinamento:
Sp < ‘0’< ‘1’< .. < ‘9’< .. < ‘A’ .. < ’Z’< .. < ’a’< ..< ’z’
Codice UNICODE
• I Caratteri ASCII standard sono 128 e non sono sufficienti per
rappresentare:
• differenti alfabeti nazionali
• simboli matematici
• alfabeto Greco, Arabo, Ebraico, Cirillico, …
• Unicode utilizza 16 bit per carattere
• Numero di caratteri rappresentabili: 65536
• I primi 128 caratteri di Unicode coincidono con lo
standard ASCII
Esercizi
Cosa rappresentano i seguenti valori di 16 bit se
vengono interpretati come coppie di caratteri
ASCII:
1) (4242)H
2) (4341)H
3) (3532)H
4) (4247)H
Funzioni Excel per i codiciCategoria Testo
➢ CODICE
Restituisce il codice ASCII decimale del primo carattere di una stringa di testo
➢ CODICE.CARATT
Restituisce il carattere ASCII specificato da un valore decimale (0 … 255)