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

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

Вконтакте

Историческое признание

Появление двоичной СС в истории связано с учёным математиком В.Г. Лейбницем. Именно он впервые заговорил о правилах выполнения операций с числовыми значениями данного рода. Но первоначально этот принцип остался невостребованным . Мировое признание и применение алгоритм получил на заре возникновения вычислительных машин.

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

Внимание! Конкретную точку над превосходством двоичной системы по отношению десятичной, именно в данной отрасли, было поставлено в 1946 году и обосновано в статье А. Бекса, Х. Гольдстайна и Дж.Фон Неймана.

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

Особенности двоичной арифметики

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

  • наличие отверстия или его отсутствие, к примеру, перфокарты или перфоленты;
  • на магнитных носителях отвечает за состояние намагничивания или размагничивания;
  • по уровню сигнала, высокий или низкий.

В науке, в которой применяется СС, введена определённая терминология, суть ее состоит в следующем:

  • Бит – двоичный разряд , который состоит из двух составляющих, несущих в себе определённый смысл. Размещённый слева, определяется как старший и является приоритетным, а справа – младшим, являющийся менее весомым.
  • Байт – это единица, которая состоит из восьми битов .

Многие модули воспринимают и обрабатывают информацию порциями или словами . Каждое слово имеет разный вес и может состоять из 8-ми, 16-ти или 32-х битов .

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

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

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

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

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

186:2=93 (ост. 0)

93:2=46 (ост. 1)

46:2=23 (ост. 0)

23:2=11 (ост. 1)

11:2=5 (ост. 1)

5:2=2 (ост.1)

После того, как процесс деления закончен, то единицу в частном и все остатки записываем последовательно в обратном делению порядке . То есть, 18610=1111010. Правило перевода десятичных чисел в СС надо соблюдать всегда.

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

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

Аналогичный процесс проводится при переводе из десятичной СС в восьмеричную. Его ещё называют «правилом замещения ». Если в предыдущем примере деление данных осуществлялось на 2, то здесь необходимо делить на 8. Алгоритм перевода числа X10 в восьмеричную состоит из следующих шагов:

  1. Число X10 начинают делить на 8. Полученное частное берём для следующего деления, а остаток записывается, как бит младшего порядка .
  2. Продолжаем деление до тех пор, пока не получим в результат частного равного нулю или остаток, который по своему значению меньше восьми . При этом все остатки записываем, как младшие порядки бита .

К примеру, необходимо перевести число 160110 в восьмеричное.

1601:8=200 (ост. 1)

200:8=25 (ост. 0)

25:8=3 (ост.1)

Итак, получим: 161010=31018.

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

Записываем десятичное число шестнадцатеричным

Перевод из десятичной в шестнадцатиричную СС осуществляется аналогично с использованием системы замещения. Но кроме цифр применяют ещё и буквы латинского алфавита A, B, C, D, E, F. Где A обозначает остаток 10, а F остаток 15. Десятичное число делят на 16. К примеру, переводим 10710 в шестнадцатеричную:

107:16=6 (ост. 11 – заменяем В)

6 – меньше, чем шестнадцать. Деление прекращаем и записываем 10710=6В16.

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

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

Впервые позиционная система счисления возникла в древнем Вавилоне. В Индии система работает в виде

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

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

называть арабской.

Позиционная система — значение всех цифр зависит от позиции (разряда) данной цифры в числе.

Примеры, стандартная 10-я система счисления - это позиционная система. Допустим дано число 453.

Цифра 4 обозначает сотни и соответствует числу 400, 5 — кол-во десятков и соответствует значению 50,

а 3 — единицы и значению 3. Легко заметить, что с увеличением разряда увеличивается значение.

Таким образом, заданное число запишем в виде суммы 400+50+3=453.

Двоичная система счисления.

Здесь только 2 цифры - это 0 и 1. Основание двоичной системы - число 2.

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

Во всех разрядах возможна лишь одна цифра — или нуль, или единица.

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

это число в виде последовательности нулей и единиц.

Пример: 10112 = 1*2 3 + 0*2*2+1*2 1 +1*2 0 =1*8 + 1*2+1=1110

Двоичную систему счисления, как и десятичную систему счисления , зачастую используют в вычислительной

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

в изображение на экране.

Сложение, вычитание и умножение двоичных чисел.

Таблица сложения в двоичной системе счисления:

10 (перенос в

старший разряд)

Таблица вычитания в двоичной системе счисления:

(заём из старшего

разряда) 1

Пример сложения «столбиком» (14 10 + 5 10 = 19 10 или 1110 2 + 101 2 = 10011 2):

+ 1 1 1 0
1 0 1
1 0 0 1 1

Таблица умножения в двоичной системе счисления:

Пример умножения «столбиком» (14 10 * 5 10 = 70 10 или 1110 2 * 101 2 = 1000110 2):

* 1 1 1 0
1 0 1
+ 1 1 1 0
1 1 1 0
= 1 0 0 0 1 1 0

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

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

основания 2:

Начиная с цифры один каждая цифра умножается на 2. Точка, стоящая после 1, называют двоичной точкой .

Преобразование двоичных чисел в десятичные.

Пусть, есть двоичное число 110001 2 . Для перевода в десятичное записываем его в виде суммы по

разрядам следующим образом:

1 * 2 5 + 1 * 2 4 + 0 * 2 3 + 0 * 2 2 + 0 * 2 1 + 1 * 2 0 = 49

Немного по другому:

1 * 32 + 1 * 16 + 0 * 8 + 0 * 4 + 0 * 2 + 1 * 1 = 49

Также хорошо записывать расчет как таблицу:

Двигаемся справа налево. Под всеми двоичными единицами записываем её эквивалент строчкой ниже.

Преобразование дробных двоичных чисел в десятичные.

Задание: перевести число 1011010, 101 2 в десятичную систему.

Записываем заданное число в таком виде:

1*2 6 +0*2 5 +1*2 4 +1*2 3 +0 *2 2 + 1 * 2 1 + 0 * 2 0 + 1 * 2 -1 + 0 * 2 -2 + 1 * 2 -3 = 90,625

Другой вариант записи:

1*64+0*32+1*16+1*8+0*4+1*2+0*1+1*0,5+0*0,25+1*0,125 = 90,625

Либо в виде таблицы:

0.25

0.125

0.125

Преобразование десятичных чисел в двоичные.

Пусть, необходимо перевести число 19 в двоичное. Можем сдеать это таким образом:

19 /2 = 9 с остатком 1

9 /2 = 4 c остатком 1

4 /2 = 2 без остатка 0

2 /2 = 1 без остатка 0

1 /2 = 0 с остатком 1

То есть, каждое частное делится на 2 и записывается остаток в конец двоичной записи. Деление

продолжается до того момента, когда в частном не будет нуля. Итог пишем справа налево. Т.е. нижняя

цифра (1) будет крайней левой и так далее. Итак, у нас получилось число 19 в двоичной записи: 10011.

Преобразование дробных десятичных чисел в двоичные.

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

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

  • Дробь умножается на основание двоичной системы счисления (2);
  • В полученном произведении выделяется целая часть, которая принимается в качестве старшего

разряда числа в двоичной системе счисления;

  • Алгоритм завершается, если дробная часть полученного произведения равна нулю или если

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

дробной частью произведения.

Пример : Нужно перевести дробное десятичное число 206,116 в дробное двоичное число.

Переведя целую часть, получаем 206 10 =11001110 2 . Дробная часть 0,116 умножается на основание 2,

заносим целые части произведения в разряды после запятой:

0,116 . 2 = 0,232

0,232 . 2 = 0,464

0,464 . 2 = 0,928

0,928 . 2 = 1,856

0,856 . 2 = 1,712

0,712 . 2 = 1,424

0,424 . 2 = 0,848

0,848 . 2 = 1,696

0,696 . 2 = 1,392

0,392 . 2 = 0,784

Результат: 206,116 10 ≈ 11001110,0001110110 2

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

1. Из десятичной системы счисления:

  • делим число на основание переводимой системы счисления;
  • находим остаток от деления целой части числа;
  • записываем все остатки от деления в обратном порядке;

2. Из двоичной системы счисления:

  • для перевода в десятичную систему счисления находим сумму произведений основания 2 на

соответствующую степень разряда;

Калькулятор позволяет переводить целые и дробные числа из одной системы счисления в другую. Основание системы счисления не может быть меньше 2 и больше 36 (10 цифр и 26 латинских букв всё-таки). Длина чисел не должна превышать 30 символов. Для ввода дробных чисел используйте символ. или, . Чтобы перевести число из одной системы в другую, введите исходное число в первое поле, основание исходной системы счисления во второе и основание системы счисления, в которую нужно перевести число, в третье поле, после чего нажмите кнопку "Получить запись".

Исходное число записано в 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 -ой системе счисления .

Хочу получить запись числа в 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 -ой системе счисления .

Получить запись

Выполнено переводов: 1237177

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

Системы счисления делятся на два типа: позиционные и не позиционные . Мы пользуемся арабской системой, она является позиционной, а есть ещё римская − она как раз не позиционная. В позиционных системах положение цифры в числе однозначно определяет значение этого числа. Это легко понять, рассмотрев на примере какого-нибудь числа.

Пример 1 . Возьмём число 5921 в десятичной системе счисления. Пронумеруем число справа налево начиная с нуля:

Число 5921 можно записать в следующем виде: 5921 = 5000+900+20+1 = 5·10 3 +9·10 2 +2·10 1 +1·10 0 . Число 10 является характеристикой, определяющей систему счисления. В качестве степеней взяты значения позиции данного числа.

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

Число 1234.567 можно записать в следующем виде: 1234.567 = 1000+200+30+4+0.5+0.06+0.007 = 1·10 3 +2·10 2 +3·10 1 +4·10 0 +5·10 -1 +6·10 -2 +7·10 -3 .

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

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

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

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

1. Перевести число 1001101.1101 2 в десятичную систему счисления.
Решение: 10011.1101 2 = 1·2 4 +0·2 3 +0·2 2 +1·2 1 +1·2 0 +1·2 -1 +1·2 -2 +0·2 -3 +1·2 -4 = 16+2+1+0.5+0.25+0.0625 = 19.8125 10
Ответ: 10011.1101 2 = 19.8125 10

2. Перевести число E8F.2D 16 в десятичную систему счисления.
Решение: E8F.2D 16 = 14·16 2 +8·16 1 +15·16 0 +2·16 -1 +13·16 -2 = 3584+128+15+0.125+0.05078125 = 3727.17578125 10
Ответ: E8F.2D 16 = 3727.17578125 10

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

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

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

Целая часть переводится из десятичной системы счисления в другую систему счисления с помощью последовательного деления целой части числа на основание системы счисления до получения целого остатка, меньшего основания системы счисления. Результатом перевода будет являться запись из остатков, начиная с последнего.

3. Перевести число 273 10 в восьмиричную систему счисления.
Решение: 273 / 8 = 34 и остаток 1, 34 / 8 = 4 и остаток 2, 4 меньше 8, поэтому вычисления завершены. Запись из остатков будет иметь следующий вид: 421
Проверка : 4·8 2 +2·8 1 +1·8 0 = 256+16+1 = 273 = 273 , результат совпал. Значит перевод выполнен правильно.
Ответ: 273 10 = 421 8

Рассмотрим перевод правильных десятичных дробей в различные системы счисления.

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

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

4. Перевести число 0.125 10 в двоичную систему счисления.
Решение: 0.125·2 = 0.25 (0 - целая часть, которая станет первой цифрой результата), 0.25·2 = 0.5 (0 - вторая цифра результата), 0.5·2 = 1.0 (1 - третья цифра результата, а так как дробная часть равна нулю, то перевод завершён).
Ответ: 0.125 10 = 0.001 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.

Самые распространенные в современном мире методы расчетов - десятичный и двоичный. Они используются в совершенно разных областях, но оба одинаково важны. Нередко требуется и перевод из двоичной в десятичную систему или наоборот. Названия произошли от оснований, которые зависят от того, сколько знаков используется в записи чисел. В двоичной это только 0 и 1, а в десятичной - от 0 до 9. В других системах помимо цифр используются буквы, другие значки и даже иероглифы, но практически все они уже давно устарели. Поскольку даже другие разновидности числовых систем гораздо менее распространены, то что речь пойдет прежде всего о двух уже упомянутых. На самом деле удивительно, как все это можно было придумать. Поговорим на эту тему отдельно.

История возникновения

Даже сейчас, когда, казалось бы, весь мир считает одинаково, встречаются самые разные системы. В самых отдаленных уголках земного шара довольствуются лишь понятиями "один", "два" и "много", или чем-то подобным. Что уж говорить о тех временах, когда людям было гораздо сложнее контактировать друг с другом, так что использовалось огромное количество самых разных видов записей и методов подсчетов. Человечество далеко не сразу пришло к существующей системе, и это отражается в том, что час разделен на 60 минут, а не на 100 отрезков времени, что было бы, кажется, логичней. И в то же время люди чаще считают десятками, чем дюжинами. Все это отголоски того времени, когда инструментами для количественной оценки чего-либо служили собственные пальцы или, например, фаланги некоторых из них. Так возникли десятичная и двенадцатиричная системы. Но как же возникла двоичная? Очень просто и логично. Дело в том, что, например, у диодов есть всего два положения: он может быть либо включен, либо выключен. Первое состояние, таким образом, можно записать как 1, а второе - как 0. Однако это не означает, что двоичная система возникла одновременно с электронными приборами. Ее использовали гораздо раньше, например, Лейбниц считал ее крайне удобной, изящной и простой. Даже удивительно, что эта система счисления не стала в итоге основной.

Сферы применения

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

Отличия и особенности

Когда речь идет о системах счисления, обязательно необходимо как-то разграничить их. Ведь отличить 11 или 100 в разных методах записи просто так совершенно невозможно. Именно поэтому используется указатель ниже и правее самого числа. Так что, увидев запись 11 2 или 100 10 , можно понять, о чем идет речь. Обе системы являются позиционными, то есть от места той или иной цифры зависит ее значение. О разрядах десятичной системы рассказывают в школе: там есть единицы, десятки, сотни, тысячи и т. д. В двоичной все то же самое. Но в связи с тем, что ее основание - 2 - меньше 10, то разрядов ей нужно гораздо больше, то есть запись чисел получается гораздо длиннее. Кстати, в двоичной, как и во всех других системах, кроме десятичной, как самой распространенной, чтение происходит особым образом. Если основание 10 дает возможность прочесть 101 как "сто один", то для 2 это будет "один ноль один".

Возвращаясь к вопросу разрядов, необходимо повторить, что в связи с гораздо меньшим основанием требуется больше разрядов. Так, например, 8 10 - это 1000 2 . Разница очевидна - один разряд и четыре. Еще одно серьезное отличие - в двоичной системе не существует отрицательных чисел. Разумеется, записать его можно, но храниться и зашифровываться оно все равно будет иначе. Итак, как же производится перевод из двоичной системы счисления в десятичную и наоборот?

Алгоритм

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

2) последовательно умножить значение на 2, возведенное в степень, равную номеру позиции;

3) сложить полученные результаты.

Еще один способ - начать суммировать произведения цифр последовательно справа налево. Это называется преобразованием методом Горнера и многим кажется более удобным, чем обычный алгоритм.

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

1) разделить изначальное число на 2 и записать остаток (1 или 0);

2) повторять шаг 1 до момента, когда останется только 0 или 1;

3) записать полученные значения по порядку.

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

Дроби

К счастью или сожалению, но факт остается фактом - в двоичной системе используются не только целые числа. Перевод дробей - не слишком сложная, но зачастую трудоемкая для человека задача. Если изначальное число представлено в десятичной системе, то после преобразования целого числа все, что после запятой, нужно уже не делить, а умножать на 2, записывая целые части. Если же производится перевод из двоичной в десятичную систему, то все еще проще. В этом случае, когда начнется преобразование части после запятой, степень, в которую возводится 2, будет последовательно равняться -1, -2, -3 и т. д. Лучше всего будет рассмотреть это на практике.

Пример

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

  • перевод 1000101 2 в десятичную систему: 1х2 6 + 0х2 5 + 0х2 4 + 0х2 3 + 1х2 2 + 0х2 1 + 1х2 0 = 64+0+0+0+4+1 = 69 10 ;
  • с помощью метода Горнера. 00110111010 2 = 0х2+0=0х2+0=0х2+1=1х2+1=3х2+0=6х2+1=13х2+1=27х2+1=55х2+0=110х2+1=221х2+0=442 10 ;
  • 1110,01 2: 1х2 3 + 1х2 2 + 1х2 1 + 0х2 0 + 0х2 -1 + 1х2 -2 = 8+4+2+0,25 = 14,25 10 ;
  • из десятичной системы: 15 10 = 15/2=7(1)/2=3(1)/2=1(1)/2=0(1)= 1111 2 ;

Как не запутаться?

Даже на примере лишь двоичной и десятичной систем становится ясно, что смена основания вручную - нетривиальная задача. А ведь есть еще и другие: шестнадцатиричная, восьмеричная, шестидесятиричная и т. д. При ручном переводе из одной системы счисления в другую крайне необходима внимательность. Не запутаться действительно сложно, особенно если запись длинная. Кроме того, нельзя забывать, что разряды считаются с 0, а не 1, то есть количество цифр всегда будет на одну больше. Разумеется, нужно внимательно подсчитывать число разрядов и не допускать ошибок в арифметических действиях и, конечно, не пропускать шаги в алгоритме. В конечном итоге, существуют способы осуществлять переход между основаниями программными методами. Но здесь проще самостоятельно написать скрипт, чем искать его на просторах всемирной сети. В любом случае, навыки ручного перевода, как и теоретическое представление о том, как это делается, тоже должны быть.



Понравилась статья? Поделиться с друзьями: