Сегментная организация памяти.
Принцип адресации при сегментной организации памяти довольно прост. Представим себе девятиэтажную гостиницу. Каждому этажу присвоен номер от 0 до 9, т.е. на пятом этаже будут комнаты 501, 502 … вплоть до 599. Здесь все просто и понятно. Теперь несколько модернизируем систему отсчета, введем понятие сегмент. Будем считать сегментом любую группу из 100 комнат одного этажа. Присвоим каждому сегменту порядковый номер из двух цифр, а не одной как было ранее. Чтобы получить любой номер комнаты на этом этаже в пределах от 0 до 99 введем понятие смещение.
Допустим, номер комнаты – 541 (линейный адрес). Если представить его в виде [сегмент]: [смещение], то можно сказать, что вы живете в комнате с адресом сегмента 54 (номер комнаты 540) и смещением 1 от начала сегмента, в результате мы получим линейный адрес комнаты – 541. Тот же результат мы можем получить и другими способами сегментной адресации:
Адрес сегмента Смещение Адрес
54 1 541
50 41 541
45 91 541
Очевидно, полный адрес состоит из суммы адреса сегмента (умноженного на 10, что реально осуществляется сдвигом на один разряд) и адреса смещения.
54 50 45
+ 1 + 41 + 91
541 541 541
Используя различные сегменты и смещения, можно получить один и тот же адрес. Необходимо иметь в виду, что линейный адрес не делится на две составляющие, как и номер комнаты в реальной гостинице. Чтобы лучше понять как из двух 16 битовых слов получается 20 битовый адрес еще раз покажем это на двоичном примере.
Пусть имеется 2 машинных слова:
ABCD H и 1234 H
(вспомним, что каждая 16-ричная цифра представляет 4 бита, например – 11112 = 1510 = F16); Берем первое число и приписываем 0 справа (если больше нравится - умножаем на 16), получим ABCD0, т.е. первоначальное число, но со смещением на один 16-ричный разряд. Это 20-ти разрядное число, но оно не может нам служить 20 битовым адресом, т.к. оно заканчивается на нуль и, следовательно может представлять только адреса которые тоже заканчиваются на нуль. Другими словами оно пригодно для адресации каждого 16-го байта или сегмента.
A*164 + B*163 + C*162 + D*161 + 0*160
При изменении A,B,C,D изменяется дискретно сегмент (параграф).
Чтобы получить окончательную схему сегментированной адресации возьмем другое 16-ти битовое число – 1234 H и сложим его с модифицированным первым:
ABCD0
+ 1234
----------------
получим ACF04 двадцати битовое число, которое может принимать любые значения от 0 до 1 048 577
Таким образом, ABCD0 – сегментная часть, которая указывает на ту область адреса которая кратна 16 (сегмент, параграф. Второе число 1234 – смещение, которое указывает конкретное расположение байта внутри сегментного параграфа (это дает 65536 или 64 Кбайт адресов внутри сегмента). Поскольку эти составляющие перекрываются, конечный адрес можно получить различными способами:
D000:7FFF = D000 (сегмент)
+ 7FFF (смещение)
-----------
D7FFF (полный адрес)
Отметим, что линейный адрес является пятиразрядным, хотя мы использовали для сегмента и смещения четырехразрядные числа. Можно констатировать, что вычисление сегментированного адреса основано на так называемом сегментном сложении, позволяющем получить (например) 20-битовое двоичное число из двух 16 битовых.
Таким образом мы смогли адресоваться к каждой ячейке 32 Кбайт – ного блока из почти 1 Мбайт объема общей памяти, используя только 16 разрядную шину адреса, а не 20 разрядную, как это было бы в случае прямой адресации.
Данные Смещение База сегмента
FFFFFH
16 битное расстояние
от базы – смещение
15 0 32 Кбайт
Адрес сегмента
16 байт 1 Мбайт
15 0 00000H
Рис. 7.3 Сегментная память процессора 8086
Рассмотрим конкретную реализацию сегментированной памяти на примере процессора 8086, которая очень проста и доступна для понимания (Рис. 7.3).
Под сегментом понимается блок смежных ячеек памяти (вспомним гостиницу) в адресном пространстве 1 Мбайт. Максимальный размер блока 64 Кбайт, начальный или базовый адрес находится на 16-байтной границе (такая граница называется параграфом). Для обращения к нужной ячейке памяти надо задать базу сегмента и 16-битное расстояние от базы называемое смещением или относительным адресом. Преобразование пары сегмент/смещение (наз. также виртуальным адресом) в физический адрес довольно простое: пусть регистр DS содержит 1234H, а регистр SI содержит 5678H, тогда физический адрес в команде MOV AX (загрузить слово в регистр AX) будет
DSx16 + SI = 12340H + 5678H = 179B8H
Обратите внимание на магическую цифру 64 Кбайт, это объем памяти внутри которого адресация осуществляется с помощью неизменного значения сегментного регистра, т.е. внутри сегмента реализуется линейно адресуемая память.
- Лекция 1. Базовые понятия информации Введение
- Информация, энтропия и избыточность при передаче данных
- Информационные процессы
- Основные структуры данных
- Обработка данных
- Способы представления информации и два класса эвм
- Представление данных в эвм.
- Вопросы и задания
- Лекция 2. Компьютер – общие сведения
- Центральное процессорное устройство
- Устройства ввода/вывода
- Классификация запоминающих устройств
- Оперативная память
- Основные внешние устройства компьютера
- Основные характеристики персональных компьютеров
- Вопросы и задания
- Лекция 3. Многоуровневая компьютерная организация
- Архитектура компьютера
- Классическая структура эвм - модель фон Неймана
- Особенности современных эвм
- Специальное
- Библиотеки стандартных программ и ассемблеры
- Высокоуровневые языки и системы автоматизированного программирования
- Диалоговые ос и субд
- Прикладные программы и case – технологии
- Компьютерные сети и мультимедиа
- Операционные системы
- Лекция 5.Вычислительные системы - общие сведения Введение
- Общие требования
- Классификация компьютеров по областям применения
- Персональные компьютеры и рабочие станции
- Суперкомпьютеры
- Увеличение производительности эвм, за счет чего?
- Параллельные системы
- Использование параллельных вычислительных систем
- Закон Амдала и его следствия
- Назначение процессора и его устройство
- Устройство управления
- Микропроцессорная память
- Основная (оперативная) память - структура адресной памяти
- Интерфейсная часть мп
- Тракт данных типичного процессора
- Команды уу
- Базовые команды
- Трансляторы
- Архитектура системы команд и классификация процессоров
- Микроархитектура процессора Pentium II
- 512 Кбайт
- Вопросы и задания
- Лекция 6 Структурная организация эвм - память Общие сведения
- Верхняя
- Верхняя память (Upper Memory Area) – это 384 Кбайт, зарезервированных у верхней границы системной памяти. Верхняя память разделена на несколько частей:
- Первые 128 Кбайт являются областью видеопамяти и предназначены для использовании видеоадаптерами, когда на экран выводится текст или графика, в этой области хранятся образы изображений.
- Видеопамять
- Иерархия памяти компьютера
- Оперативная память, типы оп
- Логическая организация памяти
- Связывание адресов
- Функции системы управления памятью
- Тэг Строка Слово (байт)
- Способы организации кэш-памяти
- 1. Где может размещаться блок в кэш-памяти?
- 2. Как найти блок, находящийся в кэш-памяти?
- 3. Какой блок кэш-памяти должен быть замещен при промахе?
- 4. Что происходит во время записи?
- Разновидности строения кэш-памяти
- Вопросы и задания
- Лекция 7 Логическая организация памяти Введение
- Адресная, ассоциативная и стековая организация памяти
- Стековая память
- Сегментная организация памяти.
- Косвенная адресация
- Операнд 407 суммируется с
- Типы адресов
- Понятие виртуальной памяти
- Страничное распределение
- Свопинг
- Вопросы и задания
- Лекция 8 Внешняя память компьютера Введение
- Жесткий диск (Hard Disk Drive)
- Конструкция жесткого диска
- Основные характеристики нмд:
- Способы кодирования данных
- Интерфейсы нмд
- Структура хранения информации на жестком диске
- Кластер
- Методы борьбы с кластеризацией
- Магнито-оптические диски
- Дисковые массивы и уровни raid
- Лазерные компакт-диски cd - rom
- Вопросы и задания
- Лекция 9 Основные принципы построения систем ввода/вывода
- Физические принципы организации ввода-вывода
- Интерфейс
- Магистрально-модульный способ построения эвм
- Структура контроллера устройства
- Опрос устройств и прерывания. Исключительные ситуации и системные вызовы
- Организация передачи данных
- Прямой доступ к памяти (Direct Memory Access – dma)
- Логические принципы организации ввода-вывода
- Структура системы ввода-вывода
- Буферизация и кэширование
- Заключение
- Структура шин современного пк
- Мост pci
- Вопросы и задания
- Лекция 10. Bios и его настройки Введение
- Начальная загрузка компьютера
- Вход в bios и основные параметры системы
- Общие свойства – стандартная настройка параметров
- Свойства bios
- Свойства других чипсетов
- Свойства интегрированных устройств
- Свойства слотов pci
- Управление питанием
- Лекция 11 Особенности архитектуры современных вс
- Область применения и способы оценки производительности мвс
- Классификация архитектур по параллельной обработке данных
- Вычислительные Системы
- Параллелизм вычислительных процессов
- Параллелизм на уровне команд – однопроцессорные архитектуры
- Конвейерная обработка
- Суперскалярные архитектуры
- Мультипроцессорные системы на кристалле Технология Hyper-Threading
- Многоядерность — следующий этап развития
- Многопроцессорные архитектуры – параллелизм на уровне процессоров
- Векторные компьютеры
- Использование параллельных вычислительных систем
- Закон Амдала и его следствия
- Вопросы и задания
- Лекция 12 Архитектура многопроцессорных вс Введение
- Smp архитектура
- Mpp архитектура
- Гибридная архитектура (numa)
- Организация когерентности многоуровневой иерархической памяти.
- Pvp архитектура
- Кластерная архитектура
- Проблемы выполнения сети связи процессоров в кластерной системе.
- Лекция 13 Кластерные системы
- Концепция кластерных систем
- Разделение на High Avalibility и High Performance системы
- Проблематика High Performance кластеров
- Проблематика High Availability кластерных систем
- Смешанные архитектуры
- Лекция 14 Высокопроизводительные процессоры
- Ассоциативные процессоры
- Конвейерные процессоры
- Матричные процессоры
- Клеточные и днк процессоры
- Клеточные компьютеры
- Трансгенные технологии
- Коммуникационные процессоры
- Процессоры баз данных
- Потоковые процессоры
- Нейронные процессоры
- Искусственные нейронные сети
- Нейрокомпьютеры
- Процессоры с многозначной (нечеткой) логикой
- Лекция 15 Многомашинные системы – вычислительные сети Введение
- Простейшие виды связи сети передачи данных
- Связь компьютера с периферийным устройством
- Связь двух компьютеров
- Многослойная модель сети
- Функциональные роли компьютеров в сети
- Одноранговые сети
- Сети с выделенным сервером
- Гибридная сеть
- Сетевые службы и операционная система
- Лекция 16. Файловая система компьютера Введение
- Общие сведения о файлах
- Типы файлов
- Атрибуты файлов
- Организация файлов и доступ к ним
- Последовательный файл
- Файл прямого доступа
- Другие формы организации файлов
- Операции над файлами
- Директории. Логическая структура файлового архива
- Разделы диска. Организация доступа к архиву файлов.
- Операции над директориями
- Защита файлов
- Контроль доступа к файлам
- Списки прав доступа
- Заключение
- Лекция 17. Сети и сетевые операционные системы Введение
- Для чего компьютеры объединяют в сети
- Сетевые и распределенные операционные системы
- Взаимодействие удаленных процессов как основа работы вычислительных сетей
- Основные вопросы логической организации передачи информации между удаленными процессами
- Понятие протокола
- Многоуровневая модель построения сетевых вычислительных систем
- Проблемы адресации в сети
- Одноуровневые адреса
- Двухуровневые адреса
- Удаленная адресация и разрешение адресов
- Локальная адресация. Понятие порта
- Полные адреса. Понятие сокета (socket)
- Проблемы маршрутизации в сетях
- Связь с установлением логического соединения и передача данных с помощью сообщений
- Синхронизация удаленных процессов
- Заключение
- Лекция 18. Система счисления и архитектура эвм Введение
- Системы счисления и их роль в истории компьютеров
- «Золотое сечение» и компьютер Фибоначчи
- Геометрическое определение "золотого сечения"
- Алгебраические свойства золотой пропорции
- Рассмотрим теперь "золотую пропорцию"
- Фибонччи и компьютеры
- "Троичный принцип" Николая Брусенцова.
- Список литературы: