Адресуемость это в информатике кратко

Обновлено: 05.07.2024

Наименьший элемент памяти компьютера называется битом памяти.

В каждом бите памяти может храниться в данный момент одно из двух значений: нуль или единица. Использование двух знаков для представления информации называется двоичной кодировкой.

Данные и программы в памяти компьютера хранятся в виде двоичного кода.

Один символ двухсимвольного алфавита несёт 1 бит информации. В одном бите памяти содержится один бит информации.

В информатике часто используется величина, называемая байтом и равная 8 битам. И если бит позволяет выбрать один вариант из двух возможных, то байт, соответственно, 1 из 256 (28). Наряду с байтами для измерения количества информации используются и более крупные единицы:

1 Кбайт (один килобайт) = 2 10 байт = 1024 байта;
1 Мбайт (один мегабайт) = 2 10 Кбайт = 1024 Кбайта;
1 Гбайт (один гигабайт) = 2 10 Мбайт = 1024 Мбайта.

Например, книга содержит 100 страниц; на каждой странице – 35 строк, в каждой строке – 50 символов. Объем информации, содержащейся в книге, рассчитывается следующим образом:

1750 × 100 = 175 000 байт.
175 000 / 1024 = 170,8984 Кбайт.
170,8984 / 1024 = 0,166893 Мбайт.

Битовая структура определяет первое свойство внутренней памяти компьютера — дискретность.

Второе свойство внутренней памяти компьютера — адресуемость.

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

Принцип адресуемости означает, что запись информации в память, а также чтение её из памяти производится по адресам.

Основные характеристики модулей оперативной памяти:

Оперативное запоминающее устройство (ОЗУ или RAM)

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

Часто для оперативной памяти используют обозначение RAM (Random Access Memory), то есть память с произвольным доступом.

Наименьший элемент памяти компьютера называется битом памяти.

В каждом бите памяти может храниться в данный момент одно из двух значений: нуль или единица. Использование двух знаков для представления информации называется двоичной кодировкой.

Данные и программы в памяти компьютера хранятся в виде двоичного кода.

Один символ двухсимвольного алфавита несёт 1 бит информации. В одном бите памяти содержится один бит информации.

В информатике часто используется величина, называемая байтом и равная 8 битам. И если бит позволяет выбрать один вариант из двух возможных, то байт, соответственно, 1 из 256 (28). Наряду с байтами для измерения количества информации используются и более крупные единицы:

1 Кбайт (один килобайт) = 2 10 байт = 1024 байта;
1 Мбайт (один мегабайт) = 2 10 Кбайт = 1024 Кбайта;
1 Гбайт (один гигабайт) = 2 10 Мбайт = 1024 Мбайта.

Например, книга содержит 100 страниц; на каждой странице – 35 строк, в каждой строке – 50 символов. Объем информации, содержащейся в книге, рассчитывается следующим образом:




1750 × 100 = 175 000 байт.
175 000 / 1024 = 170,8984 Кбайт.
170,8984 / 1024 = 0,166893 Мбайт.

Битовая структура определяет первое свойство внутренней памяти компьютера — дискретность.

Второе свойство внутренней памяти компьютера — адресуемость.

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

Принцип адресуемости означает, что запись информации в память, а также чтение её из памяти производится по адресам.

Основные характеристики модулей оперативной памяти:

Оперативное запоминающее устройство (ОЗУ или RAM)

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

Часто для оперативной памяти используют обозначение RAM (Random Access Memory), то есть память с произвольным доступом.

Мне периодически приходится объяснять разным людям некоторые аспекты архитектуры Intel® IA-32, в том числе замысловатость системы адресации данных в памяти, которая, похоже, реализовала почти все когда-то придуманные идеи. Я решил оформить развёрнутый ответ в этой статье. Надеюсь, что он будет полезен ещё кому-нибудь.
При исполнении машинных инструкций считываются и записываются данные, которые могут находиться в нескольких местах: в регистрах самого процессора, в виде констант, закодированных в инструкции, а также в оперативной памяти. Если данные находятся в памяти, то их положение определяется некоторым числом — адресом. По ряду причин, которые, я надеюсь, станут понятными в процессе чтения этой статьи, исходный адрес, закодированный в инструкции, проходит через несколько преобразований.


Физический адрес


Конечный результат всех преобразований других типов адресов, перечисленных далее в этой статье — физический адрес. На нём кончается работа внутри центрального процессора по преобразованию адресов.

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

Эффективный адрес

Эффективный адрес — это начало пути. Он задаётся в аргументах индивидуальной машинной инструкции, и вычисляется из значений регистров, смещений и масштабирующих коэффициентов, заданных в ней явно или неявно.

Например, для инструкции (ассемблер в AT&T-нотации)

addl %eax, 0x11(%ebp, %edx, 8)

эффективный адрес операнда-назначения будет вычислен по формуле:

eff_addr = EBP + EDX * 8 + 0x11

Логический адрес

Без знания номера и параметров сегмента, в котором указан эффективный адрес, последний бесполезен. Сам сегмент выбирается ещё одним числом, именуемым селектором. Пара чисел, записываемая как selector:offset , получила имя логический адрес. Так как активные селекторы хранятся в группе специальных регистров, чаще всего вместо первого числа в паре записывается имя регистра, например, ds:0x11223344.

Линейный адрес

Эффективный адрес — это смещение от начала сегмента — его базы. Если сложить базу и эффективный адрес, то получим число, называемое линейным адресом:

lin_addr = segment.base + eff_addr

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

Описанное выше верно при включенной сегментации. В 16-битном реальном режиме смысл селекторов другой, они хранят только базу, а преобразование не осуществляет сегментных проверок. Фактически, обозначения CS, DS, FS, GS, ES, SS имеют совершенно разный смысл в этих двух режимах, что добавляет путаницы.

Сегментация была модной на некотором этапе развития вычислительной техники. В настоящее она почти всюду была заменена другими механизмами, и используется только для специфических задач. Так, в режиме IA-32e (64-битном) только два сегмента могут иметь ненулевую базу. Для остальных четырёх в этом режиме всегда линейный адрес == эффективный.

Что такое виртуальный адрес?

В литературе и в документации других архитектур встречается ещё один термин — виртуальный адрес. Он не используется в документации Intel на IA-32, однако встречается, например, в описании Intel® Itanium, в котором сегментация не используется. Можно смело считать, что для IA-32 виртуальный == линейный.
В советской литературе по вычислительной технике этот вид адресов также именовался математическим.

Страничное преобразование


Следующее после сегментации преобразование адресов: линейный → физический — имеет множество вариаций в своём алгоритме, в зависимости от того, в каком режиме (32-битном, PAE или 64-битном) находится процессор.

Примечательно, сколько различных бит из разных системных регистров процессора влияют на процесс страничного преобразования в настоящее время. Я просмотрел свежую сентябрьскую редакцию Intel SDM [1], и вот полный список: CR0.WP, CR0.PG, CR4.PSE, CR4.PAE, CR4.PGE, CR4.PCIDE, CR4.SMEP, CR4.SMAP, IA32_EFER.LME, IA32_EFER.NXE, EFLAGS.AC.

Однако общая идея всегда одна и та же: линейный адрес разбивается на несколько частей, каждая из которых служит индексом в одной из системных таблиц, хранящихся в памяти. Записи в таблицах — это адреса начала таблицы следующего уровня или, для последнего уровня — искомая информация о физическом адресе страницы в памяти и её свойствах. Самые младшие биты не преобразуются, а используются для адресации внутри найденной страницы. Например, для режима PAE с размером страниц 4 кбайт преобразование выглядит так:


Гостевой физический

До введения возможностей аппаратной виртуализации в процессорах Intel страничное преобразование было последним в цепочке. Когда же на одной системе работают несколько виртуальных машин, то физические адреса, получаемые в каждой из них, приходится транслировать ещё один раз. Это можно делать программным образом, или же аппаратно, если процессор поддерживает функциональность EPT (англ. Extended Page Table). Адрес, раньше называвшийся физическим, был переименован в гостевой физический для того, чтобы отличать его от настоящего физического. Они связаны с помощью EPT-преобразования. Алгоритм последнего схож с ранее описанным страничным преобразованием: набор связанных таблиц с общим корнем, последний уровень которых определяет, существует ли физическая страница для указанной гостевой физической.

Полная картина

Я попытался собрать все преобразования адреса в одну иллюстрацию. В ней преобразования обозначены стрелками, типы адресов обведены в рамки.


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

Заключение

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

01.03.17 адресуемость (в микрографии) [addressability ] (2): Число адресуемых горизонтальных точек к числу адресуемых вертикальных точек в определенном кадре на пленке.

Пример - Адресуемость равна 4000 на 4000.

05.02.51 адресуемость [ addressability]: Свойство, позволяющее выполнять адресное обращение к битам, полям, страницам, файлам и другим областям памяти радиочастотной метки.

7. Адресуемость

Число адресуемых позиций по каждой оси координат физического пространства

Полезное

Смотреть что такое "адресуемость" в других словарях:

адресуемость — обращенность Словарь русских синонимов. адресуемость сущ., кол во синонимов: 1 • обращенность (5) Словарь синонимов ASIS. В.Н. Тришин … Словарь синонимов

адресуемость — Число адресуемых позиций по каждой оси координат физического пространства. [ГОСТ 27459 87] Тематики машинная графика EN addressability … Справочник технического переводчика

адресуемость — адрес уемость, и … Русский орфографический словарь

ГОСТ Р ИСО/МЭК 19762-1-2011: Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 1. Общие термины в области АИСД — Терминология ГОСТ Р ИСО/МЭК 19762 1 2011: Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 1. Общие термины в области АИСД оригинал документа: Accredited Standards… … Словарь-справочник терминов нормативно-технической документации

NDS Group — У этого термина существуют и другие значения, см. NDS. Здание НДС в промзоне Хар Хоцвим в Иерусалиме NDS Group … Википедия

обращенность — устремленность, направленность, адресуемость, нацеленность Словарь русских синонимов. обращенность сущ., кол во синонимов: 5 • адресуемость (1) • … Словарь синонимов

ГОСТ Р ИСО/МЭК 19762-3-2011: Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 3. Радиочастотная идентификация (РЧИ) — Терминология ГОСТ Р ИСО/МЭК 19762 3 2011: Информационные технологии. Технологии автоматической идентификации и сбора данных (АИСД). Гармонизированный словарь. Часть 3. Радиочастотная идентификация (РЧИ) оригинал документа: 05.02.21 абстрактный… … Словарь-справочник терминов нормативно-технической документации

ГОСТ 27459-87: Системы обработки информации. Машинная графика. Термины и определения — Терминология ГОСТ 27459 87: Системы обработки информации. Машинная графика. Термины и определения оригинал документа: 5. Абсолютная команда визуализации Absolute command Команда визуализации, в которой используются абсолютные координаты… … Словарь-справочник терминов нормативно-технической документации

Valgrind — Тип Профилировщик, отладчик использования памяти Разработчик Разработчики Valgrind Операционная система Linux, Mac OS X Последняя версия 3.8.0 (10 августа 2012) … Википедия

Сайт учителя информатики. Технологические карты уроков, Подготовка к ОГЭ и ЕГЭ, полезный материал и многое другое.

В чём состоит суть принципа адресности памяти?

Ответ

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

Читайте также: