Найти в Дзене
Информатика

Системы счисления и правила перевода чисел в различных системах счисления

Система счисления — это способ записи чисел с помощью символов (цифр), подчиняющийся определённым правилам. Системы счисления делятся на два типа: Более подробно рассмотрим позиционные системы счисления. Каждая система счисления состоит из определенного набора возможных цифр, например, десятичная система счисления состоит из цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; а шестнадцатеричная система счисления состоит не только из привычных нам цифр, но и из латинских букв: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Давайте тогда сформулируем общее правило для всех позиционных систем счисления: алфавит системы счисления – это перечень символов, используемый в конкретной системе счисления. Алфавит может содержать как десятичные цифры, так и латинские буквы, если основание системы счисления более 10. По сути алфавит любой системы счисления (назовем ее Х) должен состоять из цифр от 0 до Х-1 или X ∈ [0; X-1]. Любое число в позиционно системе счисления можно представить в двух формах записи: сверн
Оглавление

Общие сведения о системах счисления

Система счисления — это способ записи чисел с помощью символов (цифр), подчиняющийся определённым правилам.
Системы счисления делятся на два типа:
  1. Позиционные. Значение числа зависит от положения цифры в записи числа. Например, числа 45 и 54 имеют разное значение, так как в первом случае 4 — это количество десятков, а во втором — единиц.
  2. Непозиционные. Значение числа не зависит от положения цифр в числе. Например, в римской системе счисления принятые обозначения: I – 1, V – 5, X – 10, L – 50, C – 100, D – 500, M – 1000.

Более подробно рассмотрим позиционные системы счисления. Каждая система счисления состоит из определенного набора возможных цифр, например, десятичная система счисления состоит из цифр: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9; а шестнадцатеричная система счисления состоит не только из привычных нам цифр, но и из латинских букв: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F. Давайте тогда сформулируем общее правило для всех позиционных систем счисления: алфавит системы счисления – это перечень символов, используемый в конкретной системе счисления. Алфавит может содержать как десятичные цифры, так и латинские буквы, если основание системы счисления более 10.

По сути алфавит любой системы счисления (назовем ее Х) должен состоять из цифр от 0 до Х-1 или X ∈ [0; X-1].

Алфавит основных систем счисления
Алфавит основных систем счисления

Любое число в позиционно системе счисления можно представить в двух формах записи: свернутой и развернутой. Развёрнутая форма числа – это запись, которая представляет собой сумму произведений цифр числа на значение позиций (степени основания системы счисления). Позиция цифры в числе называется разрядом, разряд возрастает справа налево, от младших разрядов к старшим. Пример: 123 = 100 + 20 + 3 = 1 * 10^2 + 2 * 10^1 + 3 * 10^0.

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

Свёрнутая форма записи числа – это последовательность цифр, стоящих на своих разрядах.

Связь чисел в различных системах счисления
Связь чисел в различных системах счисления

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

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

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

  1. Перевести целую часть десятичной дроби в двоичную систему счисления. Для этого число делят на основание двоичной системы счисления (2) и записывают в обратном порядке остатки, из которых складывается искомое число.
  2. Дробную часть десятичной дроби умножают на основание двоичной системы счисления.
  3. В полученном произведении выделяют целую часть, которая принимается в качестве значения первого после запятой разряда числа в двоичной системе счисления.
  4. Алгоритм завершается, если дробная часть полученного произведения равна нулю или если достигнута требуемая точность вычислений. В противном случае вычисления продолжаются с предыдущего шага. 
  5. Из целых частей получившихся произведений записывают в прямом порядке искомое число.
Перевод десятичного числа в двоичную систему счисления
Перевод десятичного числа в двоичную систему счисления

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

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

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

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

Для перевода числа из любой системы счисления в десятичную необходимо представить исходное число в развернутой форме записи: представить исходное число как сумму произведений значений каждого разряда на основание системы счисления в той степени, в которой находится разряд. Например: двоичное число 101011,11 в двоичной системе счисления будет выглядеть в развернутой форме следующим образом: 101011,11 = 1 * 2^5 + 0 * 2^4 + 1 * 2^3 + 0 * 2^2 + 1 * 2^1 +1 * 2^0 + 1 * 2^(-1) + 1 * 2^(-2) = 32 + 0 + 8 + 0 + 2 + 1 + 0.5 + 0.25 = 43,75.

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

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

Предположим, что у нас имеется двоичное число и нам необходимо его перевести в восьмеричную и шестнадцатеричную систему счисления. Самым простым способом будет перевести исходное число в десятичную систему счисления, а уже потом перевести десятичное число в восьмеричную и шестнадцатеричную систему счисления. С одной стороны, это довольно удобно, с другой - этот способ трудоемкий и долгий. Между различными системами счисления есть взаимосвязь: 2^3 = 8 ^ 1; 2^4 = 16 ^ 1, таким образом получается, что три двоичных знака - это один восьмеричный и наоборот и четыре двоичных знака - один шестнадцатеричный.

Перевод двоичных чисел в восьмеричные - использование триад

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

Перевод двоичного числа в восьмеричное
Перевод двоичного числа в восьмеричное

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

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

Перевод двоичного числа в восьмеричное
Перевод двоичного числа в восьмеричное
В статье были использованы материалы поиска Яндекс.
^ - обозначение степени числа, например: 10^2 = 100.