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

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

    Перевод чисел из одной позиционной системы счисления в другую: перевод целых чисел.

    Чтобы перевести целое число из одной системы счисления с основанием d1 в другую с основанием d2 необходимо последовательно делить это число и получаемые частные на основание d2 новой системы до тех пор, пока не получится частное меньше основания d2. Последнее частное - старшая цифра числа в новой системе счисления с основанием d2, а следующие за ней цифры - это остатки от деления, записываемые в последовательности, обратной их получению. Арифметические действия выполнять в той системе счисления, в которой записано переводимое число.

    Пример 1. Перевести число 11(10) в двоичную систему счисления.

    Ответ: 11(10)=1011(2).

    Пример 2. Перевести число 122(10) в восьмеричную систему счисления.


    Ответ: 122(10)=172(8).

    Пример 3. Перевести число 500(10) в шестнадцатеричную систему счисления.


    Ответ: 500(10)=1F4(16).

    Перевод чисел из одной позиционной системы счисления в другую: перевод правильных дробей.

    Чтобы перевести правильную дробь из системы счисления с основанием d1 в систему с основанием d2, необходимо последовательно умножать исходную дробь и дробные части получающихся произведений на основание новой системы счисления d2. Правильная дробь числа в новой системе счисления с основанием d2 формируется в виде целых частей получающихся произведений, начиная с первого.
    Если при переводе получается дробь в виде бесконечного или расходящегося ряда, процесс можно закончить при достижении необходимой точности.

    При переводе смешанных чисел, необходимо в новую систему перевести отдельно целую и дробную части по правилам перевода целых чисел и правильных дробей, а затем оба результата объединить в одно смешанное число в новой системе счисления.

    Пример 1. Перевести число 0,625(10) в двоичную систему счисления.


    Ответ: 0,625(10)=0,101(2).

    Пример 2. Перевести число 0,6(10) в восьмеричную систему счисления.


    Ответ: 0,6(10)=0,463(8).

    Пример 2. Перевести число 0,7(10) в шестнадцатеричную систему счисления.


    Ответ: 0,7(10)=0,В333(16).

    Перевод двоичных, восьмеричных и шестнадцатеричных чисел в десятичную систему счисления.

    Для перевода числа P-ичной системы в десятичную необходимо использовать следующую формулу разложения:
    аnan-1…а1а0=аnPn+ аn-1Pn-1+…+ а1P+a0 .

    Пример 1. Перевести число 101,11(2) в десятичную систему счисления.

    Ответ: 101,11(2)= 5,75(10) .

    Пример 2. Перевести число 57,24(8) в десятичную систему счисления.

    Ответ: 57,24(8) = 47,3125(10) .

    Пример 3. Перевести число 7A,84(16) в десятичную систему счисления.

    Ответ: 7A,84(16)= 122,515625(10) .


    Перевод восьмеричных и шестнадцатеричных чисел в двоичную систему счисления и обратно.

    Для перевода числа из восьмеричной системы счисления в двоичную необходимо каждую цифру этого числа записать трехразрядным двоичным числом (триадой).

    Пример: записать число 16,24(8) в двоичной системе счисления.


    Ответ: 16,24(8)= 1110,0101(2) .

    Для обратного перевода двоичного числа в восьмеричную систему счисления, необходимо исходное число разбить на триады влево и вправо от запятой и представить каждую группу цифрой в восьмеричной системе счисления. Крайние неполные триады дополняют нулями.

    Пример: записать число 1110,0101(2) в восьмеричной системе счисления.


    Ответ: 1110,0101(2)= 16,24(8) .

    Для перевода числа из шестнадцатеричной системы счисления в двоичную необходимо каждую цифру этого числа записать четырехразрядным двоичным числом (тетрадой).

    Пример: записать число 7A,7E(16) в двоичной системе счисления.


    Ответ: 7A,7E(16)= 1111010,0111111(2) .

    Примечание: незначащие нули слева для целых чисел и справа для дробей не записываются.

    Для обратного перевода двоичного числа в шестнадцатеричную систему счисления, необходимо исходное число разбить на тетрады влево и вправо от запятой и представить каждую группу цифрой в шестнадцатеричной системе счисления. Крайние неполные триады дополняют нулями.

    Пример: записать число 1111010,0111111(2) в шестнадцатеричной системе счисления.

    Сдающим ЕГЭ и не только…

    Странно, что в школах на уроках информатики обычно показывают ученикам самый сложный и неудобный способ перевода чисел из одной системы в другую. Это способ заключается в последовательном делении исходного числа на основание и сборе остатков от деления в обратном порядке.

    Например, нужно перевести число 810 10 в двоичную систему:

    Результат записываем в обратном порядке снизу вверх. Получается 81010 = 11001010102

    Если нужно переводить в двоичную систему довольно большие числа, то лестница делений приобретает размер многоэтажного дома. И как тут собрать все единички с нулями и ни одной не пропустить?

    В программу ЕГЭ по информатике входят несколько задач, связанных с переводом чисел из одной системы в другую. Как правило, это преобразование между 8- и 16-ричными системами и двоичной. Это разделы А1, В11. Но есть и задачи с другими системами счисления, как например, в разделе B7.

    Для начала напомним две таблицы, которые хорошо бы знать наизусть тем, кто выбирает информатику своей дальнейшей профессией.

    Таблица степеней числа 2:

    2 1 2 2 2 3 2 4 2 5 2 6 2 7 2 8 2 9 2 10
    2 4 8 16 32 64 128 256 512 1024

    Она легко получается умножением предыдущего числа на 2. Так, что если помните не все эти числа, остальные нетрудно получить в уме из тех, которые помните.

    Таблица двоичных чисел от 0 до 15 c 16-ричным представлением:

    0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
    0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
    0 1 2 3 4 5 6 7 8 9 A B C D E F

    Недостающие значения тоже нетрудно вычислить, прибавляя по 1 к известным значениям.

    Перевод целых чисел

    Итак, начнем с перевода сразу в двоичную систему. Возьмём то же число 810 10 . Нам нужно разложить это число на слагаемые, равные степеням двойки.

    1. Ищем ближайшую к 810 степень двойки, не превосходящую его. Это 2 9 = 512.
    2. Вычитаем 512 из 810, получаем 298.
    3. Повторим шаги 1 и 2, пока не останется 1 или 0.
    4. У нас получилось так: 810 = 512 + 256 + 32 + 8 + 2 = 2 9 + 2 8 + 2 5 + 2 3 + 2 1 .
    Далее есть два способа, можно использовать любой из них. Как легко увидеть, что в любой системе счисления её основание всегда 10. Квадрат основания всегда будет 100, куб 1000. То есть степень основания системы счисления - это 1 (единица), и за ней столько нулей, какова степень.

    Способ 1 : Расставить 1 по тем разрядам, какие получились показатели у слагаемых. В нашем примере это 9, 8, 5, 3 и 1. В остальных местах будут стоять нули. Итак, мы получили двоичное представление числа 810 10 = 1100101010 2 . Единицы стоят на 9-м, 8-м, 5-м, 3-м и 1-м местах, считая справа налево с нуля.

    Способ 2 : Распишем слагаемые как степени двойки друг под другом, начиная с большего.

    810 =

    А теперь сложим эти ступеньки вместе, как складывают веер: 1100101010 .

    Вот и всё. Попутно также просто решается задача «сколько единиц в двоичной записи числа 810?».

    Ответ - столько, сколько слагаемых (степеней двойки) в таком его представлении. У 810 их 5.

    Теперь пример попроще.

    Переведём число 63 в 5-ричную систему счисления. Ближайшая к 63 степень числа 5 - это 25 (квадрат 5). Куб (125) будет уже много. То есть 63 лежит между квадратом 5 и кубом. Тогда подберем коэффициент для 5 2 . Это 2.

    Получаем 63 10 = 50 + 13 = 50 + 10 + 3 = 2 * 5 2 + 2 * 5 + 3 = 223 5 .

    Ну и, наконец, совсем лёгкие переводы между 8- и 16-ричными системами. Так как их основанием является степень двойки, то перевод делается автоматически, просто заменой цифр на их двоичное представление. Для 8-ричной системы каждая цифра заменяется тремя двоичными разрядами, а для 16-ричной четырьмя. При этом все ведущие нули обязательны, кроме самого старшего разряда.

    Переведем в двоичную систему число 547 8 .

    547 8 = 101 100 111
    5 4 7

    Ещё одно, например 7D6A 16 .

    7D6A 16 = (0)111 1101 0110 1010
    7 D 6 A

    Переведем в 16-ричную систему число 7368. Сначала цифры запишем тройками, а потом поделим их на четверки с конца: 736 8 = 111 011 110 = 1 1101 1110 = 1DE 16 . Переведем в 8-ричную систему число C25 16 . Сначала цифры запишем четвёрками, а потом поделим их на тройки с конца: C25 16 = 1100 0010 0101 = 110 000 100 101 = 6045 8 . Теперь рассмотрим перевод обратно в десятичную. Он труда не представляет, главное не ошибиться в расчётах. Раскладываем число на многочлен со степенями основания и коэффициентами при них. Потом всё умножаем и складываем. E68 16 = 14 * 16 2 + 6 * 16 + 8 = 3688 . 732 8 = 7 * 8 2 + 3*8 + 2 = 474 .

    Перевод отрицательных чисел

    Здесь нужно учесть, что число будет представлено в дополнительном коде. Для перевода числа в дополнительный код нужно знать конечный размер числа, то есть во что мы хотим его вписать - в байт, в два байта, в четыре. Старший разряд числа означает знак. Если там 0, то число положительное, если 1, то отрицательное. Слева число дополняется знаковым разрядом. Беззнаковые (unsigned) числа мы не рассматриваем, они всегда положительные, а старший разряд в них используется как информационный.

    Для перевода отрицательного числа в двоичный дополнительный код нужно перевести положительное число в двоичную систему, потом поменять нули на единицы и единицы на нули. Затем прибавить к результату 1.

    Итак, переведем число -79 в двоичную систему. Число займёт у нас один байт.

    Переводим 79 в двоичную систему, 79 = 1001111. Дополним слева нулями до размера байта, 8 разрядов, получаем 01001111. Меняем 1 на 0 и 0 на 1. Получаем 10110000. К результату прибавляем 1, получаем ответ 10110001 . Попутно отвечаем на вопрос ЕГЭ «сколько единиц в двоичном представлении числа -79?». Ответ - 4.

    Прибавление 1 к инверсии числа позволяет устранить разницу между представлениями +0 = 00000000 и -0 = 11111111. В дополнительном коде они будут записаны одинаково 00000000.

    Перевод дробных чисел

    Дробные числа переводятся способом, обратным делению целых чисел на основание, который мы рассмотрели в самом начале. То есть при помощи последовательного умножения на новое основание с собиранием целых частей. Полученные при умножении целые части собираются, но не участвуют в следующих операциях. Умножаются только дробные. Если исходное число больше 1, то целая и дробная части переводятся отдельно, потом склеиваются.

    Переведем число 0,6752 в двоичную систему.

    0 ,6752
    *2
    1 ,3504
    *2
    0 ,7008
    *2
    1 ,4016
    *2
    0 ,8032
    *2
    1 ,6064
    *2
    1 ,2128

    Процесс можно продолжать долго, пока не получим все нули в дробной части или будет достигнута требуемая точность. Остановимся пока на 6-м знаке.

    Получается 0,6752 = 0,101011 .

    Если число было 5,6752, то в двоичном виде оно будет 101,101011 .

    Результат уже получен!

    Системы счисления

    Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 6372 в десятичном системе счисления. Пронумеруем это число справа налево начиная с нуля:

    Тогда число 6372 можно представить в следующем виде:

    6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

    Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.

    Рассмотрим вещественное десятичное число 1287.923. Пронумеруем его начиная с нуля позиции числа от десятичной точки влево и вправо:

    Тогда число 1287.923 можно представить в виде:

    1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .

    В общем случае формулу можно представить в следующем виде:

    Ц n ·s n +Ц n-1 ·s n-1 +...+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +...+Д -k ·s -k

    где Ц n -целое число в позиции n , Д -k - дробное число в позиции (-k), s - система счисления.

    Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления - из множества цифр {0,1}, в шестнадцатеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.

    Таблица 1
    Система счисления
    10 2 8 16
    0 0 0 0
    1 1 1 1
    2 10 2 2
    3 11 3 3
    4 100 4 4
    5 101 5 5
    6 110 6 6
    7 111 7 7
    8 1000 10 8
    9 1001 11 9
    10 1010 12 A
    11 1011 13 B
    12 1100 14 C
    13 1101 15 D
    14 1110 16 E
    15 1111 17 F

    Перевод чисел из одной системы счисления в другую

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

    Перевод чисел из любой системы счисления в десятичную систему счисления

    С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.

    Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:

    1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125

    Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:

    Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:

    Здесь A -заменен на 10, B - на 11, C - на 12, F - на 15.

    Перевод чисел из десятичной системы счисления в другую систему счисления

    Для перевода чисел из десятичной системы счисления в другую систему счисления нужно переводить отдельно целую часть числа и дробную часть числа.

    Целую часть числа переводится из десятичной СС в другую систему счисления - последовательным делением целой части числа на основание системы счисления (для двоичной СС - на 2, для 8-ичной СС - на 8, для 16-ичной - на 16 и т.д.) до получения целого остатка, меньше, чем основание СС.

    Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:

    159 2
    158 79 2
    1 78 39 2
    1 38 19 2
    1 18 9 2
    1 8 4 2
    1 4 2 2
    0 2 1
    0

    Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:

    159 10 =10011111 2 .

    Пример 5 . Переведем число 615 из десятичной СС в восьмеричную СС.

    615 8
    608 76 8
    7 72 9 8
    4 8 1
    1

    При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:

    615 10 =1147 8 .

    Пример 6 . Переведем число 19673 из десятичной системы счисления в шестнадцатеричную СС.

    19673 16
    19664 1229 16
    9 1216 76 16
    13 64 4
    12

    Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 - D. Следовательно наше шестнадцатеричное число - это 4CD9.

    Для перевода правильных десятичных дробей (вещественное число с нулевой целой частью) в систему счисления с основанием s необходимо данное число последовательно умножить на s до тех пор, пока в дробной части не получится чистый нуль, или же не получим требуемое количество разрядов. Если при умножении получится число с целой частью, отличное от нуля, то эту целую часть не учитывать (они последовательно зачисливаются в результат).

    Рассмотрим вышеизложенное на примерах.

    Пример 7 . Переведем число 0.214 из десятичной системы счисления в двоичную СС.

    0.214
    x 2
    0 0.428
    x 2
    0 0.856
    x 2
    1 0.712
    x 2
    1 0.424
    x 2
    0 0.848
    x 2
    1 0.696
    x 2
    1 0.392

    Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .

    Следовательно можно записать:

    0.214 10 =0.0011011 2 .

    Пример 8 . Переведем число 0.125 из десятичной системы счисления в двоичную СС.

    0.125
    x 2
    0 0.25
    x 2
    0 0.5
    x 2
    1 0.0

    Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:

    0.125 10 =0.001 2 .

    Пример 9 . Переведем число 0.214 из десятичной системы счисления в шестнадцатеричную СС.

    0.214
    x 16
    3 0.424
    x 16
    6 0.784
    x 16
    12 0.544
    x 16
    8 0.704
    x 16
    11 0.264
    x 16
    4 0.224

    Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:

    0.214 10 =0.36C8B4 16 .

    Пример 10 . Переведем число 0.512 из десятичной системы счисления в восьмеричную СС.

    0.512
    x 8
    4 0.096
    x 8
    0 0.768
    x 8
    6 0.144
    x 8
    1 0.152
    x 8
    1 0.216
    x 8
    1 0.728

    Получили:

    0.512 10 =0.406111 8 .

    Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:

    159.125 10 =10011111.001 2 .

    Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.

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

    Перевод целой части

    Для того, чтобы перевести число из десятичной системы счисления, в любую другую, нужно выполнять целочисленное деление исходного числа на основание той системы счисления, в которую нужно перевести число. При этом важен остаток от деления и частное. Частное нужно делить на основание до тех пор, пока не останется 0. После этого все остатки нужно выписать в обратном порядке - это и будет число в новой системе счисления.

    Например, перевод - числа 25 из десятичной системы счисления в двоичную будет выглядеть следующим образом:

    Выписав остатки в обратном порядке, получим 25 10 =11001 2 .

    Если Вы задумаетесь, то можете легко заметить, что при переводе абсолютно любого числа в двоичную систему счисления самый последний остаток (то есть, самая первая цифра в результате) всегда будет равен самому последнему частному, которое оказалось меньше основания той системы счисления, в которую мы переводим число. Поэтому, деление часто останавливают раньше, чем частное станет равным нулю - в тот момент, когда частное станет просто меньше основания. Например:

    Перевод из десятичной системы счисления в любую другую систему счисления производится по абсолютно точно таким же правилам. Вот пример перевода 393 10 в шестнадцатеричную систему счисления:

    Выписав остатки в обратном порядке, получим 393 10 =189 16 .

    Нужно понимать, что остатки получаются в десятичной системе счисления. При делении на 16 могут появиться остатки не только от 0 до 9, но также и остатки от 10 до 15. Каждый остаток - это всегда ровно одна цифра в той системе счисления, в которую осуществляется перевод.

    Например, если при переводе в шестнадцатеричную систему счисления Вы получили такие остатки (выписаны в порядке, как они должны быть записаны в числе): 10, 3, 15, 7, то в шестнадцатеричной системе счисления этой последовательности остатков будет соответствовать число A3F7 16 (некоторые по ошибке записывают число как 103157 16 - понято же, что это совсем другое число, и что если так делать, то получится, что ни в каком шестнадцатеричном числе не появится цифры от A до F).

    Перевод дробной части

    При переводе дробной части, в отличие от перевода целой части - нужно не делить, а умножать на основание той системы счисления, в которую мы переводим. При этом каждый раз отбрасываются целые части, а дробные части - снова умножаются. Собрав целые части в том порядке, как они были получены - получается дробная часть числа в нужной системе счисления.

    Одна операция умножения даёт ровно один дополнительный знак в системе счисления, в которую осуществляется перевод.

    При этом существует два условия завершения процесса:

    1) в результате очередного умножения Вы получили ноль в дробной части. Понятно, что дальше этот ноль сколько ни умножай - он всё равно останется нулём. Это означает, что число перевелось из десятичной системы счисления в нужную точно.

    2) не все числа возможно перевести точно. В таком случае обычно переводят с некоторой точностью. При этом сначала определяют, сколько знаков после запятой будет нужно - именно такое количество раз и нужно будет выполнить операцию умножения.

    Вот пример перевода числа 0.39 10 в двоичную систему счисления. Точность - 8 разрядов (в данном случае точность перевода выбрана произвольно):

    Если выписать целые части в прямом порядке, то получим 0.39 10 =0.01100011 2 .

    Самый первый ноль (на рисунке перечёркнут синим) выписывать не нужно - так как он относится не к дробной части, а к целой. Некоторые по ошибке записывают этот ноль после запятой, когда выписывают результат.

    Вот так будет выглядеть перевод числа 0.39 10 в шестнадцатеричную систему счисления. Точность - 8 разрядов в данном случае точность снова выбрана произвольно:

    Если выписать целые части в прямом порядке, то получим 0.39 10 =0.63D700A3 16 .

    При этом Вы, наверное, заметили, что целые части при умножении получаются в десятичной системе счисления. Эти целые части, полученные при переводе дробной части числа следует интерпретировать точно так же, как и остатки при переводе целой части числа. То есть, если при переводе в шестнадцатеричную систему счисления целые части получились в таком порядке: 3, 13, 7, 10, то соответствующее число будет равно 0.3D7A 16 (а не 0.313710 16 , как некоторые иногда ошибочно записывают).

    Перевод числа с целой и дробной частью

    Чтобы выполнить перевод числа с целой и дробной частью, нужно отдельно перевести целую часть, а отдельно - дробную, и поэтом эти две части записать вместе.

    Например, 25.39 10 =11001.01100011 2 (переводы целой и дробной части - смотрите выше).

    Перевод небольших целых чисел из десятичной системы счисления в двоичную в уме

    Поскольку при работе с различными системами счисления, особенно при разработке программ, очень часто возникает необходимость перевода небольших целых чисел, то, вообще говоря, имеет смысл запомнить для первых 16 чисел (от 0 до 15).

    Но если разобраться, как легко в уме переводить небольшие целые числа от 0 до 15 из десятичной системы счисления в двоичную, то значительную часть таблицы Вы сможете просто вычислять в уме каждый раз, когда это будет нужно. Проделывайте эту операцию много раз, и в какой-то момент Вы сами не сможете понять - Вы уже запомнили таблицу или всё ещё вычисляете.

    Итак, чтобы перевести небольшое положительное целое число от 0 до 15 из десятичной системы счисления в двоичную, первое, что нужно понять - это что каждой позиции в двоичном числе соответствует степень двойки. При этом степени двойки для позиций от 0 до 3 запомнить очень просто - это числа 1, 2, 4 и 8:

    А число 10 - это 2 плюс 8:

    Ну а число 0 - грех не запомнить, так как, чтобы его получить, ничего не нужно складывать.

    Перевод чисел из одной системы счисления в другую составляет важную часть машинной арифметики. Рассмотрим основные правила перевода.

    1. Для перевода двоичного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 2, и вычислить по правилам десятичной арифметики:

    При переводе удобно пользоваться таблицей степеней двойки:

    Таблица 4. Степени числа 2

    n (степень)

    2. Для перевода восьмеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 8, и вычислить по правилам десятичной арифметики:

    При переводе удобно пользоваться таблицей степеней восьмерки:

    Таблица 5. Степени числа 8

    n (степень)

    Пример. Число перевести в десятичную систему счисления.

    3. Для перевода шестнадцатеричного числа в десятичное необходимо его записать в виде многочлена, состоящего из произведений цифр числа и соответствующей степени числа 16, и вычислить по правилам десятичной арифметики:

    При переводе удобно пользоваться таблицей степеней числа 16:

    Таблица 6. Степени числа 16

    n (степень)

    Пример. Число перевести в десятичную систему счисления.

    4. Для перевода десятичного числа в двоичную систему его необходимо последовательно делить на 2 до тех пор, пока не останется остаток, меньший или равный 1. Число в двоичной системе записывается как последовательность последнего результата деления и остатков от деления в обратном порядке.

    Пример. Число перевести в двоичную систему счисления.

    5. Для перевода десятичного числа в восьмеричную систему его необходимо последовательно делить на 8 до тех пор, пока не останется остаток, меньший или равный 7. Число в восьмеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.

    6. Для перевода десятичного числа в шестнадцатеричную систему его необходимо последовательно делить на 16 до тех пор, пока не останется остаток, меньший или равный 15. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.


    Пример. Число перевести в шестнадцатеричную систему счисления.

    7. Чтобы перевести число из двоичной системы в восьмеричную, его нужно разбить на триады (тройки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую триаду нулями, и каждую триаду заменить соответствующей восьмеричной цифрой (табл. 3).

    Пример. Число перевести в восьмеричную систему счисления.

    8. Чтобы перевести число из двоичной системы в шестнадцатеричную, его нужно разбить на тетрады (четверки цифр), начиная с младшего разряда, в случае необходимости дополнив старшую тетраду нулями, и каждую тетраду заменить соответствующей восьмеричной цифрой (табл. 3).