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

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

Принцип построения числа из цифр

Прежде всего нужно понять, что такое система счисления и её основание. Система счисления - способ представления чисел в виде комбинации тех или иных цифр. Основание системы - количество цифр, в ней использующихся. Например, в десятичной системе с основанием 10 всего 10 цифр - от 0 до 9. В шестнадцатеричной, соответственно, 16 цифр, для обозначения которых используются арабские цифры 0 - 9 и латинские буквы A - F вместо цифр 10 - 15. Например, 2F7BE 16 - число шестнадцатеричной системы. При такой записи нижним индексом обозначается основание системы счисления. Ключевым различием между системами с разными основаниями является "ценность" числа 10. В шестнадцатеричной системе 10 16 будет равно 16 10 , а в двоичной 10 2 равно всего лишь двум. 100 16 будет вычисляться как

100 16 = 10 16 * 10 16 = 16 10 * 16 10 = 256 10 .

Следует также различать понятия "цифра" и "число". Цифра обозначается одним символом, а число - может и несколькими. Например, число 9 10 в двоичной системе будет выглядеть как 1001 2 , а цифра 9 в двоичной системе не существует как таковая.

Алгоритм перевода

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

  1. Определить основание системы счисления. Оно обозначается нижним индексом после числа, к примеру, в числе 2F7BE 16 основание равно 16.
  2. Каждую цифру числа умножить на основание в степени, равной номеру цифры справа налево, начиная с нуля. В числе 2F7BE 16 Е (равное 14) умножается на 16 в нулевой степени, В (цифра 11) - на 16 в первой степени и так далее: 2F7BE 16 = 2*16 4 +15*16 3 + 7*16 2 + 11*16 1 + 14*16 0 .
  3. Сложить полученные результаты.

2*16 4 +15*16 3 + 7*16 2 + 11*16 1 + 14*16 0 = 194494 10 .

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

  • 5736 8 = 5*8 3 + 7*8 2 + 3*8 1 + 6*8 0 = 3038 10
  • 1001011 2 = 1*2 6 + 0*2 5 + 0*2 4 + 1*2 3 + 0*2 2 + 1*2 1 + 1*2 0 = 75 10
  • 2F7BE 16 = 2*16 4 +15*16 3 + 7*16 2 + 11*16 1 + 14*16 0 = 194494 10

Разумеется, считать каждый раз вручную неудобно, нерационально, да и неохота. Существует множество калькуляторов, умеющих переводить числа из системы в систему. К примеру, стандартный калькулятор Windows в режиме "Программист" (клавиши Alt+3 или меню "Вид") может работать с системами оснований 2, 8, 10 и 16.

Запишите число в двоичной системе счисления, а степени двойки справа налево. Например, мы хотим преобразовать двоичное число 10011011 2 в десятичное. Сначала запишем его. Затем запишем степени двойки справа налево. Начнем с 2 0 , что равно "1". Увеличиваем степень на единицу для каждого следующего числа. Останавливаемся, когда число элементов в списке равно числу цифр в двоичном числе. Наше число для примера, 10011011, включает в себя восемь цифр, поэтому список из восьми элементов будет выглядеть так: 128, 64, 32, 16, 8, 4, 2, 1

Запишите цифры двоичного числа под соответствующими степенями двойки. Теперь просто запишите 10011011 под числами 128, 64, 32, 16, 8, 4, 2, и 1, с тем чтобы каждая двоичная цифра соответствовала своей степени двойки. Самая правая "1" двоичного числа должна соответствовать самой правой "1" из степеней двоек, и так далее. Если вам удобнее, вы можете записать двоичное число над степенями двойки. Самое важное – чтобы они соответствовали друг другу.

Соедините цифры в двоичном числе с соответствующими степенями двойки. Нарисуйте линии (справа налево), которые соединяют каждую последующую цифру двоичного числа со степенью двойки, находящейся над ней. Начните построение линий с соединения первой цифры двоичного числа с первой степенью двойки над ней. Затем нарисуйте линию от второй цифры двоичного числа ко второй степени двойки. Продолжайте соединять каждую цифру с соответствующей степенью двойки. Это поможет вам визуально увидеть связь между двумя различными наборами чисел.

Запишите конечное значение каждой степени двойки. Пройдитесь по каждой цифре двоичного числа. Если эта цифра 1, запишите соответствующую степень двойки под цифрой. Если эта цифра 0, запишите под цифрой 0.

  • Так как "1" соответствует "1", она остается "1". Так как "2" соответствует "1", она остается "2". Так как "4" соответствует "0", она становится "0". Так как "8" соответствует "1", она становится "8", и так как "16" соответствует "1" она становится "16". "32" соответствует "0" и становится "0", "64" соответствует "0" и поэтому становится "0", в то время как "128" соответствует "1" и становится 128.
  • Сложите получившиеся значения. Теперь сложите получившиеся под линией цифры. Вот что вы должны сделать: 128 + 0 + 0 + 16 + 8 + 0 + 2 + 1 = 155. Это десятичный эквивалент двоичного числа 10011011.

    Запишите ответ вместе с нижним индексом, равным системе счисления. Теперь все, что вам осталось сделать – это записать 155 10 , чтобы показать, что вы работаете с десятичным ответом, который оперирует степенями десятки. Чем больше вы будете преобразовывать двоичные числа в десятичные, тем проще вам будет запомнить степени двойки, и тем быстрее вы сможете выполнять данную задачу.

  • Используйте данный метод, чтобы преобразовать двоичное число с десятичной точкой в десятичную форму. Вы можете использовать данный метод даже если вы хотите преобразовать двоичное число, такое как 1.1 2 в десятичное. Все, что вам необходимо знать – это то, что число в левой части десятичного числа – это обычное число, а число в правой части десятичного числа – это число "делений надвое", или 1 x (1/2).

    • "1" слева от десятичного числа соответствует 2 0 , или 1. 1 справа от десятичного числа соответствует 2 -1 , или.5. Сложите 1 и.5 и вы получите 1.5, которое является эквивалентом 1.1 2 в десятичном виде.
  • Замечание 1

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

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

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

      При переводе двоичного числа в десятичное требуется представить двоичное число в виде многочлена , каждый элемент которого представлен в виде произведения цифры числа и соответствующей степени числа основания, в данном случае $2$, а затем нужно вычислить многочлен по правилам десятичной арифметики:

      $X_2=A_n \cdot 2^{n-1} + A_{n-1} \cdot 2^{n-2} + A_{n-2} \cdot 2^{n-3} + ... + A_2 \cdot 2^1 + A_1 \cdot 2^0$

    Рисунок 1. Таблица 1

    Пример 1

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

    Решение. Используя приведенную таблицу $1$ степеней основания $2$, представим число в виде многочлена:

    $11110101_2 = 1 \cdot 27 + 1 \cdot 26 + 1 \cdot 25 + 1 \cdot 24 + 0 \cdot 23 + 1 \cdot 22 + 0 \cdot 21 + 1 \cdot 20 = 128 + 64 + 32 + 16 + 0 + 4 + 0 + 1 = 245_{10}$

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

      $X_8 = A_n \cdot 8^{n-1} + A_{n-1} \cdot 8^{n-2} + A_{n-2} \cdot 8^{n-3} + ... + A_2 \cdot 8^1 + A_1 \cdot 8^0$

    Рисунок 2. Таблица 2

    Пример 2

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

    Решение. Используя приведенную таблицу $2$ степеней основания $8$, представим число в виде многочлена:

    $75013_8 = 7\cdot 8^4 + 5 \cdot 8^3 + 0 \cdot 8^2 + 1 \cdot 8^1 + 3 \cdot 8^0 = 31243_{10}$

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

      $X_{16} = A_n \cdot 16^{n-1} + A_{n-1} \cdot 16^{n-2} + A_{n-2} \cdot 16^{n-3} + ... + A_2 \cdot 16^1 + A_1 \cdot 16^0$

    Рисунок 3. Таблица 3

    Пример 3

    Число $FFA2_{16}$ перевести в десятичную систему счисления.

    Решение. Используя приведенную таблицу $3$ степеней основания $8$, представим число в виде многочлена:

    $FFA2_{16} = 15 \cdot 16^3 + 15 \cdot 16^2 + 10 \cdot 16^1 + 2 \cdot 16^0 =61440 + 3840 + 160 + 2 = 65442_{10}$

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

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

    Пример 4

    Число $22_{10}$ перевести в двоичную систему счисления.

    Решение:

    Рисунок 4.

    $22_{10} = 10110_2$

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

    Пример 5

    Число $571_{10}$ перевести в восьмеричную систему счисления.

    Решение:

    Рисунок 5.

    $571_{10} = 1073_8$

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

    Пример 6

    Число $7467_{10}$ перевести в шестнадцатеричную систему счисления.

    Решение:

    Рисунок 6.

    $7467_{10} = 1D2B_{16}$

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

      Например: $0,3125_{(10)}$ в восьмеричной системе счисления будет выглядеть как $0,24_{(8)}$.

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

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

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

    Рисунок 7. Таблица 4

    Пример 7

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

    Решение . Используя таблицу 4, переведем число из двоичной системы счисления в восьмеричную:

    $001 001 011_2 = 113_8$

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

    | 6 классы | Планирование уроков на учебный год | Перевод двоичных чисел в десятичную систему счисления

    Урок 5
    Перевод двоичных чисел в десятичную систему счисления
    Работа с приложением Калькулятор





    Перевод целых десятичных чисел в двоичный код

    Способ 1

    Попробуем представить число 1409 в виде суммы членов второго ряда.

    Воспользуемся методом разностей. Возьмем ближайший к исходному числу, но не превосходящий его член второго ряда и составим разность:

    1409 - 1024 = 385.

    Возьмем ближайший к полученной разности, но не превосходящий ее член второго ряда и составим разность:

    385 - 256 = 129.

    Аналогично составим разность: 129 - 128 = 1.

    В итоге получим:

    1409 = 1024 + 256 + 128 + 1 = 1 1024 + 0 512 + 1 256 + + 1 128 + 0 64 + 0 32 + 0 16 + 0 8 + 0 4 + 0 2 + 1 1.

    Мы видим, что каждый член второго ряда может либо не входить в сумму, либо входить в нее только один раз.


    Числа 1 и 0, на которые умножаются члены второго ряда, также составляют исходное число 1409, но в его другой, двоичной записи: 10110000001.

    Результат записывают так:

    1409 10 = 10110000001 2 .

    Исходное число мы записали с помощью 0 и 1, другими словами, получили двоичный код этого числа, или представили число в двоичной системе счисления.

    Способ 2

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

    Пример:


    В первую ячейку верхней строки записано исходное число, а в каждую следующую - результат целочисленного деления предыдущего числа на 2.

    В ячейках нижней строки записаны остатки от деления стоящих в верхней строке чисел на 2.

    Последняя ячейка нижней строки остается пустой. Двоичный код исходного десятичного числа получается при последовательной записи всех остатков, начиная с последнего: 1409 10 = 10110000001 2 .

    Первые 20 членов натурального ряда в двоичной системе счисления записываются так: 1, 10, 11, 100, 101, 110, 111, 1000, 1001, 1010, 1011,1100, 1101,1110,1111, 10000. 10001. 10010. 10011. 10100. 

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

    Способ 1

    Пусть имеется число 111101 2 . Его можно представить так:

    Способ 2

    Возьмем то же число 111101 2 . Переведем единицу 6-го разряда (первая слева в записи числа) в единицы 5-го разряда, для чего 1 умножим на 2, ибо единица 6-го разряда в двоичной системе содержит 2 единицы 5-го разряда.

    К полученным 2 единицам 5-го разряда прибавим имеющуюся единицу 5-го разряда. Переведем эти 3 единицы 5-го разряда в 4-й разряд и прибавим имеющуюся единицу 4-го разряда: 3 2 + 1 = 7.

    Переведем 7 единиц 4-го разряда в 3-й разряд и прибавим имеющуюся единицу 3-го разряда: 7 2 + 1 = 15.

    Переведем 15 единиц 3-го разряда во 2-й разряд: 15 2 = 30. В исходном числе во 2-м разряде единиц нет.

    Переведем 30 единиц 2-го разряда в 1-й разряд и прибавим имеющуюся там единицу: 30 2 + 1 = 61. Мы получили, что исходное число содержит 61 единицу 1-го разряда.

    Письменные вычисления удобно располагать так:

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

    Проведем небольшой эксперимент .

    1. Запустите приложение Калькулятор и выполните команду [Вид-Инженерный] . Обратите внимание на группу переключателей, определяющих систему счисления :

    2. Убедитесь, что Калькулятор настроен на работу в десятичной системе счисления. С помощью клавиатуры или мыши введите в поле ввода произвольное двузначное число. Активизируйте переключатель Bin и проследите за изменениями в окне ввода. Вернитесь в десятичную систему счисления. Очистите поле ввода.

    3. Повторите пункт 2 несколько раз для других десятичных чисел.

    4. Настройте Калькулятор на работу в двоичной системе счисления. Обратите внимание на то, какие кнопки Калькулятора и цифровые клавиши клавиатуры вам доступны. Поочередно введите двоичные коды 5-го, 10-го и 15-го членов натурального ряда и с помощью переключателя Dec переведите их в десятичную систему счисления.