Техника

Как перевести в двоичную систему счисления десятиричное число 560,1

Вообще то могут быть разные форматы записи дробных чисел.
Есть например такой, довольно распространенный формат как IEEE 754.
Погуглите, или посмотрите в википедии.
IEEE floating point
___
Если для записи числа выделено 32 бита, то число записывается следующим образом:
(описание слева направо, от старших битов к младшим)
старший (крайний левый) бит (31) - это знак числа (0= положительное, 1= отрицательное)
следующие 8 бит (30...23) служат для записи экспоненты увеличенной на 127.
следующие 23 бита (22...0) служат для записи нормализованной двоичной мантиссы числа без первой единицы.
___
Для перевода чисел можно исползовать калькуляторы, гуглите
decimal to binary on-line converter
например вот этот, там есть и оффлайн програмка
IEEE 754 Converter
___
Если желаете перевести вручную, то порядок действий следующий:
_________
так как число плюсовое, то бит 31= 0
_________
делим число на 2 пока не получим число меньше двойки, запоминая сколько раз пришлось делить.
560.1/2/2/2/2/2/2/2/2/2= 1.0939453125,
1.0939453125 = нормализированная двоичная мантисса
делить пришлось девять раз следовательно в экспоненту надо записать
9+127= 136, в двоичном виде 10001000 (биты 30...23)
_________
Так как нормализованная двоичная мантисса всегда "единица с хвостиком", то единица не записывается, а подразумевается, а записывается 0.0939453125
для записи мантиссы надо отнимать последовательно дроби двойки, если отнять нельзя, то пишем в разряд ноль.
так как 2^(-1)= 1/2= 0.5 > 0.0939453125, то в первый, старший бит (22) пишем ноль
2^(-2)= 0.25 > 0.0939453125 == > второй вниз по старшинству бит (21) тоже ноль
2^(-3) > 0.0939453125 == > бит 20, третий вниз по старшинству бит (20) тоже ноль
2^(-4) = 0.0625 < 0.0939453125 == > в бит 19 пишем 1, и отнимаем 0.0939453125- 0.0625= 0.0314453125
2^(-5)= 0.03125 < 0.0314453125 == > бит 18 пишем единицу, остается 0.0314453125- 0.03125= 0.0001953125
и так далее, в результате получаем
01000100000011000000011001100110
Это число немного меньше числа 560.1, потому, что получается периодическая двоичная дробь
бесконечно продолжающаяся ...01100110011001100... и так далее.
@@
@@@@@
23 527
Лучший ответ