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

Nokia 11.10.2019
Nokia

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

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

При переводе удобно пользоваться таблицей степеней двойки:

Таблица 4. Степени числа 2

n (степень)

Пример.

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

При переводе удобно пользоваться таблицей степеней восьмерки:

Таблица 5. Степени числа 8

n (степень)

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

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

При переводе удобно пользоваться таблицей степеней числа 16:

Таблица 6. Степени числа 16

n (степень)

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

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

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

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

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

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

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

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

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

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

Пример 1. Перевести число 11(10) в двоичную систему счисления.

Ответ: 11(10)=1011(2).

Пример 2. Перевести число 122(10) в восьмеричную систему счисления.


Ответ: 122(10)=172(8).

Пример 3. Перевести число 500(10) в шестнадцатеричную систему счисления.


Ответ: 500(10)=1F4(16).

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

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

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

Пример 1. Перевести число 0,625(10) в двоичную систему счисления.


Ответ: 0,625(10)=0,101(2).

Пример 2. Перевести число 0,6(10) в восьмеричную систему счисления.


Ответ: 0,6(10)=0,463(8).

Пример 2. Перевести число 0,7(10) в шестнадцатеричную систему счисления.


Ответ: 0,7(10)=0,В333(16).

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

Для перевода числа P-ичной системы в десятичную необходимо использовать следующую формулу разложения:
аnan-1…а1а0=аnPn+ аn-1Pn-1+…+ а1P+a0 .

Пример 1. Перевести число 101,11(2) в десятичную систему счисления.

Ответ: 101,11(2)= 5,75(10) .

Пример 2. Перевести число 57,24(8) в десятичную систему счисления.

Ответ: 57,24(8) = 47,3125(10) .

Пример 3. Перевести число 7A,84(16) в десятичную систему счисления.

Ответ: 7A,84(16)= 122,515625(10) .


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

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

Пример: записать число 16,24(8) в двоичной системе счисления.


Ответ: 16,24(8)= 1110,0101(2) .

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

Пример: записать число 1110,0101(2) в восьмеричной системе счисления.


Ответ: 1110,0101(2)= 16,24(8) .

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

Пример: записать число 7A,7E(16) в двоичной системе счисления.


Ответ: 7A,7E(16)= 1111010,0111111(2) .

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

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

Пример: записать число 1111010,0111111(2) в шестнадцатеричной системе счисления.

Чтобы быстро переводить числа из десятичной системы счисления в двоичную, нужно хорошо знать числа "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 .
Теперь сложим столбиком:

Результат уже получен!

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

Существуют позиционные и не позиционные системы счисления. Арабская система счисления, которым мы пользуемся в повседневной жизни, является позиционной, а римская − нет. В позиционных системах счисления позиция числа однозначно определяет величину числа. Рассмотрим это на примере числа 6372 в десятичном системе счисления. Пронумеруем это число справа налево начиная с нуля:

Тогда число 6372 можно представить в следующем виде:

6372=6000+300+70+2 =6·10 3 +3·10 2 +7·10 1 +2·10 0 .

Число 10 определяет систему счисления (в данном случае это 10). В качестве степеней взяты значения позиции данного числа.

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

Тогда число 1287.923 можно представить в виде:

1287.923 =1000+200+80 +7+0.9+0.02+0.003 = 1·10 3 +2·10 2 +8·10 1 +7·10 0 +9·10 -1 +2·10 -2 +3·10 -3 .

В общем случае формулу можно представить в следующем виде:

Ц n ·s n +Ц n-1 ·s n-1 +...+Ц 1 ·s 1 +Ц 0 ·s 0 +Д -1 ·s -1 +Д -2 ·s -2 +...+Д -k ·s -k

где Ц n -целое число в позиции n , Д -k - дробное число в позиции (-k), s - система счисления.

Несколько слов о системах счисления.Число в десятичной системе счисления состоит из множества цифр {0,1,2,3,4,5,6,7,8,9}, в восьмеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7}, в двоичной системе счисления - из множества цифр {0,1}, в шестнадцатеричной системе счисления - из множества цифр {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}, где A,B,C,D,E,F соответствуют числам 10,11,12,13,14,15.В таблице Таб.1 представлены числа в разных системах счисления.

Таблица 1
Система счисления
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

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

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

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

С помощью формулы (1) можно перевести числа из любой системы счисления в десятичную систему счисления.

Пример 1. Переводить число 1011101.001 из двоичной системы счисления (СС) в десятичную СС. Решение:

1 ·2 6 +0 ·2 5 +1 ·2 4 +1 ·2 3 +1 ·2 2 +0 ·2 1 +1 ·2 0 +0 ·2 -1 +0 ·2 -2 +1 ·2 -3 =64+16+8+4+1+1/8=93.125

Пример 2. Переводить число 1011101.001 из восьмеричной системы счисления (СС) в десятичную СС. Решение:

Пример 3 . Переводить число AB572.CDF из шестнадцатеричной системы счисления в десятичную СС. Решение:

Здесь A -заменен на 10, B - на 11, C - на 12, F - на 15.

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

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

Целую часть числа переводится из десятичной СС в другую систему счисления - последовательным делением целой части числа на основание системы счисления (для двоичной СС - на 2, для 8-ичной СС - на 8, для 16-ичной - на 16 и т.д.) до получения целого остатка, меньше, чем основание СС.

Пример 4 . Переведем число 159 из десятичной СС в двоичную СС:

159 2
158 79 2
1 78 39 2
1 38 19 2
1 18 9 2
1 8 4 2
1 4 2 2
0 2 1
0

Как видно из Рис. 1, число 159 при делении на 2 дает частное 79 и остаток 1. Далее число 79 при делении на 2 дает частное 39 и остаток 1 и т.д. В результате построив число из остатков деления (справа налево) получим число в двоичной СС: 10011111 . Следовательно можно записать:

159 10 =10011111 2 .

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

615 8
608 76 8
7 72 9 8
4 8 1
1

При приведении числа из десятичной СС в восьмеричную СС, нужно последовательно делить число на 8, пока не получится целый остаток меньшее, чем 8. В результате построив число из остатков деления (справа налево) получим число в восьмеричной СС: 1147 (см. Рис. 2). Следовательно можно записать:

615 10 =1147 8 .

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

19673 16
19664 1229 16
9 1216 76 16
13 64 4
12

Как видно из рисунка Рис.3, последовательным делением числа 19673 на 16 получили остатки 4, 12, 13, 9. В шестнадцатеричной системе счисления числе 12 соответствует С, числе 13 - D. Следовательно наше шестнадцатеричное число - это 4CD9.

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

Рассмотрим вышеизложенное на примерах.

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

0.214
x 2
0 0.428
x 2
0 0.856
x 2
1 0.712
x 2
1 0.424
x 2
0 0.848
x 2
1 0.696
x 2
1 0.392

Как видно из Рис.4, число 0.214 последовательно умножается на 2. Если в результате умножения получится число с целой частью, отличное от нуля, то целая часть записывается отдельно (слева от числа), а число записывается с нулевой целой частью. Если же при умножении получиться число с нулевой целой частью, то слева от нее записывается нуль. Процесс умножения продолжается до тех пор, пока в дробной части не получится чистый нуль или же не получим требуемое количество разрядов. Записывая жирные числа (Рис.4) сверху вниз получим требуемое число в двоичной системе счисления: 0.0011011 .

Следовательно можно записать:

0.214 10 =0.0011011 2 .

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

0.125
x 2
0 0.25
x 2
0 0.5
x 2
1 0.0

Для приведения числа 0.125 из десятичной СС в двоичную, данное число последовательно умножается на 2. В третьем этапе получилось 0. Следовательно, получился следующий результат:

0.125 10 =0.001 2 .

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

0.214
x 16
3 0.424
x 16
6 0.784
x 16
12 0.544
x 16
8 0.704
x 16
11 0.264
x 16
4 0.224

Следуя примерам 4 и 5 получаем числа 3, 6, 12, 8, 11, 4. Но в шестнадцатеричной СС числам 12 и 11 соответствуют числа C и B. Следовательно имеем:

0.214 10 =0.36C8B4 16 .

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

0.512
x 8
4 0.096
x 8
0 0.768
x 8
6 0.144
x 8
1 0.152
x 8
1 0.216
x 8
1 0.728

Получили:

0.512 10 =0.406111 8 .

Пример 11 . Переведем число 159.125 из десятичной системы счисления в двоичную СС. Для этого переведем отдельно целую часть числа (Пример 4) и дробную часть числа (Пример 8). Далее объединяя эти результаты получим:

159.125 10 =10011111.001 2 .

Пример 12 . Переведем число 19673.214 из десятичной системы счисления в шестнадцатеричную СС. Для этого переведем отдельно целую часть числа (Пример 6) и дробную часть числа (Пример 9). Далее объединяя эти результаты получим.

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

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

Прежде чем размышлять о том, как перевести число из 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 ». Если у вас остались какие-либо вопросы, недопонимания, то звоните и записывайтесь на мои индивидуальные уроки по информатике и программированию. Я предложу вам решить не один десяток подобных упражнений и у вас не останется ни одного вопроса. Вообще, системы счисления – чрезвычайно важная тема, которая образует фундамент, используемый на протяжении всего курса .



Рекомендуем почитать

Наверх