PDA

Visualizza la versione completa : [ALGORITMO] Conversioni da binario a ottale/esadecimale


{-_-}
18-11-2007, 19:13
come faccio a convertire da un binario in ottale, senza l'ausilio di una tabella?

ad esempio , come converto il numero binario 11010 in ottale e in esadecimale, senza utilizzare una tabella?


grazie

oregon
18-11-2007, 19:25
Come faresti con carta e penna?

P.S. Linguaggio?

{-_-}
18-11-2007, 19:40
ok ho capito, per un p un casino

nel senso prima lo converto in binario dividendo per due e invertendo le cifre e viene

11010

poi per l'ottale prendo le cifre tre a tre, e viene 011.010 = 32

per la esadecimale prendo le cirfre quattro a quattro e viene 0001.1010 = 1A

credo di non aver capito l'intervendo oregon :master:

{-_-}
18-11-2007, 19:41
adesso credo di aver capito, nel senso non lo devo fare in C, ma proprio con carta e penna :)

{-_-}
18-11-2007, 19:48
ho provato con questo a convertirlo in ottale ed esadecimale, ma non mi viene

001100011

{-_-}
18-11-2007, 19:49
che scemo invece mi viene

ottale 143

esadecimale 63

oregon
18-11-2007, 19:50
Io intendevo dire che, prima di scrivere il codice, devi conoscere l' "algoritmo" con cui operare (quindi il metodo da usare "a prescindere" dall'uso dell'informatica).

Avendo un "metodo" chiaro, che funziona, trasformarlo in codice e' semplice.

In generale, una trasformazione tra sistemi di numerazione implica una divisione per la base del sistema di arrivo. Ovvero, se parti dal tuo numero nel sistema decimale, per ottenere il corrispondente in qualsiasi base

1) dividi il valore per quello della base di arrivo

2) prendi il resto (sara' la prima cifra a destra)

3) finche' il risultato e' diverso da zero, ripeti.

Quante volte dovrai ripetere questo ciclo, dipende dal numero di cifre da utilizzare nel formato di arrivo.

{-_-}
18-11-2007, 19:53
si quel metodo lo conoscevo, solo che dividere per 2 a mente semplice , ma dividere velocemente per 8 e 16 difficile.
perch non ci fanno usare la calcolatrice nel compito :D

e allora io coverto sempre da base 10 a 2, poi da binario agli altri sempre pi semplice che guardare i resti di 8 e 16 senza calcolatrice.

:D

oregon
18-11-2007, 20:05
Ma il tuo e' un problema teorico o un programma da scrivere?

{-_-}
18-11-2007, 20:14
un problema teorico, settimana prox cmq scrivero anche il programma

Loading