Что верно для шестнадцатеричной системы счисления
Шестнадцатеричная система счисления
Шаблон:Системы счисления Шестнадцатеричная система счисления (шестнадцатеричные числа) — позиционная система счисления по целочисленному основанию 16.
Обычно в качестве шестнадцатеричных цифр используются десятичные цифры от 0 до 9 и латинские буквы от A до F для обозначения цифр от 1010 до 1510, то есть (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F).
Содержание
Применение
В стандарте Юникода номер символа принято записывать в шестнадцатеричном виде, используя не менее 4 цифр (при необходимости — с ведущими нулями ).
Шестнадцатеричный цвет — запись трёх компонент цвета (R, G и B) в шестнадцатеричном виде.
Способы записи
В математике
В математике основание системы счисления принято указывать в десятичной системе в нижнем индексе. Например, десятичное число 1443 можно записать как 144310 или как 5A316.
В языках программирования
В разных языках программирования для записи шестнадцатеричных чисел используют различный синтаксис:
В электронных калькуляторах
Б3-34 и ему подобные используют «-», «L», «C», «Г», «E» « » (space) на их экране. [источник не указан 3149 дней]
Перевод чисел из одной системы счисления в другую
Перевод чисел из шестнадцатеричной системы в десятичную
Для перевода шестнадцатеричного числа в десятичное необходимо это число представить в виде суммы произведений степеней основания шестнадцатеричной системы счисления на соответствующие цифры в разрядах шестнадцатеричного числа.
Например, требуется перевести шестнадцатеричное число 5A3 в десятичное. В этом числе 3 цифры. В соответствии с вышеуказанным правилом представим его в виде суммы степеней с основанием 16:
5A316 = 3·16 0 +10·16 1 +5·16 2 =
= 3·1+10·16+5·256 = 3+160+1280 = 144310
Перевод чисел из двоичной системы в шестнадцатеричную и наоборот
Для перевода многозначного двоичного числа в шестнадцатеричную систему нужно разбить его на тетрады справа налево и заменить каждую тетраду соответствующей шестнадцатеричной цифрой. Для перевода числа из шестнадцатеричной системы в двоичную нужно заменить каждую его цифру на соответствующую тетраду из нижеприведенной таблицы перевода.
0101101000112 = 0101 1010 0011 = 5A316
Таблица перевода чисел
0hex | = | 0dec | = | 0oct | 0 | 0 | 0 | 0 |
1hex | = | 1dec | = | 1oct | 0 | 0 | 0 | 1 |
2hex | = | 2dec | = | 2oct | 0 | 0 | 1 | 0 |
3hex | = | 3dec | = | 3oct | 0 | 0 | 1 | 1 |
4hex | = | 4dec | = | 4oct | 0 | 1 | 0 | 0 |
5hex | = | 5dec | = | 5oct | 0 | 1 | 0 | 1 |
6hex | = | 6dec | = | 6oct | 0 | 1 | 1 | 0 |
7hex | = | 7dec | = | 7oct | 0 | 1 | 1 | 1 |
8hex | = | 8dec | = | 10oct | 1 | 0 | 0 | 0 |
9hex | = | 9dec | = | 11oct | 1 | 0 | 0 | 1 |
Ahex | = | 10dec | = | 12oct | 1 | 0 | 1 | 0 |
Bhex | = | 11dec | = | 13oct | 1 | 0 | 1 | 1 |
Chex | = | 12dec | = | 14oct | 1 | 1 | 0 | 0 |
Dhex | = | 13dec | = | 15oct | 1 | 1 | 0 | 1 |
Ehex | = | 14dec | = | 16oct | 1 | 1 | 1 | 0 |
Fhex | = | 15dec | = | 17oct | 1 | 1 | 1 | 1 |
См. также
Ссылки
Выделить Шестнадцатеричная система счисления и найти в:
Для чего нужна шестнадцатеричная система счисления
Содержание статьи
Понятие шестнадцатеричной системы счисления
Привычная для человека система счисления – десятичная. В ее основу входят десять цифр от 0 до 9. Шестнадцатеричную систему отличает наличие в ней первых шести букв латинского алфавита для записи чисел помимо основных цифр. То есть после цифры 9 следует символ «A», который соответствует числу 10 для десятичной системы. Соответственно, F в шестнадцатеричной системе – это 16 в десятичной. Использование шестнадцати символов в системе – неслучайный выбор.
Единица информации – бит. Восемь бит образуют байт. Существует такое понятие, как машинное слово – это единица данных, представляющая собой два байта, то есть шестнадцать бит. Таким образом, используя шестнадцать различных символов, можно описывать любую информацию, которая при обмене данных будет наименьшей частицей. С ними можно производить любые арифметические действия, результат, соответственно, получится тоже в шестнадцатеричной системе.
Для того чтобы отличать, что число записано в шестнадцатеричной системе, после него записывают букву «h» или нижний индекс «16».
Применение
Наиболее широкое применение шестнадцатеричной системы счисления – это коды ошибок программных продуктов, например, операционной системы. Числа, заложенные в этих кодах, стандартизированы. Имея специальную таблицу, всегда можно определить, что именно означает та или иная ошибка.
В языках низкого уровня, максимально приближенным к машинным кодам шестнадцатеричная система применяется для написания программ. Многие программисты используют ее и при работе с языками высокого уровня, потому что числа в этой системе при помощи специальной таблицы соответствия легко переводятся в двоичную систему, на которой основана работа всей цифровой техники. Любая информация в компьютере, будь то музыкальный файл или текстовый документ, после трансляции представлена последовательностью исходного двоичного кода, а его удобнее просматривать представленным символами шестнадцатеричной системы.
Также одно из применений шестнадцатеричных символов – описание цветовых схем, то есть три компонента R, G, B описываются соответствующим данной системе способом. Данный подход к записи получил название шестнадцатеричный цвет
Возможность просмотреть программу в шестнадцатеричном коде позволяет отладить ее, внести изменения, а злоумышленниками данный подход используется для взлома программ.
Шестнадцатиричная система счисления – умножение, вычитание в таблице
Для записи адресов и содержимого ячеек памяти компьютера используется шестнадцатеричная система счисления. Запись числовых значений в шестнадцатеричной системе счисления, а также выполнение арифметических операций над ними имеет ряд особенностей, о чем можно прочитать в данной статье.
Что такое шестнадцатеричная система счисления
Шестнадцатеричная система счисления использует для записи числовых значений шестнадцать символов: арабские цифры от 0 до 9 и буквы латинского алфавита A, B, C, D, E, F. Соответственно, основанием такой системы счисления будет число 16.
При использовании шестнадцатеричных чисел следует помнить, что в числовом ряду шестнадцатеричных чисел после числа 9 идет А, а после F следует двузначное число 10.
Перевод 16 –10
Для прямого перевода шестнадцатеричного числа в десятичную систему удобно пользоваться развернутой формой записи, когда число представляют в виде суммы, в которой слагаемые получаются путем умножения символа разряда (числа или числового эквивалента буквы) на 16 в степени соответствующего разряда.
Например, 1F4 = 1 * (16^2) + 15 * (16^1) + 4 * (16^0) = 256 + 240 + 4 = 500
Обратный перевод выполняется последовательным делением десятичного числа на 16 и взятия остатков от деления. Причем полученные остатки в диапазоне от 10 до 15 надо заменить соответствующей буквой.
Выполняя обратный перевод, следует помнить, что результирующее значение получают путем записи полученных от деления остатков в обратном порядке, начиная с последнего частного. Каждый остаток от деления должен получаться всегда меньше шестнадцати.
Например: 500 / 16 = 31 (остаток 4)
31 / 16 = 1 (остаток 15 заменяем на букву F)
Таким образом, получено шестнадцатеричное число 1F4.
Перевод 16 – 2
Для перевода шестнадцатеричного числа в десятичную систему каждую его цифру заменяют группой из четырех нулей и единиц, которую принято называть «тетрадой». Для перевода обычно пользуются таблицей соответствия шестнадцатеричных символов и двоичных тетрад.
Рис. 1. Таблица соответствия шестнадцатеричных чисел и их двоичных и десятичных эквивалентов
Например, 1F4 = (0001)(1111)(0100).
Арифметические действия в шестнадцатеричной системе счисления
Сложение и вычитание
Операции сложения и вычитания удобно выполнять с использованием таблицы сложения шестнадцатеричных чисел. И сложение или вычитание выполняются поразрядно, начиная с младшего разряда.
Рис. 2. Таблица сложения шестнадцатеричных чисел
Если при сложении двух чисел одинакового разряда получается двузначное число, то значение его старшего разряда (единицу) добавляют в старший разряд.
Например, 1F + 2D = 4C.
Сначала складываются значения младших разрядов F + D. По таблице получается двузначное число1С, единицу старшего разряда которого переносим и добавляем к сумме следующих по величине разрядов суммируемых шестнадцатеричных чисел.
Сумма цифр старших разрядов 1 + 2 равна 3 и еще прибавляется переносимая единица, то есть получается в сумме 4.
Таким образом, получается число 4C.
При выполнении вычитания часто возникает ситуация, когда необходимо выполнять заем из старшего разряда, если уменьшаемое конкретного разряда меньше вычитаемого. Тогда занимается единица из старшего разряда. Значение разности смотрится по таблице.
Например, 2D – 1F = E.
Сначала находят разность цифр младших разрядов, то есть D – F (в десятичном представлении 13-15). Уменьшаемое меньше вычитаемого, поэтому происходит заем единицы из старшего разряда исходного числа. То есть вычисляют разность 1D – F = E.
После выполненных манипуляций с младшими разрядами переходят к следующим по величине. В текущем примере следует вычислить 2 – 1. Но ранее произошел заем единицы и в старшем разряде уменьшаемого остается не 2, а 1. Поэтому вычисляется разность 1 – 1 = 0.
Умножение и деление
Умножать и делить числа в шестнадцатеричной системе следует также поразрядно. При вычислениях удобно пользоваться таблицей умножения шестнадцатеричной системы счисления.
Рис. 3. Таблица умножения шестнадцатеричных чисел
Например, 1С * 2 = 38. Используя распределительный закон умножения: (10 + С) * 2 = 10 * 2 + С * 2 = 20 + 18 = 38
Операция деления также выполняется столбиком с использованием таблицы умножения: 1С / 2 = Е. В строке таблицы для числа 2, то есть делителя, находится значение 1С (делимое) и пересечение этой строки и столбца, где расположено 1С даст значение частного от деления числа, то есть Е.
Что мы узнали?
В шестнадцатеричной системе счисления для записи числовых значений используются цифры от 0 до 9 и латинские буквы от A до F. Прямой перевод шестнадцатеричного числа в десятичную систему выполняется с использованием развернутой формы записи числа. Обратный перевод выполняется путем деления и записи остатков. Каждую шестнадцатеричную цифру в числе можно заменить тетрадой двоичных чисел. Арифметические операции в шестнадцатеричной системе удобнее всего выполнять поразрядно с использованием таблиц сложения и умножения шестнадцатеричных чисел
СОДЕРЖАНИЕ
Представление
Письменное представление
Практически во всех современных случаях буквы A – F или a – f представляют значения 10–15, а цифры 0–9 используются для обозначения их обычных значений.
Не существует универсального соглашения об использовании строчных или прописных букв, поэтому каждый из них является преобладающим или предпочтительным в определенных средах по стандартам или соглашению сообщества; часто используется даже смешанный регистр. В семисегментных дисплеях используется AbCdEF в смешанном регистре, чтобы цифры можно было отличить друг от друга.
Отличие от десятичного
В линейных текстовых системах, таких как те, которые используются в большинстве сред компьютерного программирования, возникло множество методов:
Другие символы для 10-15
Использование букв от A до F для обозначения цифр выше 9 не было универсальным в ранней истории компьютеров.
Вербальные и цифровые представления
Системы подсчета на цифры были разработаны как для двоичной и шестнадцатеричной. Артур Кларк предложил использовать каждый палец как бит включения / выключения, позволяя считать по пальцам от нуля до 1023 · 10 на десяти пальцах. Другая система для подсчета до FF 16 (255 10 ) показана справа.
Знаки
В шестнадцатеричной системе отрицательные числа могут быть выражены так же, как и в десятичной: −2A для представления −42 10 и так далее.
Шестнадцатеричная экспоненциальная запись
Преобразование
Двоичное преобразование
1111 2 | = 8 10 + 4 10 + 2 10 + 1 10 |
= 15 10 |
В этом примере показано преобразование двоичного числа в десятичное, сопоставление каждой цифры с десятичным значением и сложение результатов.
(01011110101101010010) 2 | = 262144 10 + 65536 10 + 32768 10 + 16384 10 + 8192 10 + 2048 10 + 512 10 + 256 10 + 64 10 + 16 10 + 2 10 |
= 387922 10 |
Сравните это с преобразованием в шестнадцатеричное, где каждую группу из четырех цифр можно рассматривать независимо и преобразовывать напрямую:
(01011110101101010010) 2 | знак равно | 0101 | 1110 | 1011 | 0101 | 0010 2 |
знак равно | 5 | E | B | 5 | 2 16 | |
знак равно | 5EB52 16 |
Преобразование из шестнадцатеричного в двоичное также происходит напрямую.
Другие простые преобразования
Деление-остаток в исходной базе
Как и для всех баз, существует простой алгоритм преобразования представления числа в шестнадцатеричное путем выполнения операций целочисленного деления и остатка в исходной базе. Теоретически это возможно с любой базы, но для большинства людей с помощью этого метода можно легко обрабатывать только десятичные числа, а для большинства компьютеров только двоичные (которые могут быть преобразованы гораздо более эффективными методами).
«16» может быть заменено любым другим основанием, которое может быть желательным.
Преобразование посредством сложения и умножения
B3AD = (11 × 16 3 ) + (3 × 16 2 ) + (10 × 16 1 ) + (13 × 16 0 )
что составляет 45997 в базе 10.
Инструменты для конвертации
Большинство современных компьютерных систем с графическим пользовательским интерфейсом предоставляют встроенную утилиту-калькулятор, способную выполнять преобразования между различными основами системы счисления, и в большинстве случаев также включают шестнадцатеричные.
Элементарная арифметика
Действительные числа
Рациональное число
Иррациональные числа
В таблице ниже приведены расширения некоторых распространенных иррациональных чисел в десятичной и шестнадцатеричной системе счисления.
Полномочия
Степень двойки имеет очень простое шестнадцатеричное разложение. Первые шестнадцать степеней двойки показаны ниже.
2 х | Ценить | Значение (десятичное) |
---|---|---|
2 0 | 1 | 1 |
2 1 | 2 | 2 |
2 2 | 4 | 4 |
2 3 | 8 | 8 |
2 4 | 10 шестигранник | 16 дек |
2 5 | 20 шестигранник | 32 дек |
2 6 | 40 шестигранник | 64 дек |
2 7 | 80 шестигранник | 128 дек |
2 8 | 100 шестигранник | 256 дек |
2 9 | 200 шестигранник | 512 дек |
2 А (2 10 дес. ) | 400 шестигранник | 1024 дек |
2 Б (2 11 уб ) | 800 шестигранник | 2048 декабрь |
2 С (2 12 уб ) | 1000 шестигранник | 4096 дек |
2 пр (2 13 уб ) | 2000 шестигранник | 8192 дек |
2 E (2 14 дек ) | 4000 шестигранник | 16,384 дек |
2 ж (2 15 уб ) | 8000 шестигранник | 32,768 дек |
2 10 (2 16 уб ) | 10000 шестнадцатеричный | 65 536 дек |
Культурная история
Поищите шестнадцатеричные числа в Викисловаре, бесплатном словаре. |
«С нелепым выбором букв A, B, C, D, E, F в качестве символов шестнадцатеричных чисел, усугубляющих и без того неприятные проблемы отличия восьмеричных (или шестнадцатеричных) чисел от десятичных чисел (или имен переменных), настало время для пересмотра наших числовых символов. Это должно было быть сделано до того, как плохой выбор превратился в стандарт де-факто! «
Base16 (кодировка передачи)
Есть несколько преимуществ кодировки Base16:
Основными недостатками кодировки Base16 являются:
Основы систем счисления
Изучая кодировки, я понял, что недостаточно хорошо понимаю системы счислений. Тем не менее, часто использовал 2-, 8-, 10-, 16-ю системы, переводил одну в другую, но делалось все на “автомате”. Прочитав множество публикаций, я был удивлен отсутствием единой, написанной простым языком, статьи по столь базовому материалу. Именно поэтому решил написать свою, в которой постарался доступно и по порядку изложить основы систем счисления.
Введение
Система счисления — это способ записи (представления) чисел.
Что под этим подразумевается? Например, вы видите перед собой несколько деревьев. Ваша задача — их посчитать. Для этого можно — загибать пальцы, делать зарубки на камне (одно дерево — один палец\зарубка) или сопоставить 10 деревьям какой-нибудь предмет, например, камень, а единичному экземпляру — палочку и выкладывать их на землю по мере подсчета. В первом случае число представляется, как строка из загнутых пальцев или зарубок, во втором — композиция камней и палочек, где слева — камни, а справа — палочки
Системы счисления подразделяются на позиционные и непозиционные, а позиционные, в свою очередь, — на однородные и смешанные.
Непозиционная — самая древняя, в ней каждая цифра числа имеет величину, не зависящую от её позиции (разряда). То есть, если у вас 5 черточек — то число тоже равно 5, поскольку каждой черточке, независимо от её места в строке, соответствует всего 1 один предмет.
Позиционная система — значение каждой цифры зависит от её позиции (разряда) в числе. Например, привычная для нас 10-я система счисления — позиционная. Рассмотрим число 453. Цифра 4 обозначает количество сотен и соответствует числу 400, 5 — кол-во десяток и аналогично значению 50, а 3 — единиц и значению 3. Как видим — чем больше разряд — тем значение выше. Итоговое число можно представить, как сумму 400+50+3=453.
Однородная система — для всех разрядов (позиций) числа набор допустимых символов (цифр) одинаков. В качестве примера возьмем упоминавшуюся ранее 10-ю систему. При записи числа в однородной 10-й системе вы можете использовать в каждом разряде исключительно одну цифру от 0 до 9, таким образом, допускается число 450 (1-й разряд — 0, 2-й — 5, 3-й — 4), а 4F5 — нет, поскольку символ F не входит в набор цифр от 0 до 9.
Смешанная система — в каждом разряде (позиции) числа набор допустимых символов (цифр) может отличаться от наборов других разрядов. Яркий пример — система измерения времени. В разряде секунд и минут возможно 60 различных символов (от «00» до «59»), в разряде часов – 24 разных символа (от «00» до «23»), в разряде суток – 365 и т. д.
Непозиционные системы
Как только люди научились считать — возникла потребность записи чисел. В начале все было просто — зарубка или черточка на какой-нибудь поверхности соответствовала одному предмету, например, одному фрукту. Так появилась первая система счисления — единичная.
Единичная система счисления
Число в этой системе счисления представляет собой строку из черточек (палочек), количество которых равно значению данного числа. Таким образом, урожай из 100 фиников будет равен числу, состоящему из 100 черточек.
Но эта система обладает явными неудобствами — чем больше число — тем длиннее строка из палочек. Помимо этого, можно легко ошибиться при записи числа, добавив случайно лишнюю палочку или, наоборот, не дописав.
Для удобства, люди стали группировать палочки по 3, 5, 10 штук. При этом, каждой группе соответствовал определенный знак или предмет. Изначально для подсчета использовались пальцы рук, поэтому первые знаки появились для групп из 5 и 10 штук (единиц). Все это позволило создать более удобные системы записи чисел.
Древнеегипетская десятичная система
Почему она называется десятичной? Как писалось выше — люди стали группировать символы. В Египте — выбрали группировку по 10, оставив без изменений цифру “1”. В данном случае, число 10 называется основанием десятичной системы счисления, а каждый символ — представление числа 10 в какой-то степени.
Числа в древнеегипетской системе счисления записывались, как комбинация этих
символов, каждый из которых повторялся не более девяти раз. Итоговое значение равнялось сумме элементов числа. Стоит отметить, что такой способ получения значения свойственен каждой непозиционной системе счисления. Примером может служить число 345:
Вавилонская шестидесятеричная система
В отличии от египетской, в вавилонской системе использовалось всего 2 символа: “прямой” клин — для обозначения единиц и “лежачий” — для десятков. Чтобы определить значение числа необходимо изображение числа разбить на разряды справа налево. Новый разряд начинается с появления прямого клина после лежачего. В качестве примера возьмем число 32:
Число 60 и все его степени так же обозначаются прямым клином, что и “1”. Поэтому вавилонская система счисления получила название шестидесятеричной.
Все числа от 1 до 59 вавилоняне записывали в десятичной непозиционной системе, а большие значения — в позиционной с основанием 60. Число 92:
Запись числа была неоднозначной, поскольку не существовало цифры обозначающей ноль. Представление числа 92 могло обозначать не только 92=60+32, но и, например, 3632=3600+32. Для определения абсолютного значения числа был введен специальный символ для обозначения пропущенного шестидесятеричного разряда, что соответствует появлению цифры 0 в записи десятичного числа:
Теперь число 3632 следует записывать, как:
Шестидесятеричная вавилонская система — первая система счисления, частично основанная на позиционном принципе. Данная система счисления используется и сегодня, например, при определении времени — час состоит из 60 минут, а минута из 60 секунд.
Римская система
Римская система не сильно отличается от египетской. В ней для обозначения чисел 1, 5, 10, 50, 100, 500 и 1000 используются заглавные латинские буквы I, V, X, L, C, D и M соответственно. Число в римской системе счисления — это набор стоящих подряд цифр.
Позиционные системы счисления
Как упоминалось выше — первые предпосылки к появлению позиционной системы возникли в древнем Вавилоне. В Индии система приняла форму позиционной десятичной нумерации с применением нуля, а у индусов эту систему чисел заимствовали арабы, от которых её переняли европейцы. По каким-то причинам, в Европе за этой системой закрепилось название “арабская”.
Десятичная система счисления
Это одна из самых распространенных систем счисления. Именно её мы используем, когда называем цену товара и произносим номер автобуса. В каждом разряде (позиции) может использоваться только одна цифра из диапазона от 0 до 9. Основанием системы является число 10.
Для примера возьмем число 503. Если бы это число было записано в непозиционной системе, то его значение равнялось 5+0+3 = 8. Но у нас — позиционная система и значит каждую цифру числа необходимо умножить на основание системы, в данном случае число “10”, возведенное в степень, равную номеру разряда. Получается, значение равно 5*10 2 + 0*10 1 + 3*10 0 = 500+0+3 = 503. Чтобы избежать путаницы при одновременной работе с несколькими системами счисления основание указывается в качестве нижнего индекса. Таким образом, 503 = 50310.
Помимо десятичной системы, отдельного внимания заслуживают 2-, 8-, 16-ая системы.
Двоичная система счисления
Эта система, в основном, используется в вычислительной технике. Почему не стали использовать привычную нам 10-ю? Первую вычислительную машину создал Блез Паскаль, использовавший в ней десятичную систему, которая оказалась неудобной в современных электронных машинах, поскольку требовалось производство устройств, способных работать в 10 состояниях, что увеличивало их цену и итоговые размеры машины. Этих недостатков лишены элементы, работающие в 2-ой системе. Тем не менее, рассматриваемая система была создана за долго до изобретения вычислительных машин и уходит “корнями” в цивилизацию Инков, где использовались кипу — сложные верёвочные сплетения и узелки.
Двоичная позиционная система счисления имеет основание 2 и использует для записи числа 2 символа (цифры): 0 и 1. В каждом разряде допустима только одна цифра — либо 0, либо 1.
Примером может служить число 101. Оно аналогично числу 5 в десятичной системе счисления. Для того, чтобы перевести из 2-й в 10-ю необходимо умножить каждую цифру двоичного числа на основание “2”, возведенное в степень, равную разряду. Таким образом, число 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510.
Хорошо, для машин 2-я система счисления удобнее, но мы ведь часто видим, используем на компьютере числа в 10-й системе. Как же тогда машина определяет какую цифру вводит пользователь? Как переводит число из одной системы в другую, ведь в её распоряжении всего 2 символа — 0 и 1?
Чтобы компьютер мог работать с двоичными числами (кодами), необходимо чтобы они где-то хранились. Для хранения каждой отдельной цифры применяется триггер, представляющий собой электронную схему. Он может находится в 2-х состояниях, одно из которых соответствует нулю, другое — единице. Для запоминания отдельного числа используется регистр — группа триггеров, число которых соответствует количеству разрядов в двоичном числе. А совокупность регистров — это оперативная память. Число, содержащееся в регистре — машинное слово. Арифметические и логические операции со словами осуществляет арифметико-логическое устройство (АЛУ). Для упрощения доступа к регистрам их нумеруют. Номер называется адресом регистра. Например, если необходимо сложить 2 числа — достаточно указать номера ячеек (регистров), в которых они находятся, а не сами числа. Адреса записываются в 8- и 16-ричной системах (о них будет рассказано ниже), поскольку переход от них к двоичной системе и обратно осуществляется достаточно просто. Для перевода из 2-й в 8-ю число необходимо разбить на группы по 3 разряда справа налево, а для перехода к 16-ой — по 4. Если в крайней левой группе цифр не достает разрядов, то они заполняются слева нулями, которые называются ведущими. В качестве примера возьмем число 1011002. В восьмеричной — это 101 100 = 548, а в шестнадцатеричной — 0010 1100 = 2С16. Отлично, но почему на экране мы видим десятичные числа и буквы? При нажатии на клавишу в компьютер передаётся определённая последовательность электрических импульсов, причём каждому символу соответствует своя последовательность электрических импульсов (нулей и единиц). Программа драйвер клавиатуры и экрана обращается к кодовой таблице символов (например, Unicode, позволяющая закодировать 65536 символов), определяет какому символу соответствует полученный код и отображает его на экране. Таким образом, тексты и числа хранятся в памяти компьютера в двоичном коде, а программным способом преобразуются в изображения на экране.
Восьмеричная система счисления
8-я система счисления, как и двоичная, часто применяется в цифровой технике. Имеет основание 8 и использует для записи числа цифры от 0 до 7.
Шестнадцатеричная система счисления
Шестнадцатеричная система широко используется в современных компьютерах, например при помощи неё указывается цвет: #FFFFFF — белый цвет. Рассматриваемая система имеет основание 16 и использует для записи числа: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B. C, D, E, F, где буквы равны 10, 11, 12, 13, 14, 15 соответственно.
Помимо рассмотренных позиционных систем счисления, существуют и другие, например:
1) Троичная
2) Четверичная
3) Двенадцатеричная
Позиционные системы подразделяются на однородные и смешанные.
Однородные позиционные системы счисления
Определение, данное в начале статьи, достаточно полно описывает однородные системы, поэтому уточнение — излишне.
Смешанные системы счисления
К уже приведенному определению можно добавить теорему: “если P=Q n (P,Q,n – целые положительные числа, при этом P и Q — основания), то запись любого числа в смешанной (P-Q)-ой системе счисления тождественно совпадает с записью этого же числа в системе счисления с основанием Q.”
Смешанными системами счисления также являются, например:
1) Факториальная
2) Фибоначчиева
Перевод из одной системы счисления в другую
Иногда требуется преобразовать число из одной системы счисления в другую, поэтому рассмотрим способы перевода между различными системами.
Преобразование в десятичную систему счисления
Пример: 1012 = 1*2 2 + 0*2 1 + 1*2 0 = 4+0+1 = 510
Преобразование из десятичной системы счисления в другие
Записав все остатки снизу вверх, получаем итоговое число 17. Следовательно, 1510 = 178.
Преобразование из двоичной в восьмеричную и шестнадцатеричную системы
В качестве примера возьмем число 10012: 10012 = 001 001 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ) = (0+0+1) (0+0+1) = 118
Для перевода в шестнадцатеричную — разбиваем двоичное число на группы по 4 цифры справа налево, затем — аналогично преобразованию из 2-й в 8-ю.
Преобразование из восьмеричной и шестнадцатеричной систем в двоичную
Перевод из восьмеричной в двоичную — преобразуем каждый разряд восьмеричного числа в двоичное 3-х разрядное число делением на 2 (более подробно о делении см. выше пункт “Преобразование из десятичной системы счисления в другие”), недостающие крайние разряды заполним ведущими нулями.
Для примера рассмотрим число 458: 45 = (100) (101) = 1001012
Перевод из 16-ой в 2-ю — преобразуем каждый разряд шестнадцатеричного числа в двоичное 4-х разрядное число делением на 2, недостающие крайние разряды заполняем ведущими нулями.
Преобразование дробной части любой системы счисления в десятичную
Преобразование осуществляется также, как и для целых частей, за исключением того, что цифры числа умножаются на основание в степени “-n”, где n начинается от 1.
Преобразование дробной части двоичной системы в 8- и 16-ую
Перевод дробной части осуществляется также, как и для целых частей числа, за тем лишь исключением, что разбивка на группы по 3 и 4 цифры идёт вправо от десятичной запятой, недостающие разряды дополняются нулями справа.
Пример: 1001,012 = 001 001, 010 = (0*2 2 + 0*2 1 + 1*2 0 ) (0*2 2 + 0*2 1 + 1*2 0 ), (0*2 2 + 1*2 1 + 0*2 0 ) = (0+0+1) (0+0+1), (0+2+0) = 11,28
Преобразование дробной части десятичной системы в любую другую
Для перевода дробной части числа в другие системы счисления нужно обратить целую часть в ноль и начать умножение получившегося числа на основание системы, в которую нужно перевести. Если в результате умножения будут снова появляться целые части, их нужно повторно обращать в ноль, предварительно запомнив (записав) значение получившейся целой части. Операция заканчивается, когда дробная часть полностью обратится в нуль.
Для примера переведем 10,62510 в двоичную систему:
0,625*2 = 1,25
0,250*2 = 0,5
0,5*2 = 1,0
Записав все остатки сверху вниз, получаем 10,62510 = (1010), (101) = 1010,1012