Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ответы к экзу по организации ЭВМ.docx
Скачиваний:
4
Добавлен:
21.09.2019
Размер:
2.12 Mб
Скачать

8. Программная модель микропроцессора.

Программная модель – это часть компьютера, оставленная видимой и доступной для программирования на Ассемблере, содержит 32 регистра, доступных в той или иной мере программисту. Регистры делятся на 2 большие группы, в каждой из которых по 16 регистров:

  1. пользовательские – программист использует их при написании своих программ. Они делятся на 3 группы:

    1. 8 32-битных регистров – РОНы. Туда входят ЕАХ, ЕВХ, ЕСХ, EDX, EBP, ESI, EDI, ESP. Первый регистр – аккумулятор, применяется для хранения промежуточных данных, его использование обязательно. Второй – базовый, применяется для хранения базового адреса некоторого объекта в памяти. Третий – счетчик, применяется в командах, производящих некоторые повторяющиеся действия, часто используется неявно и скрыто. Четвертый – регистр данных, хранит промежуточные данные, в некоторых командах используется обязательно и неявно. Шестой и седьмой – регистры для поддержки цепочечных операций, шестой – индекс источника, седьмой – индекс приемника. Пятый и восьмой – регистры для работы со стеком, восьмой – регистр указателя стека, содержит указатель вершины стека в текущем сегменте, пятый – регистр-указатель базы стека, предназначен для произвольного доступа к данным в стеке.

    2. 6 регистров сегментов – CS, DS, SS, ES, FS, GS. Первый – сегмент кода, содержит адрес сегмента программы, к которому имеет доступ микропроцессор. Второй – сегмент данных, содержит обрабатываемые данные. Третий – сегмент стека. Четвертый, пятый, шестой – дополнительные сегменты данных.

    3. 2 регистра флагов – Eflags, EIP. Первый – отдельные биты данного регистра имеют определенное функциональное назначение и называются флагами. Второй – содержит смещение относительно регистра входа. Их делят на 3 группы:

      1. Восемь флагов состояния – флаги определяют состояние по результатам арифметических и логических операций (CF – флаг переноса, ZF – флаг нуля, SF – флаг знака)

      2. Флаг управления – DF определяет направление обработки цепочечной операции.

      3. Пять системных флагов, управляющих вводом/выводом и отладкой.

  2. системные

9. Системы команд.

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

  1. процессоры с RISC-архитектурой – процессоры с сокращенным набором команд

  2. процессоры с CISC-архитектурой – процессоры со сложным набором команд.

10 Наиболее часто используемых команд.

  1. чтение данных (22%)

  2. условные переходы (20%)

  3. сравнение (16%)

  4. запись данных (12%)

  5. сложение (8%)

  6. логическое И (6%)

  7. вычитание (5%)

  8. пересылка регистр в регистр (4%)

  9. вызов подпрограмм (1%)

  10. возврат в подпрограммы (1%).

CISC и RISC-процессоры характеризуются различными показателями производительности. Оба типа обеспечивают достижение максимальных показателей, используя свою систему команд. Для повышения производительности необходимо уменьшить либо число команд в программе (CISC) либо среднее время выполнения (RISC).

CISC характеризуется следующим набором свойств:

  • нефиксированное значение длины команды

  • арифметические действия выполняются одной инструкцией

  • небольшое число регистров.

Примерное количество команд – 100-200.

RISC характеризуется следующим набором свойств:

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

  • одинаковая длина команд облегчает их выборку из памяти, чтение идет за один такт

  • сокращенный набор действий над операндами, размещенными в памяти, используются простые способы адресации, что обеспечить доступ к памяти. Используется большое число РОНов, что уменьшает число обращений к памяти

  • все вычислительные операции выполняются над данными, находящимися в регистрах

  • относительно простые схемы управления, отсутствие микропрограмм внутри процессора.

Типичными представителями CISC является процессор на основе Х86 до Pentium 4. Однако процессоры, начиная с 486, являются CISC с ядром RISC.

Расширения стандартного набора команд.

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

  1. технология MMX – предназначена для поддержки приложений, ориентированных на обработку больших массивов данных целого типа, над которыми выполняются одинаковые операции (для обработки мультимедиа, потоков сетевых данных). Система команд ММХ содержит 57 инструкций и 4 новых типа данных и 8 ММХ-регистров по 64 бита каждый. Позволяет обрабатывать данные по 1, 2, 4 и 8 пакета.

  2. SSE, SSE-2, SSE-3 – обновление технологии ММХ, оперирующие данными вещественного типа для геометрических расчетов в трехмерных приложениях. Инструкции содержат 70 новых команд (144 – для SSE-2). SSE-3 признано облегчить оптимизацию программ под SSE и SSE-2.

  3. 3DNow – аналогично предыдущим, предназначена для ускорения обработки мультимедиа и трехмерной графики. Представляет собой набор из 21 инструкции, используется в AMD.