Практическая Логика
Оракул
(78618)
14 лет назад
Для перевода чисел из десятичной системы счисления в двоичную используют так называемый "алгоритм замещения", состоящий из следующей последовательности действий:
1. Делим десятичное число А на 2. Частное Q запоминаем для следующего шага, а остаток a записываем как младший бит двоичного числа.
2. Если частное q не равно 0, принимаем его за новое делимое и повторяем процедуру, описанную в шаге 1. Каждый новый остаток (0 или 1) записывается в разряды двоичного числа в направлении от младшего бита к старшему.
3. Алгоритм продолжается до тех пор, пока в результате выполнения шагов 1 и 2 не получится частное Q = 0 и остаток a = 1.
Например, требуется перевести десятичное число 247 в двоичное. В соответствии с приведенным алгоритмом получим:
24710 : 2 = 12310
24710 - 24610 = 1, остаток 1 записываем в МБ двоичного числа.
12310 : 2 = 6110
12310 - 12210 = 1, остаток 1 записываем в следующий после МБ разряд двоичного числа.
6110 : 2 = 3010
6110 - 6010 = 1, остаток 1 записываем в старший разряд двоичного числа.
3010 : 2 = 1510
3010 - 3010 = 0, остаток 0 записываем в старший разряд двоичного числа.
1510 : 2 = 710
1510 - 1410 = 1, остаток 1 записываем в старший разряд двоичного числа.
710 : 2 = 310
710 - 610 = 1, остаток 1 записываем в старший разряд двоичного числа.
310 : 2 = 110
310 - 210 = 1, остаток 1 записываем в старший разряд двоичного числа.
110 : 2 = 010, остаток 1 записываем в старший разряд двоичного числа.
Таким образом, искомое двоичное число равно 111101112.
________________________________________
Ход решения:
Делим число на 2 и выписываем остатки
21 = 10·2 + 1
10 = 5·2 + 0
5 = 2·2 + 1
2 = 1·2 + 0
Последний множитель перед 2 равный 1 записываем первым.
Затем записываем найденные остатки в обратном порядке.
Получаем: 10101
________________________________________
Ход решения:
Делим число на 2 и выписываем остатки
25 = 12·2 + 1
12 = 6·2 + 0
6 = 3·2 + 0
3 = 1·2 + 1
Последний множитель перед 2 равный 1 записываем первым.
Затем записываем найденные остатки в обратном порядке.
Получаем: 11001