Для записи адресов и содержимого ячеек памяти компьютера используется шестнадцатеричная система счисления. Запись числовых значений в шестнадцатеричной системе счисления, а также выполнение арифметических операций над ними имеет ряд особенностей, о чем можно прочитать в данной статье.
Перевод 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
Для перевода шестнадцатеричного числа в десятичную систему каждую его цифру заменяют группой из четырех нулей и единиц, которую принято называть «тетрадой». Для перевода обычно пользуются таблицей соответствия шестнадцатеричных символов и двоичных тетрад.
Например, 1F4 = (0001)(1111)(0100).
Арифметические действия в шестнадцатеричной системе счисления
Сложение и вычитание
Операции сложения и вычитания удобно выполнять с использованием таблицы сложения шестнадцатеричных чисел. И сложение или вычитание выполняются поразрядно, начиная с младшего разряда.
Если при сложении двух чисел одинакового разряда получается двузначное число, то значение его старшего разряда (единицу) добавляют в старший разряд.
Например, 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.
Умножение и деление
Умножать и делить числа в шестнадцатеричной системе следует также поразрядно. При вычислениях удобно пользоваться таблицей умножения шестнадцатеричной системы счисления.
Например, 1С * 2 = 38. Используя распределительный закон умножения: (10 + С) * 2 = 10 * 2 + С * 2 = 20 + 18 = 38
Операция деления также выполняется столбиком с использованием таблицы умножения: 1С / 2 = Е. В строке таблицы для числа 2, то есть делителя, находится значение 1С (делимое) и пересечение этой строки и столбца, где расположено 1С даст значение частного от деления числа, то есть Е.
Что мы узнали?
В шестнадцатеричной системе счисления для записи числовых значений используются цифры от 0 до 9 и латинские буквы от A до F. Прямой перевод шестнадцатеричного числа в десятичную систему выполняется с использованием развернутой формы записи числа. Обратный перевод выполняется путем деления и записи остатков. Каждую шестнадцатеричную цифру в числе можно заменить тетрадой двоичных чисел. Арифметические операции в шестнадцатеричной системе удобнее всего выполнять поразрядно с использованием таблиц сложения и умножения шестнадцатеричных чисел