Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ZH 2011 - ОРГАНИЗАЦИЯ ЭВМ.doc
Скачиваний:
42
Добавлен:
20.09.2019
Размер:
5.4 Mб
Скачать

19. Методы адресации и типы данных

Основная функция любого процессора, ради которой он и создается, — это выполнение команд. Система команд, выполняемых процессором, представляет собой нечто подобное таблице истинности логических элементов или таблице режимов работы более сложных логических микросхем. То есть она определяет логику работы процессора и его реакцию на те или иные комбинации внешних событий. Каждая команда, выбираемая (читаемая) из памяти процессором, определяет алгоритм поведения процессора на ближайшие несколько тактов. Код команды говорит о том, какую операцию предстоит выполнить процессору и с какими операндами (то есть кодами данных), где взять исходную информацию для выполнения команды и куда поместить результат (если необходимо).

1) Неявная адресация – команда однозначно определяет адрес операнда.

2) регистровая адресация – адреса оперантов определяют регитсры ( внутренняя часть CPU). Тк регитсров немного, то для адресации операнда обычно достаточно 4-х разрядов. Нет обращения к памяти.

3) Непосредственная адресация – В команде содержится непосредственно сам оперант. Нет обращения к памяти. Удобно использование для const.

4) Косвенная адресация – адресация «адреса»

Косвенная_регистровая - оперант хранится в ячейке памяти адрес который хранится в регистре.

Косвенная_нерегитсровая – в регистре хранится адрес ячейки, в которой хранится адрес ячейки в котором находится оперант

5) Прямая адресация – адрес операнда находится непосредственно в команде. Применялся в первых ЭВМ, сейчас используется редко.

6)Индексная адресация- адрес вычисляется путём суммирования содержимого регистра. Далее аналогично косвенной_регистровой.

7) Автоинкрементная адресация – после завершения операции содержимое регистра ( хранящего адрес) увеличивается на константу.

8)автодекрементная – аналогично. Тольк оуменьшение.

9) Базовая индексная адресация со смещением и маштабированием – адрес формируется как сумма трёх составляющих – содержимого базовог орегитсра, индексного регистра и значения поля смещения. Удобна при работе со списками файлов.

Использование сложных методов адресации позволяет существенно сократить количество команд в программе, но при этом значительно увеличивается сложность аппаратуры.

Типы команд.

  1. Арифметические и логические - целочисленные арифметические и логические операции: сложение, вычитание, логическое сложение, логическое умножение и т.д.

  2. Пересылки данных - операции загрузки/записи

  3. Управление потоком команд - безусловные и условные переходы, вызовы процедур и возвраты

  4. Системные операции - системные вызовы, команды управления виртуальной памятью и т.д.

  5. Операции с плавающей точкой - операции сложения, вычитания, умножения и деления над вещественными числами

  6. Десятичные операции - десятичное сложение, умножение, преобразование форматов и т.д.

  7. Операции над строками - пересылки, сравнения и поиск строк

Типы данных.

Базовой единицей данных является байт.

В процессоре реализована аппаратная поддержка следующих типов данных: чисел, указателей, цепочек.

Физический адрес, выдаваемый процессором на внешнюю шину адреса, является адресом (порядковым номером) байта в адресуемом пространстве памяти. Ширина шины адреса (число линий, число разрядов адреса) п определяет максимальное адресное пространство N=2n. Адрес байта изменяется от 0 до N-1. При п=32 адресное пространство N=232. При ширине шины данных п=32 за одно обращение к памяти передается до 4 байт.

Кроме значения данных длинной в байт используются данные длинной 2 байта - слово и 4 байта - двойное слово.

Информация в памяти располагается так: младшие разряды в младшем байте - в байте с меньшим адресом, старшие разряды в последующих байтах - в байтах с большими адресами.

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

Используются два типа указателей:

близкий - для адресации в текущем сегменте (содержит 32 -разрядное смещение)

дальний - для адресации в новом сегменте (содержит 16 разрядный селектор для выбора нового сегмента и 32 - разрядное смещение в нем).

Цепочка - это последовательность однотипных связанных элементов данных, хранящихся по соседним адресам. Представление цепочечных данных позволяет МП эффективно обрабатывать цепочки практически любой длины: пересылать их, сравнивать, находить внутренние элементы. В процессоре для этого применяются специальные команды.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]