Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MDE_orgvm_v2.docx
Скачиваний:
5
Добавлен:
19.09.2019
Размер:
1.04 Mб
Скачать
  1. Базирование способом суммирования:

В команде адресный код (АК) разделяется на две составляющие:

  • АБ – адрес регистра регистровой памяти, в котором хранится база Б (базовый адрес)

  • C – код cмещения относительно базового адреса

Максимальная адресуемая емкость ОП определяется разрядностью РП.

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

  1. Относительная адресация с совмещением составляющих aи:

Данный способ позволяет увеличить емкость адресной ОП (MОП) без увеличения длины адресного поля команды .

Таким образом:

  1. Индексная адресация

Для работы с массивами удобно использовать индексную адресацию. Схема индексной адресации аналогична схеме базирования методом суммирования, но в этом случае адрес i-го операнда в массиве определяется как сумма начального адреса массива (задаваемого смещением С) и индекса И, записанного в одном из регистров РП, называемым индексным регистром. Адрес индексного регистра AИН (аналогично AБ).

  1. Стековая адресация:

Реализует неявное задание адреса операнда, хотя адрес обращения в стек отсутствует в команде, он формируется схемой управления автоматически по специальному правилу.

19.Принципы организации системы прерывания программ.

Во время выполнения ЭВМ текущей программы внутри машины и в связанной с ней внешней среде (технологический процесс, управляемый ЭВМ) могут возникать события, требующие немедленной реакции на них со стороны машины.

Реакция состоит в том, что машина прерывает обработку текущей программы и переходит к выполнению некоторой другой программы (процедуры), специально предназначенной для данного события. По завершению этой программы ЭВМ возвращается к выполнению прерванной программы.

Процесс прерывания программы

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

Аппаратные прерывания являются следствием внешних событий, асинхронных относительно тактового сигнала системы.

Исключения делятся на отказы, ловушки и выходы из процесса.

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

Ловушка – это исключение, которое возникает непосредственно после выполнения команды. Примером ловушки является прерывание/исключение по команде INT, обрабатываемое пользователем.

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

Основными функциями системы прерывания являются:

  • запоминание состояния прерываемой программы и осуществление перехода к прерывающей программе;

  • восстановление состояния прерванной программы и возврат к ней.

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

Для оценки эффективности систем прерывания могут быть использованы следующие характеристики.

1. Общее число запросов прерывания (входов в систему прерывания).

2. Время реакции – время между появлением запроса прерывания и моментом прерывания текущей программы.

Упрощенная временная диаграмма процесса прерывания

3. Затраты времени на переключение программ (издержки прерывания) равны суммарному расходу времени на запоминание и восстановление состояния программы.

tизд = t3 + tв.

4. Глубина прерывания – максимальное число программ, которые могут прерывать друг друга. Процессы прерывания в системах с различной глубиной прерывания (предполагается, что приоритет каждого последующего запроса выше предыдущего). Если после перехода к прерывающей программе и вплоть до ее окончания прием запросов прекращается, то говорят, что система имеет глубину прерывания, равную 1 (относительная дисциплина обслуживания).

Процессы прерывания с различной глубиной прерывания и дисциплиной обслуживания

20. Регистровые структуры процессоров IA-32, AMD64 (Intel64), IA-64.

IA-32:

В процессорах IA-32 можно выделить следующие группы регистров:

1. Основные функциональные регистры:

  • регистры общего назначения (GPR);

  • указатель команд;

  • регистр флагов;

  • регистры сегментов.

2. Регистры процессора обработки чисел с плавающей точкой (FPU):

  • регистры данных;

  • регистр тегов;

  • регистр состояния;

  • регистр указателей команд и данных FPU;

  • регистр управления FPU.

3. Регистры расширений MMX, SSE.

4. Системные регистры:

  • регистры управления микропроцессора;

  • регистры системных адресов.

5. Регистры отладки и тестирования.

Регистры первых трех групп используются при выполнении прикладных программ, третьей группы – системных операций, четвертой – при отладке и тестировании.

Восемь 32-разрядных регистров (EAX, ECX, EDX, EBS, EBP, ESP, ESI, EDI) предназначены для хранения данных и адресов. Они поддерживают работу с данными разрядностью 1, 8, 16 и 32 бита, битовыми полями длиной от 1 до 32 бит и адресами размером 16 и 32 бита.

Шесть 16-разрядных сегментных регистров (CS, SS, DS, ES, FS, GS) содержат значения селекторов сегментов, указывающих на текущие адресуемые сегменты памяти.

AMD64:

В процессорах x86-64 (AMD64), Intel64 архитектур (рис. 3.6) существующие в х86 регистры общего назначения (GPR) расширены с 32 до 64 бит (RAX, RBX, RCX, RDX, RBP, RSP, RSI, RDI) и к ним добавлены еще 8 новых 64-разрядных регистров (R8–R15). Также 8 новых 128-ми битных регистров (XMM8–XMM15) добавлено в блок SSE, что обеспечивает поддержку SSE2.

IA-64:

В состав регистровых файлов IA-64 входят: 128 регистров общего назначения GPR (64-разрядных); 128 регистров с плавающей запятой FR (82-разрядных); 128 прикладных регистров (в основном 64-разрядных) AR; 64 одноразрядных регистров предикатов PR; 8 регистров переходов BR (64-разрядных); не менее 4-х регистров идентификатора процесса CPUID; счетчик команд IP; регистр маркера текущего окна CFM стека регистров и др.

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