Преобразование дробной части шестнадцатеричного числа к двоичному

cs.stackexchange https://cs.stackexchange.com/questions/129842

Вопрос

номер дан как: (C012.25) шестнадцатеричный Я должен преобразовать его во восьмерикал. Поэтому я преобразовал его в двоичный в первую очередь и получил результат как: 11000000000010010.01000000 (поскольку каждый бит в шестнадцатеричном виде представляет 4 бита в двоичном количестве C= 1100,0= 0000,1= 0001,2= 0010 и для 0,25= 0,01000000) Решение упоминает бинарное преобразование как 1100000000010010.00100101

Пожалуйста, помогите мне о том, что было сделано неправильно! Кроме того, если я получил двоичное представление ... Как я могу преобразовать дробную часть двоичной нет в восьмерию (0,00100101).

Это было полезно?

Решение

Вот как преобразовать дробную часть из шестнадцатеричных для двоичных: $$ (0.25) _ {16}=frac {2} {16} + \ frac {5} {16 ^ 2}= \ frac {0 \ cdot 8 + 0 \ cdot 4 + 1 \ cdot 2 + 0 \ cdot 1} {16} + \ frac {0 \ cdot 8 + 1 \ cdot 4 + 0 \ cdot 2 + 1 \ cdot 1} {16 ^ 2}= \\ \ frac {0} {2} + \ frac {0} {4} + \ frac {1} {8} + \ frac {0} {16} + \ frac {0} {32} + \ frac {1}{64} + \ frac {0} {128} + \ frac {1} {256}= (0.00100101) _2 $$ Как видите, мы просто заменим $ 2 $ с его представлением Base 2, а затем примыкают к основу 2 представления 5 $.Я включил этот расчет, чтобы показать , почему это работает.

Примечание. Кроме того, $ (0.25) _ {16} \ neq 1/4 $ .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с cs.stackexchange
scroll top