Алгоритмы перевода чисел из десятичной системы в двоичную и наоборот

Алгоритмы перевода чисел из десятичной системы в двоичную
и наоборот

В своей работе я столкнулась с проблемой, что слабые ученики, испытывающие трудности в делении на 2, допускают массу ошибок в стандартном способе перевода натуральных чисел из десятичной системы в двоичную. Для таких учеников придуман вариант перевода чисел гораздо проще.
Например, необходимо перевести число 37 из десятичной системы в двоичную. Действуем так: строим таблицу с тремя строками и заполняем верхнюю строку степенями числа 2, начиная с последнего столбца. При этом в первом столбце останавливаемся на максимальной степени числа 2, которая не превышает данного числа 37.
32
16
8
4
2
1















Далее во второй строке раскладываем число 37 в сумму указанных слагаемых:
32
16
8
4
2
1

32
-
-
4
-
1








Остаётся выполнить последний шаг: в третьей строке таблицы в ячейках под заполненными ячейками второй строки записываем 1, под незаполненными – 0.
32
16
8
4
2
1

32
-
-
4
-
1

1
0
0
1
0
1

Вывод: в последней строке записано представление числа в двоичной системе
3710 = 1001012
Обратный перевод осуществляем в немного измененной таблице. Например, переведём число 1101010 из двоичной системы в десятичную. Для этого в таблице в верхней строке запишем цифры двоичного представления числа, во второй строке – степени числа 2 (начиная с последнего столбца), в третьей строке – выпишем только те степени, которые записаны под 1 верхней строки:
1
1
0
1
0
1
0

64
32
16
8
4
2
1

64
32
-
8
-
2
-

Остаётся сложить числа последней строки 64 + 32 + 8 + 2 = 106.
11010102 = 10610
15