двоичная, восьмеричная, шестнадцатеричная — урок. Информатика, 8 класс.
Для кодирования информации в компьютере вместо привычной десятичной системы счисления используется двоичная система счисления.
Двоичной системой счисления люди начали пользоваться очень давно. Древние племена Австралии и островов Полинезии использовали эту систему в быту. Так, полинезийцы передавали необходимую информацию, выполняя два вида ударов по барабану: звонкий и глухой. Это было примитивное представление двоичной системы счисления.
Двоичной системой счисления называется позиционная система счисления с основанием \(2\).
Алфавит: \(0\) и \(1\).
Для обозначения системы счисления, в которой представляется число, используют нижний индекс, указывающий основание системы. Например, 110112 — число в двоичной системе счисления.
Цифры в двоичном числе являются коэффициентами его представления в виде суммы степеней с основанием \(2\), например:
1012=1 ·22+0 ·21+1 ·20.
Выполнив операции умножения и сложения, получим число в десятичной системе счисления:
1012=4+0+1=5.
Для перевода целого десятичного числа в двоичную систему счисления нужно последовательно выполнять деление данного числа и получаемых целых частных на \(2\) до тех пор, пока не получим частное, равное нулю. Исходное число в двоичной системе счисления составляется последовательной записью полученных остатков, начиная с последнего.
Пример:
Переведём десятичное число \(13\) в двоичную систему счисления. Рассмотренную выше последовательность действий (алгоритм перевода) можно изобразить так:
Получили 1310=11012.
Пример:
Если десятичное число достаточно большое, то более удобен следующий способ записи рассмотренного выше алгоритма:
\(224\) | \(112\) | \(56\) | \(28\) | \(14\) | \(7\) | \(3\) | \(1\) |
\(0\) | \(0\) | \(0\) | \(0\) | \(0\) | \(1\) | \(1\) | \(1\) |
22410=111000002.
Восьмеричной системой счисления называется позиционная система счисления с основанием \(8\).
Алфавит: \(0\), \(1\), \(2\), \(3\), \(4\), \(5\), \(6\), \(7\).
Для перевода целого восьмеричного числа в десятичную систему счисления нужно перейти к его развёрнутой записи и вычислить значение получившегося выражения.
Для перевода целого десятичного числа в восьмеричную систему счисления следует последовательно выполнять деление данного числа и получаемых целых частных на 8 до тех пор, пока не получим частное, равное нулю. Исходное число в восьмеричной системе счисления составляется последовательной записью полученных остатков, начиная с последнего.
Пример:
Переведём восьмеричное число 154368 в десятичную систему счисления.
154368=1 ·84+5 ·83+4 ·82+3 ·81+6 ·80=694210
Пример:
Переведём десятичное число \(94\) в восьмеричную систему счисления.
9410=1368
Шестнадцатеричной системой счисления называется позиционная система счисления с основанием \(16\).
Алфавит: \(0\), \(1\), \(2\), \(3\), \(4\), \(5\), \(6\), \(7\), \(8\), \(9\), A, B, C, D, E, F. Буквы A, B, C, D, E, F имеют значения 1010, 1110, 1210, 1310, 1410, 1510.
Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа.
Для перевода целого десятичного числа в шестнадцатеричную систему счисления следует последовательно выполнять деление данного числа и получаемых целых частных на \(16\) до тех пор, пока не получим частное, равное нулю. Исходное число в системе счисления составляется последовательной записью полученных остатков, начиная с последнего.
Пример:
Переведём шестнадцатеричное число \(2\)\(A7\) в десятичное. В соответствии с вышеуказанными правилом представим его в виде суммы степеней с основанием \(16\):
2A716=2 ·162+10 ·161+7 ·160=512+160+7=679.
Пример:
Переведём десятичное число \(158\) в шестнадцатеричную систему счисления.
15810=9E16.
Для перевода числа из любой позиционной системы счисления в десятичную необходима использовать развернутую формулу числа, заменяя, если это необходимо, буквенные обозначения соответствующими цифрами.
Для перевода целых чисел десятичной системы счисления в число любой системы счисления последовательно выполняют деление нацело на основание системы счисления, пока не получат нуль. Числа, которые возникают как остаток от деления на основание системы счисление, представляют собой последовательную запись разрядов числа в выбранной системе счисления от младшего разряда к старшему. Поэтому для записи самого числа остатки от деления записывают в обратном порядке.
таблица и алфавит, история, применение в информатике
Восьмеричная система счисления — позиционная целочисленная система счисления с основанием 8. Является одной из самых популярных в информатике, наряду с двоичной, десятичной и шестнадцатеричной.
Немного истории
Возникновение восьмеричной системы счисления связывают с техникой счета на пальцах. Однако, если классический счет на пальцах, подразумевает задействование всех десяти, то эта техника использует не пальцы, а промежутки между ними, которых — 8.
Основание и алфавит
Восьмеричная система является традиционной системой счисления с основанием 8. Алфавит состоит их цифр от 0 до 7.
Развернутая форма записи числа будет выглядеть следующим образом:
an-1an-2…a1a0 = an-1 ∙ 8n-1 + an-2 ∙ 8n-2 + ∙∙∙ + a 0 ∙ 80
Например:
3678=3 ∙ 82 + 6 ∙ 81 + 7 ∙ 80 = 3 ∙ 64 + 6 ∙ 8 + 7 ∙ 1 = 192 + 48 + 7 = 24710
Применение восьмеричной системы счисления
Многие знают, что компьютеры используют двоичную систему счисления. Однако простому человеку использовать её не удобно, из-за больших вычислений и переводов. В этом случае, гораздо удобнее воспользоваться более емкими системами, такими как восьмеричная или шестнадцатеричная. Восьмеричная очень схожа с десятичной, за исключение двух цифр в алфавите (8,9). Благодаря этому – легка в восприятии. С её помощью можно легко переводить числа с одной системы счисления в другую и совершать арифметические действия.
Практическое применение восьмеричная система находила в программировании, однако с развитием компьютерных технологий, практически полностью уступила — шестнадцатеричной. На сегодняшний день, частичное использование можно встретить в Linux-системах.
Таблица десятичных чисел в восьмеричной системе
Десятичное число | Восьмеричное число |
---|---|
0 | 0 |
1 | 1 |
2 | 2 |
3 | 3 |
4 | 4 |
5 | 5 |
6 | 6 |
7 | 7 |
8 | 10 |
9 | 11 |
10 | 12 |
11 | 13 |
12 | 14 |
13 | 15 |
14 | 16 |
15 | 17 |
16 | 20 |
17 | 21 |
18 | 22 |
19 | 23 |
20 | 24 |
Таблица восьмеричных чисел в двоичной системе
Восьмеричное число | Двоичное число |
---|---|
0 | 000 |
1 | 001 |
2 | 010 |
3 | 011 |
4 | 100 |
5 | 101 |
6 | 110 |
7 | 111 |
Оцените материал:
Загрузка…Поделиться с друзьями:
Восьмеричная система счисления
☰
При описании двоичной системы счисления было упомянуто, почему современное «железо» понимает только двоичную систему. Однако человеку трудно воспринимать длинные записи нулей и единиц, а переводить числа из двоичной в десятичную систему и обратно трудоемко.
Поэтому в программировании иногда используют другие системы счисления – восьмеричную и шестнадцатеричную. Поскольку 8 и 16 являются степенями двойки,
8 = 23, 16 = 24
преобразование двоичного числа в эти системы, также как обратная операция, выполняются просто.
В восьмеричной системе счисления используется восемь знаков-цифр (от 0 до 7). Каждой цифре соответствует число из трех цифр в двоичной системе счисления:
000 – 0 001 – 1 010 – 2 011 – 3 100 – 4 101 – 5 110 – 6 111 – 7
Для преобразования двоичного числа в восьмеричное надо разбить его на тройки цифр и заменить каждую тройку соответствующей ей одной цифрой из восьмеричной системы счисления. Разбивать двоичное число на тройки следует с конца, а вместо недостающих цифр в начале можно записать нули.
1011101 = 1 011 101 = 001 011 101 = 1 3 5 = 135
В примере число 1011101 в двоичной системе приводится к числу 135 в восьмеричной системе счисления.
10111012 = 1358
Обратный перевод, когда восьмеричное число переводится в двоичное, выполняется аналогично. Только здесь на место восьмеричных цифр подставляются двоичные числа, состоящие из трех цифр.
135 = 001 011 101
Как перевести восьмеричное число в десятичное? Здесь действует тот же алгоритм, как при преобразовании двоичного числа в десятичное. Вспомним его:
11012 = 1 * 23 + 1 * 22 + 0 * 21 + 1 * 20 = 8 + 4 + 0 + 1 = 1310
Однако в случае восьмеричного числа за основание степени берется десятичное число 8:
1358 = 1 * 82 + 3 * 81 + 5 * 80 = 64 + 24 + 5 = 9310
Преобразование десятичного числа в восьмеричное также похоже на перевод в двоичное, за исключением того, что делить надо на 8:
93 / 8 = 11, остаток 5 11 / 8 = 1, остаток 3 1 / 8 = 0, остаток 1
Собираем остатки с конца и получаем число 135 в восьмеричной системе счисления.
Иллюстрированный самоучитель по цифровой графике › Системы счисления › Восьмеричная система счисления [страница — 41] | Самоучители по графическим программам
Восьмеричная система счисления
Если мы обращаемся к восьмеричной системе счисления, то это означает, что можно использовать гораздо больше цифр, чем это принято в двоичной, но меньше, чем в десятичной, а именно можно оперировать восемью цифрами: 0, 1, 2, 3, 4, 5, 6, 7 – и не более.
Логика конвертирования десятичных чисел в восьмеричные (кодирование в восьмеричную систему счисления) совершенно идентична приведенной выше.
Более подробная информация – в разд. «Запись целых чисел в двоичной системе счисления» данной главы.
Действительно, в определенный момент цифры заканчиваются (наступает «кризис переходного периода»).
Десятичное число «8» становится восьмеричным числом «10» («восьмеричной десяткой»). Число «9» будет восьмеричным числом «11», число «10» – восьмеричным числом «12». И так далее до десятичного числа «15», которое в восьмеричном виде равно числу «17». А дальше?
Цифры снова кончились. Как будет представлено десятичное число «16» в восьмеричной системе счисления?
178 + 1 =…,
Но сумма «78 + 1″ равняется «10» в восьмеричной системе счисления, а, следовательно, восьмеричный «десяток» необходимо складывать с «десятком», уже имеющимся, т. е. получается сумма, присутствующая в восьмеричной системе: «1 + 1 = 2». В результате получается, что:
178 + 1 = 208.
Дальше – восьмеричное число «21» и т. п., вплоть до восьмеричного числа «77». И только после этого будет восьмеричная «сотня».
Представим эту информацию в виде таблицы (табл. 4.4).
Таблица 4.4. Соответствие десятичных и восьмеричных чисел.
Десятичные числа | Восьмеричные числа | Десятичные числа | Восьмеричные числа |
---|---|---|---|
0-7 | 0-7 | 25-63 | 31-77 |
8 | 10 | 64 | 100 |
9-15 | 11-17 | 128 | 200 |
16 | 20 | 256 | 400 |
17-23 | 21-27 | 512 | 1000 |
24 | 30 | 1024 | 2000 |
Но даже такие числа все-таки мало экономны, по крайней мере, их разрядность не уступает десятичной системе, поэтому в компьютерных технологиях применяется еще одна система счисления, которая называется шестнадцатеричной.
сайт школы №127 — системы счисления_4
системы счисления_4
Системы счисления.
Системы счисления с основанием 2n
Удобные для работы компьютера двоичные числа неудобны для человека в силу большой длины (большого количества цифр). Во-первых, длинные числа трудны для восприятия, во-вторых, они занимают слишком много места при выводе.
Пример (одно и тоже число в четырех системах счисления)
1999810 | 111110011102 | 37168 | 7CE16 |
Видно, что наиболее короткую запись имеет шестнадцатеричное число (3 цифры вместо 11 у двоичного). Поэтому в настоящее время помимо двоичной системы счисления в компьютерах используют и шестнадцатиричную. Кроме того, в некоторых случаях применяется и восьмеричная. Выбор именно этих систем счисления основан на очень простом переводе двоичных чисел в шестнадцатеричные и восьмеричные и обратно.
Для решения задач нам поможет таблица чисел
систем счисления с основанием 10, 2, 8 и 16.
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 | 8 | |
9 | 1001 | 9 | |
10 | 1010 | A | |
11 | 1011 | B | |
12 | 1100 | C | |
13 | 1101 | D | |
14 | 1110 | E | |
15 | 1111 | F |
ТРИАДА — группа из трех разрядов (нулей и единиц). Из триад можно составить восемь различных двоичных чисел (23=8)
ТЕТРАДА — группа из четырех разрядов (нулей и единиц). Из тетрад можно составить шестнадцать различных двоичных чисел (24=16)
Алгоритм перевода чисел из двоичной системы счисления в восьмеричную
N2 → N8
|
Алгоритм перевода чисел из двоичной системы счисления в шестнадцатеричную
N2 → N16
| |
Перевод из восьмеричной системы счисления в двоичнуюN16 → N2 | |
Если в двоичном числе меньше трех цифр, то его слева дополняем нулями. | |
Перевод из шестнадцатеричной системы счисления в двоичнуюN8 → N2 | |
Если в двоичном числе меньше четырех цифр, то его слева дополняем нулями. |
Косвенные методы перевода
(через промежуточную систему счисления)
N8 → N2 → N16 | N16 → N2 → N8 |
<<<Предыдущая | Следующая>>> |
Позиционная целочисленная система счисления с основанием 8. Для представления чисел в ней используются цифры 0 до 7. Восьмеричная система часто используется в областях, связанных с цифровыми устройствами. Характеризуется лёгким переводом восьмеричных чисел в двоичные и обратно, путём замены восьмеричных чисел на триплеты двоичных. Ранее широко использовалась в программировании и вообще компьютерной документации, однако в настоящее время почти полностью вытеснена шестнадцатеричной. (шестнадцатеричные числа) — позиционная система счисления по целочисленному основанию 16. Обычно в качестве шестнадцатеричных цифр используются десятичные цифры от 0 до 9 и латинские буквы от A до F для обозначения цифр от 10 10 до 15 10 , то есть (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F). · Для преобразования из двоичной системы в десятичную используют следующую таблицу степеней основания 2: Точно так же, начиная с двоичной точки, двигайтесь справа налево. Под каждой двоичной единицей напишите её эквивалент в строчке ниже. Сложите получившиеся десятичные числа.Таким образом, двоичное число 110001 равнозначно десятичному 49. Преобразование методом Горнера Для того, чтобы преобразовывать числа из двоичной в десятичную систему данным методом, надо суммировать цифры слева направо, умножая ранее полученный результат на основу системы (в данном случае 2). Например, двоичное число 1011011 переводится в десятичную систему так: 0*2+1=1 >> 1*2+0=2 >> 2*2+1=5 >> 5*2+1=11 >> 11*2+0=22 >> 22*2+1=45 >> 45*2+1=91 То есть в десятичной системе это число будет записано как 91. Или число 101111 переводится в десятичную систему так: 0*2+1=1 >> 1*2+0=2 >> 2*2+1=5 >> 5*2+1=11 >> 11*2+1=23 >> 23*2+1=47 То есть в десятичной системе это число будет записано как 47. Преобразование десятичных чисел в двоичные Допустим, нам нужно перевести число 19 в двоичное. Вы можете воспользоваться следующей процедурой:
Итак, мы делим каждое частное на 2 и записываем остаток в конец двоичной записи. Продолжаем деление до тех пор, пока в делимом не будет 0. В результате получаем число 19 в двоичной записи: 10011. Преобразование дробных двоичных чисел в десятичные Нужно перевести число 1011010.101 в десятичную систему. Запишем это число следующим образом: Преобразование дробных десятичных чисел в двоичные Перевод дробного числа из десятичной системы счисления в двоичную осуществляется по следующему алгоритму:
Пример: Требуется перевести дробное десятичное число 206,116 в дробное двоичное число. Перевод целой части дает 206 10 =11001110 2 по ранее описанным алгоритмам; дробную часть умножаем на основание 2, занося целые части произведения в разряды после запятой искомого дробного двоичного числа:
Получим: 206,116 10 =11001110,0001110110 2 · Преобразование восьмеричных чисел в десятичные. Алгоритм перевода чисел из восьмеричной в десятичную систему счисления аналогичен уже рассматривавшему мною в разделе: Преобразование двоичных чисел в десятичные. Для перевода восьмеричного числа в двоичное необходимо заменить каждую цифру восьмеричного числа на триплет двоичных цифр. Пример: 2541 8 = 010 101 100 001 = 010101100001 2 Существует таблица перевода восьмеричных чисел в двоичные · Преобразование шестнадцатеричных чисел в десятичные. Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа. Например, требуется перевести шестнадцатеричное число 5A3 в десятичное. В этом числе 3 цифры. В соответствии с вышеуказанным правилом представим его в виде суммы степеней с основанием 16: 5A3 16 = 3·16 0 +10·16 1 +5·16І= 3·1+10·16+5·256= 3+160+1280= 1443 10 Для перевода многозначного двоичного числа в шестнадцатеричную систему нужно разбить его на тетрады справа налево и заменить каждую тетраду соответствующей шестнадцатеричной цифрой. Например: 010110100011 2 = 0101 1010 0011 = 5A3 16 Таблица перевода чисел |
Десятичная | ||||||||||||||||||||
Восьмеричная | ||||||||||||||||||||
Шестнадцатеричная | ||||||||||||||||||||
Десятичная | ||||||||||||||||||||
Восьмеричная | ||||||||||||||||||||
Шестнадцатеричная |
Как видно из нее, чем больше основание системы счисления, тем меньше код числа. Например, число 14 в десятичной и восьмеричной системе счисления записывается с помощью двух знаков, а в шестнадцатеричной – с помощью одного.
А сейчас мы с Вами научимся переводить двоичные числа в восьмеричные и шестнадцатеричные. Например, переведем число (1101011) 2 в восьмеричное.
Для того чтобы перевести двоичное число в восьмеричное, нужно разбить его справа налево на группы по три цифры в каждой, а затем каждой группе в соответствие поставить восьмеричное число.
Разобьем число (1101011) 2 на группы по три цифры: 1, 101, 011. И поставим в соответствие восьмеричные числа, получим: 1, 5, 3. Т. е. получили число (153) 8 .
Чтобы выполнить обратное преобразование, надо в соответствие каждой цифре восьмеричного числа записать группу из трех двоичных цифр.
Итак, чтобы перевести число (153) 8 в двоичную систему счисления, записываем 001, 101, 011. Опускаем первые ведущие нули и получаем число (1101011) 2 .
Для шестнадцатеричной системы преобразование выполняется аналогично, только число разбивается справа налево на группы не по три, а по четыре двоичные цифры.
Переведем число (1101011) 2 в шестнадцатеричную систему счисления: 110, 1011. Теперь в соответствие каждой четверке цифр записываем шестнадцатеричную цифру: 6, В. Т. е. получили число (6B) 16 .
А теперь переведем полученное нами число (6В) 16 в двоичную систему счисления. Вместо каждой цифры шестнадцатеричного числа записываем четверку цифр соответствующего двоичного числа: 0110, 1011. Опускаем ведущие нули и получаем (1101011) 2 .
Теперь, если Вы хорошо усвоили материал, можете закрепить его, выполнив несложные задания. Для этого перейдите в режим тренажера. Если хотите позаниматься позже – закройте текущее окно.
Упражнение №1. Переведите в восьмеричную систему счисления число (101101) 2 .
А) (55) 8; (+)
Б) (56) 8;
В) (215) 8 ;
Г) (216) 8.
Упражнение №2. Переведите в двоичную систему счисления число (162) 8 .
А) (110011) 2;
Б) (1110010) 2; (+)
В) (110111) 2;
Г) (110101) 2.
Упражнение №3. Переведите в шестнадцатеричную систему счисления число (1010111001001101) 2 .
А) (AE4D) 16; (+)
Б) (AED) 16;
В) (A4ED) 16;
Г) (DEA) 16.
Упражнение №4. Переведите в двоичную систему счисления число (5АВ) 16 .
А) (101101011) 2 ;
Б) (1011101011) 2;
В) (10110101011) 2; (+)
Г) (10110101001) 2.
Упражнение №5. Найдите значение выражения (15) 8 + (А2) 16 , записав результат в виде двоичного числа.
А) (11101111) 2;
Б) (10111111) 2;
В) (10101111) 2; (+)
Г) (10101001) 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. (исключающее ИЛИ), << (сдвиг влево), >> (сдвиг вправо), ~ (поразрядное дополнение до единицы). Рассмотрим на примерах, как они работают, но перед этим уделим внимание выводу в языке C чисел в отличных от десятичной системах счисления. В С можно присваивать целочисленные значения в десятичной, восьмеричной и шестнадцатеричной системах счисления. Для того, чтобы присвоить переменной число в восьмеричной системе счисления, перед ним надо написать 0 (ноль), в шестнадцатеричной — 0x (ноль и икс), например: int a, b; a = 077; // восьмеричное число b = 0x1F; // шестнадцатеричное число Любые целые числа можно выводить на экран в десятичном, восьмеричном и шестнадцатеричном представлении. Пример кода для вывода определенных ранее двух переменных в различных системаъ счисления: printf("%d %o %x %X\n", a,a,a,a); printf("%d %o %x %X\n", b,b,b,b); В результате на экране вы увидите: 63 77 3f 3F 31 37 1f 1F Восьмеричные и шестнадцатеричные числа используются из-за удобства при работе с двоичной системой счисления. Каждая цифра восьмеричного числа может быть заменена тремя цифрами двоичного. И каждая цифра шестнадцатеричного числа легко заменяет четыре разряда двоичного числа. Вот таблица соответствия цифр восьмеричной системы счисления числам двоичной системы:
Теперь допустим, что у нас есть восьмеричное число 037. По таблице легко понять, что в двоичном выражении оно будет выглядеть как 011 111.
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
N | … | 100000 | 10000 | 1000 | 100 | 10 | 1 |
В приведенном ниже примере десятичное число 67049
разбивается на десятичные степени, умноженные на 10 с номерами от 0
до 9
. Это просто, чтобы показать, что любое число в десятичной системе может быть разложено на сумму членов, составленных из произведения степени 10 и символов 0… 9
.0 \\
& = 60000 & + 7000 & + 0 & + 40 & + 9
\ end {split} \ end {формула *} \]
Тот же метод будет применен к двоичному файлу, восьмеричная и шестнадцатеричная системы, являющиеся по сути способом преобразования числа из десятичной системы в другой формат (основание).
Мы можем иметь в виду следующие характеристики системы десятичных чисел:
- он использует 10 символов
- может быть разложен на множители, содержащие степени 10
- это наиболее распространенная система представления чисел
двоичная (основание 2)
Давайте теперь перейдем на сторону компьютерных фанатов.
Другая система представления чисел — это двоичная . Как следует из названия и по аналогии с десятичной системой, мы можем сказать, что двоичная система использует только 2 символа / символа:
В двоичном представлении мы используем только 0
(нули) и 1
(единицы) для представления числа.
Двоичная система используется везде, где требуется хранить информацию в электронном формате. Все компьютеры, которые вы знаете, интеллектуальные устройства, все, что связано с электроникой и микроконтроллерами, используют двоичную систему.
В электронике (цифровой) все операции выполняются с использованием двух уровней напряжения: высокого и низкого. Каждому уровню напряжения присваивается значение / символ: HIGH для 1 и LOW для 0. Для микроконтроллера, на который подается напряжение + 5 В, значение 1
(высокое) будет представлено как +5 В, а значение 0
(низкое). ) на 0 В.
Примерно мы можем сказать, что используется двоичная система, потому что она может быть переведена в электронный сигнал.
Все десятичные числа, которые мы можем придумать, можно представить в виде двоичных символов.0 \\
& = 128 & + 0 & + 0 & + 16 & + 0 & + 4 & + 0 & + 1
\ end {split} \ end {формула *} \]
Как вы можете см. десятичное число 149
представлено в двоичной системе серией нулей и единиц ( 10010101
). Обычно, чтобы различать десятичное и двоичное число, мы должны указать основание, на которое мы ссылаемся. Основание описывается как нижний индекс после последнего символа числа
Пример:
Десятичное (основание 10) | Двоичное (основание 2) |
\ [149_ {10} \] | \ [10010101_ {2} \] |
Указав основание числа, мы исключаем вероятность путаницы, потому что одно и то же представление (например,грамм. 0 \\
& = 65535 & + 0 & + 1024 & + 448 & + 40 & + 1
\ end {split} \ end {формула *} \]
Шестнадцатеричное (основание 16)
Шестнадцатеричная система представления чисел использует 16 символов / знаков для определения чисел.Он используется в информатике в основном потому, что может представлять большие десятичные числа с меньшим количеством символов.
Шестнадцатеричные символы | |||||||||||||||
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |
По сравнению с десятичной системой, здесь также используются цифровые символы от 0 до 9.0 \\
& = 65536 & + 0 & + 1280 & + 224 & + 9
\ end {split} \ end {формула *} \]
Представление десятичного числа 67049
в шестнадцатеричном формате это 105E9
. Как и в случае с двоичной системой, обычной практикой является использование префикса « 0x
» для отличия от десятичной системы счисления. Пример: 0x105E9
.
Вкратце характеристики системы представления шестнадцатеричных чисел:
- в ней используются 16 символов
- можно разложить на множители, содержащие степень 16
- она используется в компьютерах, микроконтроллерах
В таблице ниже приведены характеристики вышеупомянутые системы представления чисел.
Система | Количество символов | Символов | Префикс | Пример |
Десятичный | 10 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 | Нет | 147 |
Двоичный | 2 | 0, 1 | 0b | 0b10010011 |
Шестнадцатеричный | 16 | 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F | 0x | 0x93 |
Как восьмеричная, так и шестнадцатеричная системы представления чисел связаны с компьютерной системой , в основном с процессорами и микроконтроллерами.Например, если микропроцессор использует 8-битные данные, тогда восьмеричная система подходит для интерфейса данных. Если микропроцессор использует 16 бит, то для представления данных подходит шестнадцатеричная система.
Системы счисления (двоичная, восьмеричная, десятичная, шестнадцатеричная)
Прежде чем мы сможем объяснить некоторые конкретные системы счисления, нам нужно знать, что такое система счисления. Проще говоря, система счисления — это способ представления чисел.
Мы можем классифицировать системы счисления по типу нотации в зависимости от того, используют ли они позиционную нотацию (также известную как нотация с числовыми значениями), и произвести дальнейшую категоризацию по основанию или основанию.
1. Непозиционная система счисления
Для объяснения непозиционной системы счисления мы возьмем в качестве примера римские цифры. В таблице ниже вы можете найти десятичные значения для основных символов римской системы счисления.
Вы можете спросить, есть ли какой-то узор для формирования всех остальных символов? Ответ положительный.
- Когда символ с меньшим значением помещается через после символа, имеющего такое же или большее значение, значения складываются.Примеры приведены в таблице ниже.
- Когда символ с меньшим значением помещается с до символа, имеющего большее значение, меньшее значение вычитается из большего. Примеры приведены в таблице ниже.
2. Позиционная система счисления
Позиционная система счисления позволяет расширить исходный набор символов, чтобы их можно было использовать для представления любого произвольно большого (или маленького) значения.В разных системах число может быть представлено по-разному.
Например, два числа $ (2A) _ {16} $ и $ (52) _ {8} $ оба относятся к одному и тому же количеству, $ (42) _ {10} $.
Система счисления, которую мы используем каждый день, называется десятичной системой счисления или системой счисления с основанием десять. Как видно из названия системы счисления, основание определяет всю систему.
Десятичная система счисления имеет основание 10, потому что мы работаем с 10 цифрами (0, 1, 2, 3, 4, 5, 6, 7, 8, 9), и любое другое большее число может быть составлено из этих 10 цифр.{0}
долларов США$ = 3 \ cdot 100 + 4 \ cdot 10 + 2 \ cdot 1 $
$ = 300 + 40 + 2 $
В этом уроке мы не будем подробно объяснять десятичную систему, так как на странице, посвященной ей, есть много уроков.
Помимо десятичной системы счисления, существует множество других систем счисления. Мы упомянем только три из них, так как это наиболее часто используемые системы счисления после десятичной. Это: двоичная система счисления, восьмеричная система счисления и шестнадцатеричная система счисления. Мы дадим краткое объяснение каждой из них и узнаем, как преобразовывать числа из одной системы в другую.
2.1. Двоичная система счисления
Двоичная система счисления содержит две уникальные цифры (0 и 1). Таким образом, эта система является системой счисления с основанием 2. Относительные величины символов равны 0 <1. Символы в этой системе часто называются двоичными цифрами или просто битами. Двоичная система счисления - это позиционная система счисления. Позже мы увидим, что, например, $ 1010_ {2} \ neq 1100_ {2} $.
2.2. Восьмеричная система счисления
Восьмеричная система счисления содержит 8 уникальных цифр (0, 1, 2, 3, 4, 5, 6, 7).Таким образом, эта система является системой счисления с основанием 8. Относительные величины символов: 0 <1 <2 <3 <4 <5 <6 <7. Восьмеричная система счисления - еще один пример позиционной системы счисления.
2.3. Шестнадцатеричная система счисления
Шестнадцатеричная система счисления содержит 16 уникальных цифр. Поскольку в десятичной системе всего 10 арабских цифр, нам нужно использовать другие символы для представления оставшихся 6 цифр. Мы используем
буквенных знаков A – F, чтобы расширить систему до 16 цифр.16 цифр в шестнадцатеричной системе: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E и F. Относительные величины символов равны
0. <1 <2 <3 <4 <5 <6 <7 <8 <9 Шестнадцатеричная система счисления также является позиционной системой счисления.
3. Базовое преобразование
Каждая позиция цифры в числе с основанием b представляет степень $ b $. Итак, когда мы пишем число с основанием b, каждая цифра с основанием b умножается на соответствующую степень $ b $ в зависимости от позиции в числе.
3.1. Преобразование в десятичное число
Преобразовать число из любой системы счисления в десятичную довольно просто. Мы знаем, что значение каждой цифры в числе основано на индивидуальном значении цифры и позиции цифры. Мы узнали это, когда узнали о десятичных числах. Используя это правило, мы можем преобразовать число из любой системы счисления в десятичное число.
Давайте посмотрим на общий пример:
Представьте, что у нас есть число $ d_ {2} d_ {1} d_ {0}.{-2} = 3 \ cdot 8 + 4 \ cdot 1 + 1 \ cdot \ displaystyle {\ frac {1} {8}} + 5 \ cdot \ displaystyle {\ frac {1} {64}} = 28.203125 $
3.2. Преобразование из десятичного числа в любое другое основание
Мы можем преобразовать десятичное число в любое другое, используя всего несколько простых шагов:
- Разделите десятичное число, которое нужно преобразовать, на значение нового основания.
- Запишите остаток в сторону
- Разделите частное от предыдущего деления на новое основание.
- Запишите остаток в сторону
- Повторяйте шаги 3 и 4, пока частное на шаге 3 не станет равным нулю.
Тогда требуемое число состоит из остатков, записываемых снизу вверх, слева направо.
Пример 2. Преобразует 25 в двоичное число.
Согласно правилу преобразования десятичных чисел в любое другое основание, необходимое число — $ 11001_ {2} $.
Пример 3. Преобразует 2489 в шестнадцатеричное число.
Помните, что эквивалент числа 11 в шестнадцатеричной системе счисления — буква B.
Согласно правилу преобразования десятичных чисел в любое другое основание, необходимое число — $ 9B9_ {16} $.
3.3. Эквивалентность различных систем счисления
4. Быстрые клавиши для переключения между основанием 2 и основанием 8 и между основанием 2 и основанием 16
Мы узнали, что можно преобразовать число из любого основания в число из любого основания, предварительно преобразовав его в десятичное. Например, если мы хотим преобразовать число с основанием 3 в число с основанием 7, сначала нужно преобразовать число с основанием 3 в десятичное, а затем преобразовать это десятичное число в число с основанием 7.
Мы можем использовать ту же процедуру для преобразования двоичного числа в восьмеричное или шестнадцатеричное, но есть несколько полезных сокращений, которые упростят этот процесс. Давайте посмотрим на следующий пример:
Пример 4. Преобразует $ 100100010101111_ {2} $ в шестнадцатеричное число.
Чтобы преобразовать двоичное число в шестнадцатеричное, мы могли бы просто разбить двоичное число на группы по 4 цифры (начиная справа и добавляя ведущие нули, если цифры заканчиваются), а затем переинтерпретировать эти группы по 4 как перечисленные шестнадцатеричные значения. в таблице выше.При этом у нас есть:
$ 100100010101111_ {2} = 0100 1000 1010 1111 $
$ 0100 = 4 $, 1000 $ = 8 $, 1010 $ = A $, 1111 $ =
F $$ 100100010101111_ {2} = 48AF_ {16}
$Аналогично этому, чтобы преобразовать двоичное число в восьмеричное, мы могли бы просто разбить двоичное число на группы по 3 цифры, а остальная часть процедуры такая же, как преобразование двоичного числа в шестнадцатеричное число. Давайте превратим то же двоичное число в восьмеричное:
$ 100100010101111_ {2} = 100 100 010 101 111 $
100 долларов = 4
долларов010 долларов = 2
долларов101 доллар = 5
долларов111 долларов = 7
долларов$ 100100010101111_ {2} = 44257_ {8}
$Обратить процесс еще проще.Предположим, мы хотим преобразовать $ FC7_ {16} $ в двоичную форму. Из таблицы мы можем прочитать двоичные значения для каждой цифры шестнадцатеричного числа:
$ F_ {16} = 1111_ {2} $ C_ {16} = 1100_ {2} $ 7_ {16} = 0111_ {2}
$$ FC7_ {16} = 111111000111_ {2}
$Процесс преобразования восьмеричного числа в двоичную форму такой же.
Преобразование между двоичной, восьмеричной, десятичной и шестнадцатеричной системами счисления, стр. 4
(продолжение статьи на предыдущей странице)
Восьмеричное в двоичное
Преобразование из восьмеричного в двоичное так же просто, как преобразование из двоичного в восьмеричное.Просто найдите каждую восьмеричную цифру, чтобы получить эквивалентную группу из трех двоичных цифр.
Восьмеричное число: | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Двоичный: | 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
Восьмеричный = | 3 | 4 | 5 | |
Двоичный = | 011 | 100 | 101 | = 011100101 двоичный |
Восьмеричный в шестнадцатеричный
При преобразовании из восьмеричного в шестнадцатеричный часто бывает проще сначала преобразовать восьмеричное число в двоичное, а затем из двоичного в шестнадцатеричное.Например, чтобы преобразовать восьмеричное число 345 в шестнадцатеричное:
(из предыдущего примера)
Восьмеричный = | 3 | 4 | 5 | |
Двоичный = | 011 | 100 | 101 | = 011100101 двоичный |
Отбросьте любые ведущие нули или заполните ведущими нулями, чтобы получить группы из четырех двоичных цифр (битов):
Двоичный 011100101 = 1110 0101
Затем найдите группы в таблице, чтобы преобразовать их в шестнадцатеричные цифры.
Двоичный: | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 |
Шестнадцатеричный: | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
Двоичный: | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
Шестнадцатеричный: | 8 | 9 | А | B | С | D | E | F |
Двоичный = | 1110 | 0101 | |
Шестнадцатеричный = | E | 5 | = шестнадцатеричный E5 |
Таким образом, через двухэтапный процесс преобразования, восьмеричное 345 равно двоичный 011100101 равен шестнадцатеричному E5.
Восьмеричное в десятичное
Преобразование восьмеричной системы в десятичную можно выполнить повторным делением.
- Начните десятичный результат с 0.
- Удалите старшую восьмеричную цифру (крайнюю левую) и прибавьте ее к результату.
- Если все восьмеричные цифры были удалены, все готово. Стоп.
- В противном случае умножьте результат на 8.
- Перейдите к шагу 2.
Восьмеричные цифры | Операция | Десятичный результат | Операция | Десятичный результат |
345 | +3 | 3 | × 8 | 24 |
45 | +4 | 28 | × 8 | 224 |
5 | +5 | 229 | сделано. |
Преобразование также можно выполнить обычным математическим способом, показывая каждую цифру в виде возрастающей степени 8.
345 в восьмеричном виде = (3 * 8 2 ) + (4 * 8 1 ) + (5 * 8 0 ) = (3 * 64) + (4 * 8) + (5 * 1) = 229 десятичный
Следующим шагом будет преобразование из шестнадцатеричного …
Двоичные, восьмеричные и шестнадцатеричные | Введение в математику колледжа
В современных вычислениях и цифровой электронике наиболее часто используются десятичные системы счисления (основание 10), двоичные (основание 2), восьмеричные (основание 8) и шестнадцатеричные (основание 16).Если мы конвертируем между двумя основаниями, отличными от десятичной, нам обычно нужно сначала преобразовать число в основание 10, а затем преобразовать это число во второе основание. Однако мы можем легко преобразовать двоичное в восьмеричное и наоборот, а также из двоичного в шестнадцатеричное и наоборот.
Это видео дает общее представление об этих преобразованиях:
Другое описание, это больше похоже на лекцию по математике:
Для дальнейшего пояснения напомним, что числа от 0 до 7 могут быть представлены до трех цифр с основанием два.В восьмерке эти числа представлены одной цифрой.
Основание 2 (двоичное) число | Эквивалент по основанию 10 (десятичный) | База 8 (восьмеричное) число |
---|---|---|
000 | 0 | 0 |
001 | 1 | 1 |
010 | 2 | 2 |
011 | 3 | 3 |
100 | 4 | 4 |
101 | 5 | 5 |
110 | 6 | 6 |
111 | 7 | 7 |
Теперь, когда мы дойдем до числа 8, нам понадобятся четыре цифры в базе 2 и две цифры в базе 8.Фактически, числа от 8 до 63 могут быть представлены двумя цифрами в базе 8. Нам нужны четыре, пять или шесть цифр в базе 2, чтобы представить эти же числа:
База 2 номер | Эквивалент Base 10 | База 8 номер |
---|---|---|
1000 | 8 | 10 = 1 × 8 + 0 × 1 |
1001 | 9 | 11 = 1 × 8 + 1 × 1 |
1010 | 10 | 12 = 1 × 8 + 2 × 1 |
… | … | … |
111100 | 60 | 74 = 7 × 8 + 4 × 1 |
111101 | 61 | 75 = 7 × 8 + 5 × 1 |
111110 | 62 | 76 = 7 × 8 + 6 × 1 |
111111 | 63 | 77 = 7 × 8 + 7 × 1 |
Число 64 в основании 8 представлено как 100 8 = 1 × 8 2 + 0 × 8 1 + 0 × 8 0 = 1 × 64 + 0 × 8 + 0 × 1 .В базе 2 это будет 1000000 2 . Вы видите здесь закономерность? Для одной цифры в базе 8 нам нужно до трех цифр в базе 2. Для двух цифр в базе 8 нам нужно 4, 5 или 6 цифр в базе 2. Для трех цифр в базе 8 нам нужно 7, 8 , или 9 цифр в базе 2. Для каждой дополнительной цифры в базе 8 нам нужно до трех пробелов, чтобы представить ее в базе 2. Вот способ запомнить это: 2 3 = 8, поэтому нам нужно три пробела.
Здесь поможет пара примеров.
- Преобразуем число 6157 8 в основание 2. Мы разделяем каждую цифру в базе 8 на три цифры в базе 2, используя эквивалент из трех цифр в базе 2, поэтому 6 8 = 110 2 , 1 8 = 001 2 и т. Д.
- Преобразуйте число 10111011001010 2 в основание 8. Разделите это число на наборы по три, , начиная с самой правой цифры , затем преобразуйте каждый набор из трех в эквивалент в базе 8.
В шестнадцатеричном формате (с основанием 16) нам нужно до четырех цифр в двоичном формате для представления каждой отдельной цифры.Запомните это, вспомнив, что 2 4 = 16, поэтому нам нужно четыре цифры.
Вы можете распечатать копии этих листов, чтобы облегчить преобразование между двоичным и восьмеричным или шестнадцатеричным числами:
Если вы хотите задать себе вопрос о преобразовании чисел от 0 до 255 в двоичные, восьмеричные и шестнадцатеричные (и между этими основаниями), вот ссылка на представления этих чисел: двоичные, восьмеричные и шестнадцатеричные числа.
Основания чисел: восьмеричные и шестнадцатеричные
Purplemath
восьмеричное
Старая компьютерная система счисления — восьмеричная или восьмеричная.Цифры в восьмеричной математике: 0, 1, 2, 3, 4, 5, 6 и 7. Значение «восемь» записывается как «1 восемь и 0 единиц», или 10 8 .
С технической точки зрения существует очень много различных компьютерных протоколов для восьмеричного числа, но мы будем использовать простую математическую систему.
MathHelp.com
Несколько племен Нового Света использовали систему счисления по основанию 8; они считали, используя восемь промежутков между пальцами, а не сами десять пальцев. Синие туземцы в фильме «Аватар» использовали восьмеричное число, потому что на их руках было всего четыре пальца.
Давайте копаем сразу:
Преобразует 357
10 в соответствующее восьмеричное число.
Я сделаю обычное последовательное деление, на этот раз делю на 8 на каждом шаге:
Как только я добрался до «5» сверху, мне пришлось остановиться, потому что 8 не делится на 5.
Тогда соответствующее восьмеричное число будет 545 8 .
Преобразует 545
8 в соответствующее десятичное число.
Я буду следовать обычной процедуре, перечисляя цифры в одной строке, а затем отсчитывая цифры справа в следующей строке, начиная с нуля:
Затем сделаю обычное сложение и умножение:
5 × 8 2 + 4 × 8 1 + 5 × 8 0
= 5 × 64 + 4 × 8 + 5 × 1
= 320 + 32 + 5
= 357
Тогда соответствующее десятичное число будет 357 10 .
Шестнадцатеричный
Если вы работаете с компьютерным программированием или компьютерной инженерией (или компьютерной графикой, о которой мы поговорим позже), вы столкнетесь с основанием шестнадцати, или шестнадцатеричной, математикой.
Как упоминалось ранее, десятичная математика не имеет одной единственной цифры, представляющей значение «десять». Вместо этого мы используем две цифры, 1 и 0: «10».Но в шестнадцатеричной математике столбцы означают число, кратное шестнадцати! То есть в первом столбце указано, сколько у вас единиц, во втором столбце указано количество шестнадцати, в третьем столбце указано, сколько двести пятьдесят шесть (шестнадцать раз по шестнадцать) и так далее.
В базе десять у нас были цифры от 0 до 9. В базе восемь у нас были цифры от 0 до 7. В базе 4 у нас были цифры от 0 до 3. В любой базовой системе у вас будут цифры от 0 до единицы меньше чем -ваша-база.Это означает, что в шестнадцатеричном формате нам нужны «цифры» от 0 до 15. Для этого нам понадобятся одиночные цифры, обозначающие значения «десять», «одиннадцать», «двенадцать», «тринадцать», «четырнадцать» и «пятнадцать». Но мы этого не делаем. Поэтому вместо этого мы используем буквы. То есть, считая в шестнадцатеричном формате, шестнадцать «цифр» равны:
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
Другими словами, A — это «десять» в «обычных» числах, B — «одиннадцать», C — «двенадцать», D — «тринадцать», E — «четырнадцать» и «F» — пятнадцать.Именно это использование букв для цифр делает шестнадцатеричные числа поначалу такими странными. Но преобразования работают обычным образом.
Преобразует 357
10 в соответствующее шестнадцатеричное число.
Здесь я буду делить несколько раз на 16, отслеживая остатки по ходу дела. (Вы можете использовать для этого бумагу для заметок.)
Считывая цифры, начиная сверху и заканчивая правой стороной, я вижу, что:
Преобразует 165
16 в соответствующее десятичное число.
Перечислите цифры и отсчитайте их справа, начиная с нуля:
Помните, что каждая цифра в шестнадцатеричном числе представляет, сколько копий вам нужно от этой степени шестнадцати, и преобразуйте это число в десятичное:
1 × 16 2 + 6 × 16 1 + 5 × 16 0
= 1 × 256 + 6 × 16 + 5 × 1
= 256 + 96 + 5
= 357
Тогда 165 16 = 357 10 .
Преобразует 63933
10 в соответствующее шестнадцатеричное число.
Я буду делить несколько раз на 16, отслеживая остатки:
Из последовательного деления, приведенного выше, я вижу, что шестнадцатеричное число будет иметь «пятнадцать» в столбце с шестнадцатью квадратами, «девять» в столбце с шестнадцатью квадратами, «одиннадцать» в столбце с шестнадцатью квадратами и « тринадцать дюймов в колонке единиц.Но я не могу записать шестнадцатеричное число как «15», потому что это будет сбивать с толку и неточно. Поэтому я буду использовать буквы для «цифр», которые в противном случае были бы слишком большими, позволяя «F» заменить «пятнадцать», «B» заменить «одиннадцать», а «D» заменить «тринадцать».
Тогда 63933 10 = F9BD 16 .
Преобразует F9BD в десятичную систему счисления.
Я перечислю цифры и отсчитаю их справа, начиная с нуля:
На самом деле, вероятно, будет полезно повторить это, преобразовав буквенные шестнадцатеричные «цифры» в соответствующие им «обычные» десятичные значения:
Теперь сделаю умножение и сложение:
15 × 16 3 + 9 × 16 2 + 11 × 16 1 + 13 × 16 0
= 15 × 4096 + 9 × 256 + 11 × 16 + 13 × 1
= 61440 + 2304 + 176 + 13
= 63933
Как и ожидалось, F9BD 16 = 63933 10 .
Компьютерная графика
Если вы работаете с веб-страницами и графическими программами, вам может быть полезно преобразовать значения RGB (для изображения в графической программе) в шестнадцатеричные значения (для соответствующего цвета фона на веб-странице).
Графические программы работают со значениями RGB (красный-зеленый-синий) для цветов. Каждый из этих компонентов данного цвета имеет значения от 0 до 255.Эти значения могут быть преобразованы в шестнадцатеричные значения от 00 до FF. Если вы перечислите компоненты RGB цвета в виде строки из трех чисел, вы можете получить, скажем, R: 204, G: 51, B: 255, что переводится в светло-пурпурный # CC33FF в кодировке HTML. Обратите внимание, что 204 10 = CC 16 , 51 10 = 33 16 и 255 10 = FF 16 .
Партнер
С другой стороны, если у вас есть код для # 9
, это будет преобразовано в темно-красноватый R: 153, G: 0, B: 51 в вашей графической программе.То есть для преобразования между вашей графической программой и кодировкой веб-страницы используйте шестнадцатеричное число не как одно шестизначное число, а как три двузначных числа, и преобразуйте эти пары цифр в соответствующие значения RGB.Для обсуждения истории «безопасных для Интернета» цветов, в том числе того, почему они включают только шестнадцатеричные эквиваленты 0, 51, 102, 153, 204 и 255, смотрите здесь. Для демонстрации различных цветов текста и фона в HTML посмотрите здесь.
URL: https://www.purplemath.com/modules/numbbase3.htm
.