Esistono 10 tipi di persone al mondo: Quelli che conoscono il codice binario & Quelli che non lo conoscono.

Slides:



Advertisements
Presentazioni simili
Dall’informazione al linguaggio macchina
Advertisements

Rappresentazioni numeriche
1 I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI.
I numeri naturali ….. Definizione e caratteristiche
Informatica Generale Susanna Pelagatti
Sistemi di numerazione
Rappresentazione di Numeri Reali
Rappresentazioni numeriche
Trasmissione delle informazioni
Codifica dei Dati Idea: vogliamo rappresentare dati eterogenei utilizzando un linguaggio che l’elaboratore puo’ facilmente manipolare Essenzialmente vogliamo.
Sistemi di numerazione e codici
1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.
esponente del radicando
Algebra binaria Luglio 2002 Luglio 2002 Algebra binaria.
Esercitazioni su rappresentazione dei numeri e aritmetica
ESEMPI DI ARCHITETTURE DI DAC
27+ 12= Risultato troppo grande = = 39 = -25 errore di overflow in binario =
Informatica 3 Codifica binaria.
Sistemi Elettronici Programmabili
A.S.E.13.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 13 Somma e differenza di due numeri in C2Somma e differenza di due numeri in C2 Half AdderHalf.
A.S.E.6.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 6 Complemento a MComplemento a M Rappresentazione di numeri con segnoRappresentazione di numeri.
A.S.E.5.1 ARCHITETTURA DEI SISTEMI ELETTRONICI LEZIONE N° 5 Rappresentazione di numeri con segnoRappresentazione di numeri con segno –Modulo e segno (MS)
Sistemi di Numerazione
Corso di Informatica (Programmazione)
Settembre 2002IFTS2002 Acq. Dati Remoti: INFORMATICA 1 Rappresentazione dellinformazione (1)
Ottobre Arch. degli elab. Mod. A – 1. Rappresentazione dellinformazione1 Rappresentazione dei numeri interi.
Confronto di due signed (in compl. a 2) Caso 1: numeri dello stesso segno Non ci può essere overflow (sottraendo, viene fuori un numero più piccolo in.
NUMERI RELATIVI.
I CODICI.
Rappresentazioni numeriche
Rappresentazione binaria dei numeri interi senza segno.
Codici binari decimali
1 Sistemi Digitali. 2 Definizione Analog Waveform Time Voltage (V) 0 5 Digital Waveform Time Voltage (V)
Rappresentazioni numeriche. Introduzione Un calcolatore elettronico dispone di uno spazio finito per memorizzare le cifre che esprimono un valore numerico.
Cos’è un problema?.
Il sistema binario.
Sistema di comunicazione
Codifica binaria Rappresentazione di numeri
Rappresentazione di numeri relativi (interi con segno)
Usare rappresentazioni di lunghezza fissa porta ad avere valori non rappresentabili: Overflow indica un errore nella rappresentazione del risultato in.
Conversione binario - ottale/esadecimale
Conversione binario - ottale/esadecimale
Rappresentazione di Numeri Reali
1 © 1999 Roberto Bisiani Rappresentazione delle informazioni n Occorre un codice n Legato alla tecnologia usata Robustezza Semplicita Economicita.
Rappresentazione dell’informazione
ALGEBRA.
ARITMETICA BINARIA.
Programma del corso Introduzione agli algoritmi Rappresentazione delle Informazioni Architettura del calcolatore Reti di Calcolatori (Reti Locali, Internet)
Lez. 1 Introduzione all'architettura degli elaboratori
Dalle potenze ai numeri binari
Linguaggi e Programmazione per l’Informatica Musicale
Linguaggi e Programmazione per l’Informatica Musicale
La rappresentazione delle informazioni in un computer Seconda parte.
Process synchronization
Rappresentazione dell’Informazione
Rappresentazione dell’informazione nel calcolatore.
RETI LOGICHE Daniele Manzaroli
Rappresentazioni numeriche. Introduzione Un calcolatore elettronico dispone di uno spazio finito per memorizzare le cifre che esprimono un valore numerico.
Rappresentazione dell’informazione
Rappresentazioni a lunghezza fissa: problemi
Fondamenti di Informatica
Rappresentazione dell'informazione
La codifica dei numeri.
Conversione binario-ottale/esadecimale
Informatica Lezione 3 Psicologia dello sviluppo e dell'educazione (laurea magistrale) Anno accademico:
DIPARTIMENTO DI ELETTRONICA E INFORMAZIONE Numeri con segno ed in virgola Marco D. Santambrogio – Ver. aggiornata al 20 Marzo.
La numerazione ottale. Il sistema di numerazione ottale ha ampio utilizzo in informatica E’ un sistema di numerazione posizionale La base è 8 Il sistema.
Operazioni con le frazioni
Transcript della presentazione:

Esistono 10 tipi di persone al mondo: Quelli che conoscono il codice binario & Quelli che non lo conoscono

Rappresentazione binaria dei numeri interi senza segno

00110111 37 Conversione Decimale-Binario: 55 mod 2 =1 = a0 (55 div 2) mod 2 = 27 mod 2 = 1 = a1 ((55 div 2) div 2) mod 2= (27 div 2) mod 2=13 mod 2=1= a2 (13 div 2) mod 2= 6 mod 2 = 0 =a3 (6 div 2) mod 2 = 3 mod 2 = 1 =a4 (3 div 2) mod 2 = 1 mod 2 = 1 = a5 Dunque: 5510=1101112 Conversione Binario-Esadecimale: Raggruppo i bit a blocchi di 4: 11 0111 Converto ciascun blocco in base 16 112=316 01112=716 Dunque: 1101112 = 3716

00110111 37 82 52 Conversione Binario-Decimale: 01010010 =0*20+1*21+0*22+0*23+1*24+0*25+1*26+0*27= =2+16+64=8210 Conversione Binario-Esadecimale: Raggruppo i bit a blocchi di 4: 0101 0010 Converto ciascun blocco in base 16 01012=516 00102=216 =>5216

00110111 37 82 52 167 10100111 62 Conversione Esadecimale-Binario: Traduco ciascuna cifra esadecimale in un blocco di 4 bits : A16 = 1010= 23+21=10102 716 = 710= 22+21+20=01112 Il binario corrispondente si ottiene sostituendo ciascuna cifra esadecimale con il relativo blocco di 4 bit: A716=101001112 Conversione Esadecimale-Decimale: A7 =10*161+7*160=10*16+7=167 3E = 3*161+E*161=48+14=62

Conversioni numeri razionali Conversione Decimale-Binario frazionaria: Parte Intera {(0,1 * 2)} =0 = a-1 Parte Intera {Parte Frazionaria{(0,1 * 2)}} = 0 = a-2 …. 0,1 * 2 = 0,2 -> 0 = a-1 0,2 * 2 = 0,4 -> 0 = a-2 0,4 * 2 = 0,8 -> 0 = a-3 0,8 * 2 = 1,6 -> 1 = a-4 0,6 * 2 = 1,2 -> 1 = a-5 0,2 * 2 = 0,4 -> 0 = a-6 Dunque: 0,110=0,000112 (Periodico) Conversione Binario-Decimale frazionaria: 0,1010010=0*20+1*2-1+0*2-2 + 1*2-3 + 0*2-4 + 0*2-5 + 1*2-6 + 0*2-7 = 0,6562510

Somma tra Numeri Binari Interi Positivi Regole base: 0+0=0 0+1=1+0=1 1+1=0 con riporto di 1 1+1+(1)=1 con rip.1, dove (1) e’ il riporto proveniente dallo step precedente Esempio: 0 0 0 0 1 1 1 0 riporti 0 0 1 0 1 1 1 0 + 0 1 0 0 0 1 1 1 = ------------------- 0 1 1 1 0 1 0 1 1 0 0 0 1 1 1 0 riporti 1 0 1 0 1 1 1 0 + 1 1 0 0 0 1 1 1 = 1 1 1 1 0 1 0 1 Un trabocco indica un overflow

Sottrazione tra Numeri Binari Interi Positivi Regole base: 0-0=0 0-1=1 con prestito di 1 1-0=1 1-1=0 Esempio: 0 1 0 0 0 1 1 1 prestiti 1 0 1 0 1 1 1 0 - 0 1 0 0 0 1 1 1 = ------------------- 0 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 prestiti 1 0 1 0 0 1 1 0 - 1 1 0 0 0 1 1 1 = 1 1 0 1 1 1 1 1 Un trabocco indica un underflow.

Moltiplicazione tra Numeri Binari Interi Positivi 00110 x 00101 = 00110 00000 000011110 La moltiplicazione puo’ essere realizzata banalmente sommando al moltiplicando se stesso, un numero di volte pari al valore del moltiplicatore. 5*3=5+5+5=15. Assumendo che la somma abbia costo costante operando su addendi rappresentabili con un numero di bits noto a priori, tale algoritmo ha complessità computazionale pari a O(N), dove N è il valore del moltiplicatore. Se moltiplicando e moltiplicatore sono rappresentati con k bits, il prodotto può richiedere fino a un max di 2k bits per la sua rappresentazione. somme parziali

Moltiplicazione tra Numeri Binari Interi Positivi: Potenze di 2 Nel caso di moltiplicazione per potenza k-esima di 2 il risultato è uno shift a sinistra di k posizioni: 00110 x 100 = 00000 00110 0011000 00110 x 10 = 00000 00110 001100

Divisione tra Numeri Binari Interi Positivi Verifichiamo la correttezza del calcolo: 1001* 10001= 1001 0000 10011001+ 0010= (resto) 10011011 10011011 1001 1001 10001 00001011 1001 0010 quoziente resto

Divisione tra Numeri Binari Interi Positivi: Potenze di 2 Nel caso di divisione per potenza k-esima di 2 il risultato è uno shift a destra di k posizioni: 10011011 1000 1000 10011 0001101 1000 1011 11

Rappresentazione binaria dei numeri interi con segno

Proprietà della rappresentazione in complemento a 2: 101011012 = 1+4+32+128 =16510 (senza segno) 101011012=-1*(1+4+8+32)=-4510 (segno e modulo) 101011012=-1*27+1+4+32=-9110 (complemento a 2) per verificare: a) invertiamo 1 con 0 e viceversa: 0101000102, b) sommiamo 1: 0101000112=91 Proprietà della rappresentazione in complemento a 2: 1) L’operazione di cambiamento di segno è eseguibile complementando alla base 2) La sottrazione si può ricondurre ad una somma (vedi prox slide) 3) E’ possibile rappresentare lo stesso numero con un numero maggiore di bit semplicemente copiando il bit + significativo: es: -710=10012 (con 4 bit)=111110012 (con 8 bit)= 11111111111110012

Somma tra Numeri Binari in Complemento a 2 Siano a e b due numeri e sia R(a) e R(b) la rappresentazione di a e b in complemento alla base (ad es. base 2) Sommando R(a) ed R(b), e ignorando l’eventuale riporto dalla posizione più significativa, otteniamo R(a+b). A meno che non vi sia discordanza tra il segno del risultato e quello comune dei due addendi (ovvero a>0,b>0,a+b<0 oppure a<0,b<0,a+b>0): in tal caso si ha un supero di capacità. 00102+11012=11112 [2 + (-3) = -1] riporto 0000 0010+ 1101= 1111 01102+01112=OVERFLOW [6 + 7 = 13>7!] riporto 0110 0110 0111 1101 In generale per calcolare a – b basta: Trovare il complemento a 2 di b, cioè -b Sommare a+(-b)

Somma tra Numeri Binari in Complemento a 2 Siano a e b due numeri e sia R(a) e R(b) la rappresentazione di a e b in complemento alla base (ad es. base 2) Sommando R(a) ed R(b), e ignorando l’eventuale riporto dalla posizione più significativa, otteniamo R(a+b). A meno che non vi sia discordanza tra il segno del risultato e quello comune dei due addendi (ovvero a>0,b>0,a+b<0 oppure a<0,b<0,a+b>0): in tal caso si ha un supero di capacità. 11112+10002=OVERFLOW [-1 + (-8) = -9<-8] riporto 1000 1111+ 1000= 0111 01102+11112=0101 [6 + (-1) = 5] riporto 1110 0110 1111 0101 L’overflow è possibile solo se gli addendi hanno segno comune!

CORREZIONE ERRORI CODICI DI HAMMING Per “rivelare” errori di trasmissione il sistema che invia dati introduce ridondanza nelle informazioni trasmesse. Codice (n, k) con n> k => codice con parole di lunghezza n di cui k bit di informazione Un codice a distanza minima d e’ capace di rivelare errori di peso <= d-1 Dato un codice a distanza minima d esso ha una capacita’ di correzione di errori di peso <= INTINF((d-1)/2) Bits di informazione ricevuti Sistema trasmissione Generatore di chek bits (Encoder) Bits di parità Controllo dei chek bits (Decoder) p4 = I5 + I6 + I7 p2 = I3 + I6 + I7 S4 = p4 + I5 + I6 + I7 p1 = I3 + I5 + I7 S2 =p2 + I3 + I6 + I7 S1 = p1+ I3 + I5 + I7

CORREZIONE ERRORI CODICI DI HAMMING INFORMAZIONE DA INVIARE: 0110 STRINGA DI INVIO: 0110011 7 6 5 4 3 2 1 posizione X Gruppi I7 + I6 + I5 + p4 = 0 I7 + I6 + I3 + p2 = 0 I7 + I5 + I3 + p1 = 0 Bit di parità I7 I6 I5 p4 I3 p2 p1

CORREZIONE ERRORI CODICI DI HAMMING STRINGA RICEVUTA: 0110011 INFORMAZIONE RICEVUTA: 0110 ok!!!!! STRINGA RCEVUTA: 0111011 INFORMAZIONE RICEVUTA: ERRORE NEL 4 BIT, QUINDI CORREGGO E AVRO’ 0110011 ED ESTRAENDO L’INFORMAZIONE: 0110 ok!!!!! S4 = p4 + I5 + I6 + I7 S2 =p2 + I3 + I6 + I7 S1 = p1+ I3 + I5 + I7 S4 = 0 S2 = 0 S1 = 0 S4 = p4 + I5 + I6 + I7 S2 =p2 + I3 + I6 + I7 S1 = p1+ I3 + I5 + I7 S4 = 1 S2 = 0 S1 = 0