Sito Visitato 498739 volte | Pagina Visitata 1882 volte | Sei in : Etantonio/IT/Universita/1anno/FondamentiInformatica/Sysop/ |
Codifica binaria 1) Trasformare in decimale il n° binario 101101 : Occorre moltiplicare il lsb per 20 sommarlo alle cifre seguenti moltiplicate per 2p con p = posizione nel numero pertanto : 101100(2) = 1*22 + 1*23 + 1*25 = 44(10)
2) Trasformare in binario il n° decimale 44 : Occorre dividere il n° per 2 sin quando il quoziente risultante è maggiore di 2, a tal punto si sarà creata una sequenza di 0 ed 1 che sono i soli possibili resti della divisione per 2 e prendendoli in modo che il 1° resto è il meno significativo si ottiene il n° binario corrispondente, nel nostro caso:
Il corrispondente n° binario è pertanto 101100(2)
3) Quanti bits sono necessari per codificare in binario il n° 746 : il n° di bits necessari è n = [ Log2 746 ] = 10 dove [ ] sta ad indicare l´intero immediatamente successivo.
4) Come si passa dal binario 101100 al corrispondente n° ottale : Occorre considerare i bit a partire dal meno significativo raggruppandoli in gruppi di 3 bits ed associare a questi 3 bits il corrispondente codice ottale, nel nostro caso pertanto : 101 100 5 4 Pertanto il n° ottale corrispondente è 54(8) .
5) Come si passa dal binario 101100 al corrispondente n° esadecimale : Occorre considerare i bit a partire dal meno significativo raggruppandoli in gruppi di 4 bits ed associare a questi 4 bits il corrispondente codice esadecimale, nel nostro caso pertanto : 0010 1100 2 C Pertanto il n° esadecimale corrispondente è 2C(16) .
6) Descrivere le tabelle logiche della addizione e della moltiplicazione binaria : Addizione Moltiplicazione 0 + 0 = 0 0 * 0 = 0 1 + 0 = 1 1 * 0 = 0 0 + 1 = 1 0 * 1 = 0 1 + 1 = 10 1 * 1 = 1
7) Come si effettua una moltiplicazione binaria: Come una moltiplicazione decimale ossia ponendo i molteplicandi uno sotto alla altro ed effettuando il prodotto del 1° bit del 2° numero per il 1° numero, poi si va a capo e si scala di un posto a sx e si fa la stessa moltiplicazione stavolta per il 2° bit del 2° numero e così via. Il risultato occuperà un n° di bit doppio rispetto ai moltiplicandi. 1011 * 101 = 1011 0000 1011 110111 Il risultato della moltiplicazione è dunque 110111(2) .
8) Descrivere le modalità di codifica dei numeri negativi : La 1ª modalità studiata fu di associare al bit più a sinistra l´informazione sul segno del n° ma questo metodo ha il problema del doppio 0, problema presente anche nel caso della codifica in complemento ad 1 mentre è assente nel caso di codifica in complemento a 2.
9) Codificare in complemento ad 1 il n° decimale 10110 : Occorre semplicemente sostituire gli 1 con 0 e viceversa pertanto si ottiene : 01001
10) Su quale principio si basa la codifica in complemento a 2 : Quando si sottrae ad un n° un secondo n° si ottiene un valore anche ottenibile sommando al 1° numero il complemento a 10 del 2° e trascurando l´eventuale riporto, pertanto 9 - 3 = 6 ma anche 9 + 7 = 16 essendo appunto 7 il complemento a 10 di 3 . Analogo risultato vale per i numeri binari la cui rappresentazione in complemento a 2 si ottiene prima ricavando la rappresentazione in complemento ad 1 e successivamente sommando 1. n° binario 00001011 complemento a 1 11110100 complemento a 2 11110101
11) Come si possono rappresentare i numeri reali: Un possibile metodo è quello in virgola fissa nel quale si hanno a disposizione x bit per la parte intera ed y bit per la parte decimale. Un altro metodo è quello in virgola mobile nel quale si sposta la virgola in modo che alla sua destra vi sia la 1ª cifra significativa e questo si ottiene moltiplicando poi il n° per una potenza del 2. Si definisce : Mantissa Þ I bits a destra della virgola Caratteristica Þ L´esponente cui si deve elevare il 2. Il formato di un numero reale è quindi :
segno caratteristica segno mantissa caratteristica o esponente mantissa Questa rappresentazione è detta in semplice precisione, la rappresentazione in doppia precisione invece occupa un totale di 64 bits, 54 bits per la mantissa (compreso il segno) e 10 bits per la caratteristica (compreso il segno).
12) Quale è l´effetto della istruzione TRUNC (n° reale) : Restituisce il solo intero del n° reale tagliando via la parte decimale senza alcun interesse a problemi di arrotondamento. TRUNC(7,6) = 7 e TRUNC(-7,1) = -7
13) Quale è l´effetto della istruzione ROUND (n° reale) : Restituisce l´intero più prossimo al n° reale pertanto ROUND(7,6) = 8 e ROUND(-7,1) = -7
14) Quanto vale in codifica BCD il n° 123(10) : In Binary Coded Decimal ad ogni cifra decimale si assegna il corrispondente n° binario, la codifica corrispondente è pertanto costituita sicuramente da un multiplo di 4 bits, nel nostro caso : 1 2 3 0001 0010 0011 La codifica binaria è pertanto : 000100100011 . È uno spreco di bits ma è l´ideale per i display.
15) Descrivere il formato del codice ASCII : È costituito da 8 bits dei quali 8 dedicati alla codifica dei simboli ed 1 bit destinato al controllo di parità in particolare: Parità dispari Þ se il n° di bit 1 del carattere è pari, viene aggiunto un bit 1 per renderlo dispari. Parità pari Þ se il n° di bit 1 del carattere è dispari, viene aggiunto un bit 1 per renderlo pari.
16) Descrivere il codice Gray : È un codice che nasce allo scopo di far sì che dalla codifica di un n° alla codifica del n° successivo vari soltanto un bit, questo consente di evitare stati non effettivi nei circuiti dove i tempi di commutazione non sono uguali per tutte le porte. |