Перевод в различные системы счисления счетчик. Способы перевода чисел из одной системы счисления в другую
Чтобы быстро переводить числа из десятичной системы счисления в двоичную, нужно хорошо знать числа "2 в степени". Например, 2 10 =1024 и т.д. Это позволит решать некоторые примеры на перевод буквально за секунды. Одной из таких задач является задача A1 из демо ЕГЭ 2012 года . Можно, конечно, долго и нудно делить число на "2". Но лучше решать по-другому, экономя драгоценное время на экзамене.
Метод очень простой. Суть его такая: если число, которое нужно перевести из десятичной системы, равно числу "2 в степени", то это число в двоичной системе содержит количество нулей, равное степени. Впереди этих нулей добавляем "1".
- Переведем число 2 из десятичной системы. 2=2 1 . Поэтому в двоичной системе число содержит 1 нуль . Впереди ставим "1" и получаем 10 2 .
- Переведем 4 из десятичной системы. 4=2 2 . Поэтому в двоичной системе число содержит 2 нуля . Впереди ставим "1" и получаем 100 2.
- Переведем 8 из десятичной системы. 8=2 3 . Поэтому в двоичной системе число содержит 3 нуля . Впереди ставим "1" и получаем 1000 2.
Аналогично и для других чисел "2 в степени".
Если число, которое нужно перевести, меньше числа "2 в степени" на 1, то в двоичной системе это число состоит только из единиц, количество которых равно степени.
- Переведем 3 из десятичной системы. 3=2 2 -1. Поэтому в двоичной системе число содержит 2 единицы . Получаем 11 2.
- Переведем 7 из десятичной системы. 7=2 3 -1. Поэтому в двоичной системе число содержит 3 единицы . Получаем 111 2.
На рисунке квадратиками обозначено двоичное представление числа, а слева розовым цветом-десятичное.
Аналогичен перевод и для других чисел "2 в степени-1".
Понятно, что перевод чисел от 0 до 8 можно сделать быстро или делением, или просто знать наизусть их представление в двоичной системе. Я привела эти примеры, чтобы Вы поняли принцип данного метода и использовали его для перевода более "внушительных чисел", например, для перевода чисел 127,128, 255, 256, 511, 512 и т.д.
Можно встретить такие задачи, когда нужно перевести число, не равное числу "2 в степени", но близкое к нему. Оно может быть больше или меньше числа "2 в степени". Разница между переводимым числом и числом "2 в степени" должна быть небольшая. Например, до 3. Представление чисел от 0 до 3 в двоичной системе надо просто знать без перевода.
Если число
больше
, то решаем так:
Переводим сначала число "2 в степени" в двоичную систему. А потом прибавляем к нему разницу между числом "2 в степени" и переводимым числом.
Например, переведем 19 из десятичной системы. Оно больше числа "2 в степени" на 3.
16=2 4 . 16 10 =10000 2 .
3 10 =11 2 .
19 10 =10000 2 +11 2 =10011 2 .
Если число меньше числа "2 в степени", то удобнее пользоваться числом "2 в степени-1". Решаем так:
Переводим сначала число "2 в степени-1" в двоичную систему. А потом вычитаем из него разницу между числом "2 в степени-1" и переводимым числом.
Например, переведем 29 из десятичной системы. Оно больше числа "2 в степени-1" на 2. 29=31-2.
31 10 =11111 2 .
2 10 =10 2 .
29 10 =11111 2 -10 2 =11101 2
Если разница между переводимым числом и числом "2 в степени" больше трех , то можно разбить число на составляющие, перевести каждую часть в двоичную систему и сложить.
Например, перевести число 528 из десятичной системы. 528=512+16. Переводим отдельно 512 и 16.
512=2 9
. 512 10 =1000000000
2 .
16=2 4
. 16 10 =10000
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.
Для перевода чисел из десятичной с/с в любую другую, необходимо делить десятичное число на основание системы, в которую переводят, сохраняя при этом остатки от каждого деления. Результат формируется справа налево. Деление продолжается до тех пор, пока результат деления не станет меньше делителя.
Калькулятор переводит числа из одной системы счисления в любую другую. Он может переводить числа из двоичной в десятичную или из десятичной в шестнадцатеричную, показывая подробный ход решения. Вы с легкостью можете перевести число из троичной в пятеричную или даже из семеричной в семнадцатеричную. Калькулятор умеет переводить числа из любой системы счисления в любую другую.
В данной статье я расскажу основы компьютерной техники - это двоичная система. Это самый низкий уровень, это числа по которым работает компьютер. И вы узнаете как переводить из одной системы
Таблица 1 - Представление чисел в различных системах
исчисление (начало)
Системы счисления |
||||
Десятичная |
Двоичная |
Восьмеричная |
Шестнадцатеричная |
двоично-десятичная |
Для того чтобы перевести из десятичной в двоичную, можно использовать два варианта.
1) К примеру число 37 нужно перевести из десятичной системы в двоичную, то нужно его делить на два, а затем проверять остаток от деления. Если остаток нечетный, то в низу мы подписывает единицу и следующий цикл деления идет через четное число, если останок от деления четный, то пишим ноль. На конце обязательно должна получиться 1. А теперь полученный результат мы преобразуем в двоичный, причем число идет справа на лево.
Пошагово: 37 - это число нечетное, значит 1 , затем 36/2 = 18. Число четное, значит 0 . 18/2 = 9 число нечетное, значит 1 , затем 8/2 = 4. Число четное, зачит 0 . 4/2 = 2, число четное значит 0 , 2/2 = 1 .
Итак, мы получили число. Не забудьте счет идет справа налево: 100101 - вот мы получили число в двоичной системе. А вообще это записывается в виде деления в столбик, как вы видите ниже на рисунке:
2) Но есть второй способ. Он мне больше нравиться. Перевод из одной системы в другую идет в следующем виде:
где ai - i-я цифра числа;
k - количество цифр в дробной части числа;
m - количество цифр в целой части числа;
N - основание системы исчисления.
Основание системы счисления N показывает, во сколько раз "вес" i-го разряда больше "веса" (i-1) разряда. Целая часть числа отделяется от дробной части точкой (запятой).
Целая часть числа AN1, с основой N1, переводится в систему счисления с основанием N2 путем последовательного деления целой части числа AN1 на записанную в виде числа с основанием N1 основу N2, до получения остатка.Полученная доля снова делится на основание N2, и этот процесс необходимо повторять, пока частица не станет меньше делителя. Полученные остатки от деления и последняя часть записываются в порядке, обратном полученном при делении. Сформированное число и будет целым числом с основанием N2.
Дробная часть числа AN1, с основой N1, переводится в систему счисления с основанием N2 путем последовательного умножения дробной части числа AN1 на основание N2, записанную в виде числа с основанием N1. При каждом умножении целая часть произведения берется в виде очередной цифры соответствующего разряда, а дробная часть оставшейся принимается за новую умножений. Число умножений определяет разрядность полученного результата, представляющий дробную часть числа AN1 в системе счисления N2. Дробная часть числа при переводе часто представляется неточно.
Давайте это сделаем на примере:
Перевод с десятичной в двоичную
37 в десятичной нужно перевести в двоичную. Давайте поработаем со степенями:
2 0 = 1
2 1 = 2
2 2 = 4
2 3 = 8
2 4 = 16
2 5 = 32
2 6 = 64
2 7 = 128
2 8 = 256
2 9 = 512
2 10 = 1024 и так далее... до бесконечности
Значит: 37 - 32 = 5. 5 - 4 = 1. Ответ следующий в двоичной системе: 100101.
Давайте переведем число 658 из десятичной в двоичную:
658-512=146
146-128=18
18-16=2. В двоичной системе число будет иметь вид: 1010010010.
Перевод с десятичной в восмеричную
Если вам надо перевести с десятичной в восьмеричную, необходимо сначала перевести в двоичную, а затем с двоичной перевести в восьмеричную. То есть так проще, хотя можно и сразу перевести. По алгоритму подобному как в переводе в двоичную, см. выше.
Перевод с десятичной в шестнадцатеричной
Если вам надо перевести с десятичной в шестнадцатеричную, необходимо сначала перевести в двоичную, а затем с двоичной перевести в шестнадцатеричную. То есть так проще, хотя можно и сразу перевести. По алгоритму подобному как в переводе в двоичную, см. выше.
Перевод с двоичной в восмеричную
Чтобы перевести число из двоичной в восьмиричную систему нужно двоичное разбить по три числа.
К примеру полученное число 1010010010 разбивает по три числа, причем разбивка идет справа налево: 1 010 010 010 = 1222. Смотрите таблицу в самом начале.
Перевод с двоичной в шестнадцатеричную
Чтобы перевести число из двоичной в шестнадцатеричное, надо разбить на тетрады (по четыре)
10 1001 0010 = 292
Привожу несколько примеров, для того, чтобы вы просмотрели:
Перевод осуществляется из двоичной в восьмиричную, затем в шестнадцатеричную, а затем из двоичной десятичную
(2) = 11101110
(8) = 11 101 110 = 276
(16) = 1110 1110 = EE
(10) = 1*128+ 1*64+ 1*32+ 0 +1*8 + 1*4 + 1*2+ 0= 238
3) (8) = 657
Перевод осуществляется из шестнадцатеричной в двоичную, затем в восьмиричную, а затем из двоичной десятичную
(16) = 6E8
(2) = 110 1110 1000
(8) = 11 011 101 000 = 2250
(10) = 1*1024+1*512+ 0 +1*128+ 1*64+ 1*32+ 8 = 1768
Другие статьи: |