Представление двоичной байтовой информации в шестнадцатеричной и десятичной системах
Несмотря на то, что на элементарном уровне физическая память вычислительных устройств имеет битовую структуру, в качестве минимальной адресуемой единицы памяти в современных процессорах и алгоритмических языках принят байт – группа из 23=8 подряд стоящих битов. Каждому байту памяти соответствует уникальный адрес – некоторое целое положительное число. Кроме того, аппаратные и программные средства позволяют одновременно работать с группами, содержащими 2,4,8 и более байтов.
Содержимое байта в двоичной системе можно представить двоичным
8-разрядным числом в диапазоне от 0 до 28 –1=255. Для сокращения записи, а также для сокращения действий при переводе содержимое байтов разбивают на две группы по 4 бита – тетрады, каждую из которых можно представить шестнадцатеричным числом, которое может принимать значения из множества {0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}.
Пример 10. Перевести в шестнадцатеричную систему счисления двоичное число, задающее содержимое байта: 110010112.
Решение. Разбиваем байт на две тетрады: 11002и10112. Применяя замены 11002 = 1210 =С16, 10112 = 1110 = В16, получим: 110010112 = СВ16.
Также шестнадцатеричные числа, формат представления которых есть в основных алгоритмических языках, используют на практике для засылки битовых значений в байтовые массивы. В этом случае двоичную информацию переводят в 16-ричную форму и присваивают данные значения соответствующим байтовым переменным.
Пример 11. Найти 16-ричное число, которое обеспечивает установку в единицу разрядов 0,3,5и7байта.
Решение. По сформулированному условию вначале составляем двоичное битовое содержимое байта: 101010012. Переводя тетрады в шестнадцатеричную систему (10102 =А16,10012 =916), получим искомое 16-ричное число: 101010012 =А916.
В десятичную форму двоичную байтовую информацию переводят при работе с кодами символов, адресами в компьютерных сетях и др. случаях. Данный переход для сокращения действий проще выполнять через 16-ричную систему счисления. Из двоичной формы в 16-ричную числа переводят по сокращенным правилам, из 16-ричной в десятичную систему перевод производится по общим правилам.
Пример 12. Перевести в десятичную систему IP-адрес, состоящий из 4 октетов (байтов), разделенных точками:
00110110.10110111.11010001.111001012.
Решение. Записываем развернутую форму представления октетов по степеням основания 2, выражаем полученные степени в десятичной системе счисления и суммируем:
001101102 =1×25 +1×24 +1×22 +1×21 =3210 +1610 +410 +210 =5410
101101112 =1×27 +1×25 +1×24 +1×22 +1×21 +1×20 =12810 +3210 +1610 +410 +210 +110 =18310
110100012 =1×27 +1×26 +1×24 +1×20 =12810 +6410 +1610 +110 =
=20910
111001012 =1×27 +1×26 +1×25 +1×22 +1×20 =12810 +6410 +3210 +410 +110 =22910
Объединяя полученные десятичные числа, получим искомое десятичное представление IP-адреса:
00110110.10110111.11010001.111001012 =54.183.209.22916.
Дата добавления: 2015-10-05; просмотров: 1495;