Codice BCD e codici nella domotica: sistemi di codifica numerica

Slide sul Codice BCD e Codici nella Domotica. La Pdf esplora il codice BCD e altri sistemi di codifica numerica, con un focus sulle loro applicazioni nella domotica, per studenti universitari di Informatica.

Mostra di più

17 pagine

CODICE BCD E CODICI
NELLA DOMOTICA
lezione 11

Visualizza gratis il Pdf completo

Registrati per accedere all’intero documento e trasformarlo con l’AI.

Anteprima

Codici Digitali e Stringhe di Bit

CODICE BCD E CODICI NELLA DOMOTICA lezione 11Stringhe di bit

Non ridondanti Ridondanti possono essere Rivelatori errore i simboli sono Codice binario con due simboli Codici digitali pesati composti da Insieme di simboli che formano per uso 7 bit Unicode ASCII Industriale Alfabeto Parola Esteso 8 bit sotto codifiche UTF-8 UTF-16 UTF-32

Introduzione al Codice BCD

BCD Aiken Quinario Biquinario 2 su 5IL CODICE BCD (Binary Codec Decimal) Il codice BCD è molto usato in elettronica, specialmente in circuiti digitali privi di microprocessore, perché facilita la visualizzazione di lunghe cifre sui display a sette segmenti. Infatti ad ogni display fisico corrisponde esattamente una cifra. Anche l'esecuzione di semplici calcoli aritmetici è più semplice da effettuarsi su cifre BCD per circuiti logici combinatori. Ad esempio i BIOS dei personal computer memorizzano la data e l'ora in BCD.

Rappresentazione Numerica BCD

IL CODICE BCD (Binary Codec Decimal) BCD è il sistema di codifica che ci permette di rappresentare esclusivamente le dieci cifre decimali che vanno dallo 0 al 9, utilizzando 4 bit per rappresentare le cifre decimali in codice binario. Di tutte le possibili combinazioni ottenibili con 4 bit (24 = 16), solamente 10 vengono utilizzate; i restanti 6 caratteri (1010, 1011, 1100, 1101, 1110, 1111) non hanno significato quindi il codice BCD è un codice ridondante.

Tabella di Conversione Decimale-BCD

NUMERO DECIMALE NUMERO BCD peso > 8 4 2 1 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 0 1 0 1 6 0 1 1 0 7 0 1 1 1 8 1 0 0 0 9 1 0 0 1

Esempi di Codifica BCD

Esempio La codifica del numero decimale 27 con il codice BCD è la seguente: 27 0010 0111 cioè vengono codificate le singole cifre utilizzando 4 bit. Analogamente: . la codifica in codice BCD del numero (127), è (0001 0010 0111)BCD; · la codifica in codice BCD del numero (379), è (0011 0111 1001)BCD; . la codifica in codice BCD del numero (456) è (0100 0101 0110)2 BCD

Differenza tra BCD e Binario Puro

*ATTENZIONE !! Non bisogna confondere il codice BCD con la codifica dei numeri nel sistema binario: · (27)10 = (11011)2= (0010 0111)BCD " (127)10 = (111111)2 = (0001 0010 0111)} BCD · (379)10 = (101111011)2= (0011 0111 1001), BCD · (456)10 = (111001000)2= (0100 0101 0110)BCD Dato che il codice BCD codifica singolarmente ogni cifra, non l'insieme delle cifre, solo le prime dieci configurazioni della codifica BCD coincidono con la codifica binaria.

Proprietà del Codice BCD

IL CODICE BCD è un codice pesato Il codice BCD è un codice pesato: ogni elemento del carattere, partendo da destra (bit meno significativo, LSB) e procedendo verso sinistra (bit più significativo, MSB), ha peso rispettivamente 1, 2, 4, 8. Per esempio, (0101)BCD = 0 . 8 + 1 . 4 + 0 . 2 + 1 . 1 = (5) 10

Operazioni Aritmetiche Binarie

Regole per Somma e Sottrazione

REGOLE PER LA SOMMA E LA SOTTRAZIONE TRA NUMERI BINARI SOMMA 0+0=0 1+0= 1 0+1= 1 1+1= 0 (si riporta 1 a sinistra) 1+0= 1 SOTTRAZIONE 0-0=0 1-0= 1 0-1= 1 (ma deve chiedere in prestito un 1 al numero vicino) 1-1= 0

Somma con il Codice BCD

Esempio 1: Somma BCD con Correzione

Esempio 1 5+ 0101 + 8 = 1000 = 13 1101 Con le normali regole dell'addizione il risultato è 1101, ma tale valore non esiste in BCD: è infatti tra i caratteri privi di significato, mentre in codice binario puro equivale al numero 13. Il valore 13 espresso in BCD è invece 0001 0011. La discordanza tra i due valori, dovuta alla ridondanza del codice, sta nel fatto che al risultato della somma, in BCD, occorre aggiungere (6) = (0110) ... ogni volta che viene superato il numero 9, in quanto il salto che occorre fare per evitare caratteri privi di significato è di 6 posizioni. Nell'operazione precedente, dato che la somma decimale supera il 10, è necessario correggere il risultato eseguendo la seguente operazione: 1101 + primo risultato 0110 = numero 6 0001 0011

Esempio 2: Somma BCD con Correzione

Esempio somma con il codice BCD Esempio 2 Vediamo un secondo esempio in cui sommiamo 25 + 5 ottenendo 1010 che è una codifica non accettata: 25 + 0010 0101 + 0101 = 5 = 30 0010 1010 + 1010 non ammesso 0110 = sommo il numero 6 0011 0000 ottengo 30 SOMMA 0+0=0 1+0= 1 0+1= 1 1+1= 0 (si riporta 1 a sinistra) 1+0= 1

Sottrazione con il BCD

Esempio di Sottrazione BCD

Esempio sottrazione con il BCD Lo stesso problema viene riscontrato nelle sottrazioni in BCD: è necessario correggere il risultato ogni volta che occorre un prestito dalla cifra precedente nello svolgimento della differenza decimale. ESEMPIO Effettuiamo ora la sottrazione 33 - 4: 33- 4= 0011 0011 - 0100 = 29 0010 1111 - 1111 non ammesso 0110 = sottraggo il numero 6 0010 1001 ottengo 29 SOTTRAZIONE 0-0=0 1-0= 1 0-1= 1 (ma deve chiedere in prestito un 1 al numero vicino) 1-1= 0

Formati BCD per Memorizzazione

Packed BCD Nei personal computer i dati sono memorizzati a gruppi di 8 (byte) e dato che il codice BCD utilizza solo 4 bit abbiamo due alternative.

  • Unpacked BCD. Memorizzare una cifra per byte e riempire i restanti 4 bit con 0 o 1, perdendo 4 bit per ogni byte (utilizzata nel codice EBCDIC dei sistemi operativi per mainframe IBM).
  • Packed BCD. Mettere due cifre per byte aggiungendo un ulteriore quartetto di bit per indicare il segno. Il codice del segno è:
  • 1100 per il segno +
  • 1101 per il segno -

Complemento a N di un Numero

Complemento a N di un numero Ci sono alcune codifiche che, come il BCD, sono utilizzate nei sistemi automatici grazie alla loro semplicità di codifica/decodifica e alla possibilità di effettuare controlli di parità per verificare la correttezza dell'informazione. Prima di descrivere questo codice, ricordiamo il significato di complemento a N di un numero. Si dice complemento a N di un numero x il numero che si ottiene sottraendo da N il numero x. Per esempio, in decimale, il complemento a 9 del numero 3 è il numero 9 - 3 = 6; il complemento a 9 di 7 è 2: Cg[3] = C.[0011] = 1100 = (6). Cg[7] = C.[1101] = 0010 = (2) 10

Il Codice Aiken

IL CODICE AIKEN La principale caratteristica del codice Aiken è che è un codice autocomplementante a 9, cioè complementando (invertendo) i bit di un numero si ottiene il complemento a 9 del numero stesso. Nella tabella si possono vedere i numeri a coppie che sommati danno il numero 9: ciascuno dei due numeri che compone la coppia è la negazione dell'altro. Il codice Aiken è chiamato anche codice 2421 per il peso che hanno le diverse cifre nella formazione del numero: -le tre cifre meno significative hanno lo stesso peso del codice binario; -la cifra più significativa ha peso 2, invece di avere il peso 8 (23) del sistema posizionale.

Tabella di Conversione Aiken

NUMERO DECIMALE NUMERO AIKEN peso + 2 4 2 1 0 0 0 0 0 1 0 0 0 1 2 0 0 1 0 3 0 0 1 1 4 0 1 0 0 5 1 0 1 1 6 1 1 0 0 7 1 1 0 1 8 1 1 1 0 9 1 1 1 1

Esempi di Conversione Aiken

Esempio ESEMPIO Convertiamo in decimale i seguenti numeri. · 1011: sostituendo a ogni bit il corrispondente valore si ha 2 + 0 + 2 + 1 = 5; · 1110: sostituendo a ogni bit il corrispondente valore si ha 2 + 4 + 2 + 0 = 8; . 1111: essendo ogni bit al valore 1 otteniamo 2 + 4 + 2 + 1 = 9.

Il Codice Quinario

Il codice quinario è un codice a lunghezza fissa di 4 bit con pesi 5-4-2-1, in grado di codificare 5 + 4 + 2 + 1 + 1 = 13 simboli, cioè i numeri decimali a 1 a 12 oltre la codifica dello 0: si tratta quindi di un codice pesato e ridondante, dato che con 4 bit possiamo avere 24 = 16 differenti configurazioni e di queste se ne utilizzano solo 13.Con termine quinario si intende la presenza di una componente a cinque stati (quinaria). È stato impiegato nel UNIVAC Solid State a 4 bit (primo computer nato nel 1951) dove è stato aggiunto come bit più significativo un bit di parità dispari. Questa codifica potrebbe anche essere utilizzata in applicazioni particolari dove l'alfabeto sorgente è di 12 cifre (per esempio: i mesi dell'anno)

Tabella di Conversione Quinario

DECIMALE 5421 O 0000 1 0001 2 0010 3 0011 4 0100 5 1000 6 1001 7 1010 8 1011 9 1100 10 1101 11 1110 12 1111

Riferimenti

studiare da pag. 137 a pag.140

Non hai trovato quello che cercavi?

Esplora altri argomenti nella Algor library o crea direttamente i tuoi materiali con l’AI.