Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Convertitori numerici Excel, Appunti di Informatica

Conversioni numeriche con il programma Microsoft Office Excel

Tipologia: Appunti

2016/2017

Caricato il 21/02/2017

Giuseppe.d_Aniello3
Giuseppe.d_Aniello3 🇮🇹

1 documento

1 / 5

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Convertitori numerici in Excel
Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel (o
con Calc, il suo equivalente gratuito e open source di OpenOffice).
Sfrutteremo la capacità di Excel (o di Calc) di memorizzare un numero in una cella e di chiamare il
contenuto di questa cella in forma simbolica attraverso le sue coordinate (es. scrivere A4 significa
“il contenuto della cella A4”), e alcune funzioni come quelle per fare la somma (funzione
SOMMA), o quelle per trovare il quoziente (funzione QUOZIENTE) e il resto (funzione RESTO)
della divisione tra due numeri.
L’idea è quella di riservare alcune celle per l’input, dove andrà scritto il numero da convertire, e
altre celle per l’output, dove si leggerà il risultato della conversione. E’ ovvio che specificando “a
priori” il numero delle celle utilizzate, potremo solo realizzare convertitori che sanno convertire un
numero limitato di valori.
Convertitore binario F 0
A E
F 0
2 0
decimale
Iniziamo con l’esempio più semplice: realizziamo un foglio Excel per convertire un numero da
binario a decimale. Predisponiamo le celle per l’input, quelle in cui vogliamo che venga scritto il
numero binario da convertire, evidenziandole con un colore di sfondo:
Avendo scelto solo 4 celle per il nostro input, e poiché scriveremo un bit per ogni cella, il nostro
convertitore saprà convertire solo numeri binari con 4 bit, e non di più.
Ora predisponiamo una cella per l’output, dove leggeremo i risultati della conversione:
Ora dobbiamo impostare le formule in modo da ottenere la conversione: ricordando che per
convertire un numero binario (b1b2b3b4)2 in decimale, dove b1, b2, b3 e b4 sono i suoi 4 bit che
possono essere 0 o 1, si applica la formula
(b1b2b3b4)2 = b1 * 23 + b2 * 22 + b3 * 21 + b4 * 20
e poiché nelle caselle A2, B2, C2 e D2 leggeremo rispettivamente i valori dei bit b1, b2, b3 e b4 del
numero da convertire, dobbiamo indicare che il contenuto della cella A9, dove si leggerà il risultato,
è uguale alla somma tra il contenuto di A2 (bit b1) moltiplicato per 23, più il contenuto di B2 (bit b2)
moltiplicato per 22, più il contenuto di C2 (bit b3) moltiplicato per 21, più il contenuto di D2 (bit b4)
moltiplicato per 20. Selezioniamo con il cursore, quindi, la cella A9 e scriviamo nella barra della
formula:
= SOMMA(A2*2^3; B2*2^2; C2*2^1; D2*2^0)
Ora facciamo una prova per vedere se il nostro convertitore funziona:
Facciamo un'altra prova:
pf3
pf4
pf5

Anteprima parziale del testo

Scarica Convertitori numerici Excel e più Appunti in PDF di Informatica solo su Docsity!

Convertitori numerici in Excel

Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel (o con Calc, il suo equivalente gratuito e open source di OpenOffice). Sfrutteremo la capacità di Excel (o di Calc) di memorizzare un numero in una cella e di chiamare il contenuto di questa cella in forma simbolica attraverso le sue coordinate (es. scrivere A4 significa “il contenuto della cella A4”), e alcune funzioni come quelle per fare la somma (funzione SOMMA), o quelle per trovare il quoziente (funzione QUOZIENTE) e il resto (funzione RESTO) della divisione tra due numeri. L’idea è quella di riservare alcune celle per l’input, dove andrà scritto il numero da convertire, e altre celle per l’output, dove si leggerà il risultato della conversione. E’ ovvio che specificando “a priori” il numero delle celle utilizzate, potremo solo realizzare convertitori che sanno convertire un numero limitato di valori.

Convertitore binario F 0A EF 02 0 decimale Iniziamo con l’esempio più semplice: realizziamo un foglio Excel per convertire un numero da binario a decimale. Predisponiamo le celle per l’input, quelle in cui vogliamo che venga scritto il numero binario da convertire, evidenziandole con un colore di sfondo:

Avendo scelto solo 4 celle per il nostro input, e poiché scriveremo un bit per ogni cella, il nostro

convertitore saprà convertire solo numeri binari con 4 bit, e non di più.

Ora predisponiamo una cella per l’output, dove leggeremo i risultati della conversione:

Ora dobbiamo impostare le formule in modo da ottenere la conversione: ricordando che per

convertire un numero binario (b1b2b3b4) 2 in decimale, dove b1, b2, b3 e b 4 sono i suoi 4 bit che possono essere 0 o 1, si applica la formula (b 1b2b3b4) 2 = b 1 * 23 + b 2 * 22 + b 3 * 21 + b 4 * 20 e poiché nelle caselle A2, B2, C2 e D2 leggeremo rispettivamente i valori dei bit b 1, b2, b3 e b 4 del numero da convertire, dobbiamo indicare che il contenuto della cella A9, dove si leggerà il risultato, è uguale alla somma tra il contenuto di A2 (bit b1) moltiplicato per 23, più il contenuto di B2 (bit b 2) moltiplicato per 22, più il contenuto di C2 (bit b 3) moltiplicato per 21, più il contenuto di D2 (bit b4) moltiplicato per 20. Selezioniamo con il cursore, quindi, la cella A9 e scriviamo nella barra della formula: = SOMMA(A22^3; B22^2; C22^1; D22^0)

Ora facciamo una prova per vedere se il nostro convertitore funziona:

Facciamo un'altra prova:

Convertitore ottale F 0A EF 02 0 decimale

Una volta fatto il convertitore da binario a decimale, realizzare quello da ottale a decimale è una stupidaggine. Infatti, il procedimento è esattamente lo stesso, solo che stavolta il sistema di numerazione ha base 8, quindi il valore che le cifre assumono nelle diverse posizioni sono potenze dell’8, e non del 2. Per il resto, tutto è uguale. Predisponiamo un nuovo file, o un nuovo foglio di lavoro nello stesso file precedente, per realizzare questo convertitore; come prima, predisponiamo le caselle per l’input e l’output, e inseriamo nella casella A9 la seguente formula: = SOMMA(A28^3;B28^2;C28^1;D28^0)

Abbiamo la seguente situazione:

Fatto, il nostro convertitore è pronto e funzionante. Ci possiamo divertire ora a fare le conversioni in automatico, senza dover stare a fare i conti a mano: qualunque numero ottale inseriremo nelle caselle gialle, troveremo nella casella verde il suo equivalente in decimale.

ATTENZIONE: occorre ricordarsi che perché il convertitore funzioni non bisogna inserire nell’input cifre superiori al 7, altrimenti il numero non sarebbe ottale, e tutto salta! (proprio come nel convertitore precedente da binario a decimale non possiamo inserire cifre che non siano 0 o 1).

Convertitore esadecimale F 0A EF 02 0 decimale

Questo convertitore è un po’ più difficile da realizzare, in quanto il sistema esadecimale comprende le cifre da 0 a 9 e le lettere A, B, C, D, E ed F. Il meccanismo è lo stesso dei precedenti, ma stavolta ci sono le lettere che ci danno un po’ fastidio. Sappiamo che A=10, B=11, C=12, D=13, E=14 e F=15, occorre quindi prevedere un meccanismo di traduzione dalle lettere ai numeri, per poter effettuare i calcoli. Di nuovo, usiamo le funzioni di Excel per effettuare questa traduzione. Predisponiamo, come nei due convertitori precedenti, l’input e l’output evidenziando le celle dove andrà scritto il numero esadecimale da convertire, e quella dove si leggerà il risultato.

Ora, nelle caselle da A2 a D2 si scriverà il numero esadecimale da convertire, e queste potranno contenere sia numeri (da 0 a 9) sia lettere (dalla A alla F). Faremo in modo che nella riga 3 compaia lo stesso numero dove però al posto delle lettere troveremo i numeri corrispondenti: ad esempio, se nella casella B2 compare la lettera C, nella casella B3 vogliamo che compaia il numero 12; oppure, se nella casella D2 compare la lettera F, vogliamo che nella casella D3 compaia il numero 15; se invece compare un numero, nella riga 3 dovrà apparire lo stesso numero. In sostanza, vogliamo che Excel faccia per noi la seguente cosa in automatico:

E’ chiaro che una volta che saremo riusciti a fare ciò, basterà modificare la stessa formula che abbiamo usato nei precedenti convertitori mettendo la base 16 al posto di 2 o di 8, per convertire il nostro numero in decimale. Ma come è possibile trasformare la A in 10, la B in 11, ecc.?

Convertitore decimale F 0A EF 02 0 binario Ritorniamo al sistema binario, e cerchiamo ora di realizzare un convertitore per trasformare i numeri decimali in numeri binari. Il procedimento, come abbiamo studiato a lezione, è quello di dividere successivamente il numero per 2 fino a quando il quoziente è uguale a 0, e poi prendere i resti in ordine inverso. Al solito, iniziamo predisponendo alcune caselle di input per il numero da convertire, e altre caselle di output per il numero convertito.

Come si può notare dalla figura, avremo bisogno di altre caselle dove memorizzare i quozienti delle divisioni per 2, mentre nelle caselle verdi leggeremo i resti, che formano il nostro numero binario. Per trovare quozienti e resti, useremo le formule QUOZIENTE e RESTO di Excel. Iniziamo con la prima divisione: occorre trovare il quoziente e il resto della divisione di A2 per 2. Il quoziente andremo a scriverlo nella casella D6, e il resto nella casella D9. Selezioniamo la casella D6, e scriviamo nella barra della formula = QUOZIENTE (A2;2) Poi selezioniamo la casella D9, e scriviamo nella barra della formula = RESTO (A2;2) Siamo nella seguente situazione:

Vediamo se la divisione funziona: proviamo a inserire un numero nella casella A

Perfetto, 13:2 fa 6 con resto 1, proprio come ci aspettavamo. Ora, occorre prendere il 6 e dividerlo per 2, o meglio, più in generale, il contenuto della casella D6 e dividerlo per due, ottenendo di nuovo un quoziente e un resto. Il quoziente andremo a scriverlo nella casella C6, e il resto nella casella C9. Selezioniamo la casella C6, e scriviamo nella barra della formula = QUOZIENTE (D6;2) Poi selezioniamo la casella C9, e scriviamo nella barra della formula = RESTO (D6;2) Ora la nostra situazione è la seguente (nell’esempio particolare in cui il numero inserito in A2 è 13, ma poiché nelle formule ci riferiamo alle caselle qualunque sia il loro contenuto, la cosa funziona con ogni numero in input):

Continuando in questo modo, dividiamo per due il contenuto della cella C6 ottenendo il quoziente in B6 e il resto in B9: selezioniamo la casella B6, e scriviamo nella barra della formula = QUOZIENTE (C6;2) Poi selezioniamo la casella B9, e scriviamo nella barra della formula = RESTO (C6;2)

E di nuovo, terminando, dividiamo il contenuto della cella B6 per 2 ottenendo il quoziente in A6 e il resto in A9, come nella seguente figura:

Il nostro convertitore è terminato! Facciamo un’altra prova:

Si noti che usando solo 4 caselle per il numero binario, il nostro convertitore saprà convertire numeri decimali da 0 fino a 15, e non maggiori. Infatti, per i numeri da 16 in poi, avremmo bisogno di un quinto bit, che non avevamo predisposto.