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

Замечание 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.

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

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

Можно сформулировать алгоритм перевода целых чисел из системы с основанием p в систему с основанием q :

1. Основание новой системы счислениявыразитьцифрамиисходной системы счисления ивсепоследующие действия производить в исходной системе счисления.

2. Последовательно выполнять деление данного числаиполучаемых целых частных на основание новой системы счисления до тех пор, пока не получим частное, меньшее делителя.

3. Полученныеостатки,являющиеся цифрами числа в новой системе счисления, привести в соответствие с алфавитом новой системы счисления.

4. Составить число в новой системе счисления, записывая его, начиная с последнего остатка.

Пример 2.12. Перевестидесятичное число 173 10 в восьмеричную систему счисления:

Получаем:173 10 =255 8

Пример 2.13. Перевести десятичное число 173 10 в шестнадцатеричную систему счисления:

Получаем: 173 10 =AD 16 .

Пример 2.14. Перевести десятичное число 11 10 в двоичную систему счисления. Рассмотреннуювыше последовательность действий (алгоритм перевода) удобнее изобразить так:

Получаем: 11 10 =1011 2 .

Пример 2.15. Иногда более удобно записать алгоритм перевода в форме таблицы. Переведем десятичное число 363 10 в двоичное число.

Делитель

Получаем: 363 10 =101101011 2

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

Можно сформулировать алгоритм перевода правильнойдроби с основанием p в дробь с основанием q:

1. Основание новой системы счислениявыразитьцифрамиисходной системы счисленияивсепоследующие действия производить в исходной системе счисления.

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

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

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

Пример 2.17. Перевести число 0,65625 10 в восьмеричную систему счисления.

Получаем: 0,65625 10 =0,52 8

Пример 2.17. Перевести число 0,65625 10 вшестнадцатеричнуюсистему счисления.

x 16

Получаем: 0,65625 10 =0,А8 1

Пример 2.18. Перевестидесятичнуюдробь 0,5625 10 в двоичную систему счисления.

x 2

x 2

x 2

x 2

Получаем: 0,5625 10 =0,1001 2

Пример 2.19. Перевести в двоичную систему счисления десятичную дробь 0.7 10 .

Очевидно, чтоэтот процесс может продолжаться бесконечно,давая все новые и новые знакивизображениидвоичногоэквивалентачисла 0,7 10 . Так,за четыре шага мы получаем число 0,1011 2 , а за семь шагов число 0,1011001 2 ,которое является более точным представлениемчисла 0,7 10 в двоичной системе счисления,и т.д.Такой бесконечный процесс обрывают на некотором шаге, когда считают, что получена требуемая точность представления числа.

2.3.3. Перевод произвольных чисел

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

Пример 2.20 . Перевести число 17,25 10 в двоичную систему счисления.

Получаем: 17,25 10 =1001,01 2

Пример 2.21. Перевести число 124,25 10 в восьмеричную систему.

Получаем: 124,25 10 =174,2 8

2.3.4. Перевод чисел из системы счисления с основанием 2 в систему счисления с основанием 2 n и обратно

Перевод целых чисел. Если основание q-ичной системы счисления является степеньючисла 2, топереводчисел из q-ичной системы счисления в 2-ичную и обратно можно проводить по более простым правилам. Для того, чтобы целое двоичное число записать в системе счисления с основанием q=2 n , нужно:

1. Двоичное число разбить справа налево на группы по nцифр в каждой.

2. Если в последней левой группе окажется меньше n разрядов, то ее надо дополнить слева нулями до нужного числа разрядов.

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

Разбиваем число справа налево на триады и под каждой из них записываем соответствующую восьмеричную цифру:

Получаем восьмеричное представление исходного числа: 541062 8 .

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

Разбиваем числосправа налево на тетрады и под каждой из них записываем соответствующую шестнадцатеричную цифру:

Получаем шестнадцатеричноепредставлениеисходногочисла: 200F87 16 .

Перевод дробных чисел. Длятого,чтобыдробное двоичное число записать в системе счисления с основанием q=2 n , нужно:

1. Двоичное число разбить слева направо на группы по nцифр в каждой.

2. Еслив последней правой группе окажется меньше n разрядов,то ее надо дополнить справа нулями до нужного числа разрядов.

3. Рассмотреть каждую группу как n-разрядное двоичное число изаписать ее соответствующей цифрой в системе счисления с основанием q=2 n .

Пример 2.24. Число0,10110001 2 переведем в восьмеричную систему счисления.

Разбиваем число слева направо на триады и под каждой из них записываем соответствующую восьмеричную цифру:

Получаем восьмеричное представление исходного числа: 0,542 8 .

Пример 2.25. Число0,100000000011 2 переведем в шестнадцатеричную систему счисления. Разбиваем число слева направо на тетрады и под каждой из них записываем соответствующую шестнадцатеричную цифру:

Получаем шестнадцатеричноепредставлениеисходногочисла: 0,803 16

Перевод произвольных чисел. Для того, чтобы произвольное двоичное число записать в системе счисления с основанием q=2 n , нужно:

1. Целую часть данногодвоичногочисларазбитьсправа налево, а дробную - слева направо на группы по n цифр в каждой.

2. Если в последних левой и/или правой группах окажется меньше n разрядов, то их надо дополнить слева и/или справа нулямидо нужного числа разрядов;

3.Рассмотретькаждую группу как n-разрядное двоичное число и записать ее соответствующей цифрой в системе счисления с основанием q=2 n

Пример 2.26. Число 111100101,0111 2 переведем в восьмеричную систему счисления.

Разбиваем целую и дробную части числа на триады и под каждой из них записываем соответствующую восьмеричную цифру:

Получаем восьмеричное представление исходного числа: 745,34 8 .

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

Разбиваем целую и дробную части числа на тетрадыи под каждой из них записываем соответствующую шестнадцатеричную цифру:

Получаем шестнадцатеричное представление исходного числа: 748,D2 16 .

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

Пример 2.28 .Переведем шестнадцатеричное число 4АС35 16 вдвоичную систему счисления.

В соответствии с алгоритмом:

Получаем: 1001010110000110101 2 .

Задания для самостоятельного выполнения (Ответы )

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

Двоичная

Восьмеричная

Десятичная

Шестнадцатеричная

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

Двоичная

Восьмеричная

Десятичная

Шестнадцатеричная

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

Двоичная

Восьмеричная

Десятичная

Шестнадцатеричная

59,B

Разберем одну из важнейших тем по информатике - . В школьной программе она раскрывается довольно "скромно", скорее всего, из-за недостатка отведенных на нее часов. Знания по этой теме, особенно на перевод систем счисления , являются обязательным условием для успешной сдачи ЕГЭ и поступления в ВУЗы на соответствующие факультеты. Ниже подробным образом рассмотрены такие понятия, как позиционные и непозиционные системы счисления , даны примеры этих систем счисления, представлены правила перевода целых десятичных чисел, правильных десятичных дробей и смешанных десятичных чисел в любую другую систему счисления, перевода чисел из любой системы счисления в десятичную, перевода из восьмеричной и шестнадцатиричной систем счисления в двоичную систему счисления . На экзаменах в большом количестве встречаются задачи по данной теме. Умение их решать – одно из требований к абитуриентам. Скоро: По каждой теме раздела, помимо подробного теоретического материала, будут представлены практически все возможные варианты задач для самостоятельного изучения. Кроме того, у вас появится возможность совершенно бесплатно скачать с файлообменника уже готовые подробные решения к данным задачам, иллюстрирующие различные способы получения верного ответа.

епозиционные системы счисления.

Непозиционные системы счисления - системы счисления, в которых количественное значение цифры не зависит от ее местоположения в числе.

К непозиционным системам счисления относится, например, римская, где вместо цифр - латинские буквы.

I 1 (один)
V 5 (пять)
X 10 (десять)
L 50 (пятьдесят)
C 100 (сто)
D 500 (пятьсот)
M 1000 (тысяча)

Здесь буква V обозначает 5 независимо от ее местоположения. Однако стоит упомянуть о том, что хотя римская система счисления и является классическим примером непозиционной системы счисления, не является полностью непозиционной, т.к. меньшая цифра, стоящая перед большей, вычитается из нее:

IL 49 (50-1=49)
VI 6 (5+1=6)
XXI 21 (10+10+1=21)
MI 1001 (1000+1=1001)

озиционные системы счисления.

Позиционные системы счисления - системы счисления, в которых количественное значение цифры зависит от ее местоположения в числе.

Например, если говорить о десятичной системе счисления, то в числе 700 цифра 7 означает "семь сотен", но эта же цифра в числе 71 означает "семь десятков", а в числе 7020 - "семь тысяч".

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

    Например:
  • Двоичная - позиционная система счисления с основанием 2.
  • Четверичная - позиционная система счисления с основанием 4.
  • Пятиричная - позиционная система счисления с основанием 5.
  • Восьмеричная - позиционная система счисления с основанием 8.
  • Шестнадцатиричная - позиционная система счисления с основанием 16.

Чтобы успешно решать задачи по теме "Системы счисления", ученик должен знать наизусть соответствие двоичных, десятичных, восьмеричных и шестнадцатиричных чисел до 16 10:

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
16 10000 20 10

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

К числу прибавляется единица и получается новое число. Если разряд единиц становится равен основанию системы счисления, мы увеличиваем число десятков на 1 и т.д.

Этот "переход единицы" как раз и пугает большинство учеников. На самом же деле все довольно просто. Переход происходит, если разряд единиц становится равен основанию системы счисления , мы увеличиваем число десятков на 1. Многие, помня старую добрую десятичную систему моментально путаются в разряда и в этом переходе, ведь десятичный и, например, двоичный десятки - разные вещи.

Отсюда у находчивых учеников появляются "свои методики" (на удивление... работающие) при заполнении, например, таблиц истинности, первые столбцы (значения переменных) которых, фактически, заполняются двоичными числами в порядке возрастания.

Для примера разберем получение чисел в восьмеричной системе : К первому числу (0) прибавляем 1, получаем 1. Затем к 1 прибавляем 1, получаем 2 и т.д. до 7. Если мы прибавим к 7 единицу, получим число равное основанию системы счисления, т.е. 8. Тогда нужно увеличить на единицу разряд десятков (получаем восьмеричный десяток - 10). Далее, очевидно, идут числа 11, 12, 13, 14, 15, 16, 17, 20, ..., 27, 30, ..., 77, 100, 101...

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

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

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

Пример ("деление уголком"): Переведем число 173 10 в восьмеричную систему счисления.


Таким образом, 173 10 =255 8

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

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

Пример: Переведем число 0,65625 10 в восьмеричную систему счисления.

Возникли какие-то трудности и недопонимания с преобразованием чисел из двоичной в шестнадцатеричную систему счисления? Записывайтесь ко мне на индивидуальные уроки по информатике и ИКТ. На своих частных уроках мы с учениками разбираем не только теоретическую часть, но также решаем колоссальное количество различных тематических упражнений.

Нужно знать, что такое двоичная или бинарная система счисления

Прежде чем размышлять о том, как перевести число из 2 в 16, необходимо хорошо понимать, что собою представляют числа в двоичной системе счисления. Напомню, что алфавит бинарной системы счисления состоит из двух допустимых элементов – 0 и 1 . Это означает, что абсолютно любое число, записанное в двоичном виде, будет состоять из набора нулей и единиц. Вот примеры чисел, записанных в бинарном представлении: 10010, 100, 111101010110, 1000001.

Нужно знать, что такое шестнадцатеричная система счисления

С бинарной системой мы разобрались, вспомнили базовые моменты, сейчас поговорим о 16-ричной системе. Алфавит 16-ричной системы счисления состоит из шестнадцати различных знаков: 10 арабских цифр (от 0 до 9) и 6 первых заглавных латинских букв (от "А" до "F"). Это означает, что абсолютно любое число, записанное в шестнадцатеричном виде, будет состоять из знаков вышеприведенного алфавита. Вот примеры чисел, записанных в 16-ричном представлении:

810A FCDF 198303 100FFF0

Поговорим об алгоритме преобразования числа из 2-ной в 16-ричную систему счисления

Нам потребуется в обязательном порядке рассмотреть кодировочную таблицу Тетрад. Без применения данной таблицы будет довольно затруднительно оперативно осуществлять перевод чисел из 2 в 16 систему.

Назначение кодировочной таблицы Тетрад: однозначно сопоставить символы двоичной системы счисления и 16-ричной системы счисления.

Таблица Тетрад имеет следующую структуру:

Таблица Тетрад

0000 - 0

0001 - 1

0010 - 2

0011 - 3

0100 - 4

0101 - 5

0110 - 6

0111 - 7

1000 - 8

1001 - 9

1010 - A

1011 - B

1100 - C

1101 - D

1110 - E

1111 - F

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

101 . 0111 . 1100 . 1010

После разбиения мы получили четыре группы: 101, 0111, 1100 и 1010. Особого внимания требует самый левый сегмент, то есть сегмент 101. Как видно, его длина составляет 3 разряда, а необходимо, чтобы его длина равнялась четырем, следовательно, дополним данный сегмент ведущим незначащим нулем:

101 -> 0 101.

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

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

0101 -> 5 0111 -> 7 1100 -> C 1010 -> A

101011111001010 2 = 57СА 16

А сейчас я вам предлагаю ознакомиться с мультимединым решением, в котором показано как преобразуется из бинарного состояния в 16-ричное состояние:

Краткие выводы

В данной небольшой статье мы разобрали тему «Системы счисления: как перевести из 2 в 16 ». Если у вас остались какие-либо вопросы, недопонимания, то звоните и записывайтесь на мои индивидуальные уроки по информатике и программированию. Я предложу вам решить не один десяток подобных упражнений и у вас не останется ни одного вопроса. Вообще, системы счисления – чрезвычайно важная тема, которая образует фундамент, используемый на протяжении всего курса .