sonyps4.ru

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

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

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. Число в шестнадцатеричной системе записывается как последовательность цифр последнего результата деления и остатков от деления в обратном порядке.

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

Для представления чисел в микропроцессоре используется двоичная система счисления .
При этом любой цифровой сигнал может иметь два устойчивых состояния: «высокий уровень» и «низкий уровень». В двоичной системе счисления для изображения любого числа используются две цифры, соответственно: 0 и 1. Произвольное число x=a n a n-1 ..a 1 a 0 ,a -1 a -2 …a -m запишется в двоичной системе счисления как

x = a n ·2 n +a n-1 ·2 n-1 +…+a 1 ·2 1 +a 0 ·2 0 +a -1 ·2 -1 +a -2 ·2 -2 +…+a -m ·2 -m

где a i — двоичные цифры (0 или 1).

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

В восьмеричной системе счисления базисными цифрами являются цифры от 0 до 7. 8 единиц младшего разряда объединяются в единицу старшего.

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

В шестнадцатеричной системе счисления базисными цифрами являются цифры от 0 до 15 включительно. Для обозначения базисных цифр больше 9 одним символом кроме арабских цифр 0…9 в шестнадцатеричной системе счисления используются буквы латинского алфавита:

10 10 = A 16 12 10 = C 16 14 10 = E 16
11 10 = B 16 13 10 = D 16 15 10 = F 16 .

Например, число 175 10 в шестнадцатеричной системе счисления запишется как AF 16 . Действительно,

10·16 1 +15·16 0 =160+15=175

В таблице представлены числа от 0 до 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

Двоично-восьмеричные и двоично-шестнадцатеричные преобразования

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

Три разряда восьмеричной системы счисления реализуют все возможные комбинации восьмеричных цифр в двоичной системе счисления: от 0 (000) до 7(111). Чтобы преобразовать двоичное число в восьмеричное, нужно объединить двоичные цифры в группы по 3 разряда (триады) в две стороны, начиная от разделителя целой и дробной части. При необходимости слева от исходного числа нужно добавить незначащие нули. Если число содержит дробную часть, то справа от него тоже можно добавить незначащие нули до заполнения всех триад. Затем каждая триада заменяется восьмеричной цифрой.

Пример: Преобразовать число 1101110,01 2 в восьмеричную систему счисления.

Объединяем двоичные цифры в триады справа налево. Получаем

001 101 110,010 2 = 156,2 8 .

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

156,2 8 = 001 101 110,010 2 .

Четыре разряда шестнадцатеричной системы счисления реализуют все возможные комбинации шестнадцатеричных цифр в двоичной системе счисления: от 0 (0000) до F(1111). Чтобы преобразовать двоичное число в шестнадцатеричное, нужно объединить двоичные цифры в группы по 4 разряда (тетрады) в две стороны, начиная от разделителя целой и дробной части. При необходимости слева от исходного числа нужно добавить незначащие нули. Если число содержит дробную часть, то справа от нее тоже нужно добавить незначащие нули до заполнения всех тетрад. Затем каждая тетрада заменяется шестнадцатеричной цифрой.

Пример: Преобразовать число 1101110,11 2 в шестнадцатеричную систему счисления.

Объединяем двоичные цифры в тетрады справа налево. Получаем

0110 1110,1100 2 = 6E,C 16 .

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

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

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

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

0 8 000 2
1 8 001 2
2 8 010 2
3 8 011 2
4 8 100 2
5 8 101 2
6 8 110 2
7 8 111 2

Например, число 1001011101010 2 нужно перевести в восьмеричную систему счисления.

  • Сначала разобьем его на триады - отрезки по три цифры.

1 001 011 101 010 2

  • Так как ровно по три цифры не получилось, добавим слева два нуля. Число от этого не изменится.

001 001 011 101 010 2

  • А теперь заменяем каждый отрезок его восьмеричным аналогом, сверяясь с таблицей.

Получили число 1132 8 .

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

В этом случае такой упрощенный способ не пройдет. Рассмотрим для примера число 1762 10 , которое нужно перевести в восьмеричный вид.

  1. Делим с остатком 1762 на 8. Получается 220 и 2 в остатке. 220 больше 8, поэтому продолжаем.
  2. Делим с остатком 220 на 8. Получается 27 и 4 в остатке. 27 больше 8, поэтому продолжаем.
  3. Делим с остатком 27 на 8. Получается 3 и 3 в остатке. 3 меньше 8, деление окончено.

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

Последний остаток равен 3. Частное на 3 этапе равно 3. Частное на 2 этапе равно 4. Частное на 1 этапе равно 2. Получаем число 3342 8 , которое и является правильным ответом.

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

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

Перевод чисел между системами счисления, основания которых являются степенями числа 2 (q = 2 n), может производиться по более простым алгоритмам. Такие алгоритмы могут применяться для перевода чисел между двоичной (q = 2 1), восьмеричной (q = 2 3) и шестнадцатеричной (q = 2 4) системами счисления.

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

2 = 2 i . Так как 2 = 2 1 , то i = 1 бит.

Каждый разряд двоичного числа содержит 1 бит информации.

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

8 = 2 i . Так как 8 = 2 3 , то i = 3 бита.

Каждый разряд восьмеричного числа содержит 3 бита информации.

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

Переведем таким способом двоичное число 101001 2 в восьмеричное:

101 001 2 => 1 × 2 2 + 0 × 2 1 + 1 × 2 0 0 × 2 2 + 0 × 2 1 + 1 × 2 0 => 51 8 .

Для упрощения перевода можно заранее подготовить таблицу преобразования двоичных триад (групп по 3 цифры) в восьмеричные цифры:

Двоичные триады 000 001 010 011 100 101 110 111
Восьмеричные цифры 0 1 2 3 4 5 6 7

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

Например, преобразуем дробное двоичное число А 2 = 0,110101 2 в восьмеричную систему счисления:

Двоичные триады 110 101
Восьмеричные цифры 6 5

Получаем: А 8 = 0,65 8 .

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

16 = 2 i . Так как 16 = 2 4 , то i = 4 бита.

Каждый разряд шестнадцатеричного числа содержит 4 бита информации.

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

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

Переведем целое двоичное число А 2 = 101001 2 в шестнадцатеричное:

Получаем: А 16 = 0,D4 16 .

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

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

Например, преобразуем дробное восьмеричное число А 8 = 0,47 8 в двоичную систему счисления:

В результате имеем: А 2 = 10101011 2

3адания

1.16. Составить таблицу соответствия двоичных тетрад и шестнадцатеричных цифр.

1.17. Перевести в восьмеричную и шестнадцатеричную системы счисления следующие целые числа: 1111 2 , 1010101 2 .

1.18. Перевести в восьмеричную и шестнадцатеричную системы счисления следующие дробные числа: 0,01111 2 , 0,10101011 2 .

1.19. Перевести в восьмеричную и шестнадцатеричную системы счисления следующие числа: 11,01 2 , 110,101 2 .

1.20. Перевести в двоичную систему счисления следующие числа: 46,27 8 , ЕF,12 16 .

1.21. Сравнить числа, выраженные в различных системах счисления: 1101 2 и D 16 ; 0,11111 2 и 0,22 8 ; 35,63 8 и 16,С 16 .



Загрузка...