- •Вопрос 1. Поколения архитектуры эвм. Основные характеристики.
- •Вопрос 2. Области применения и типы эвм. Классификация по быстродействию и областям применения
- •Вопрос 3. Принципы архитектуры Фон-Неймана.
- •Вопрос 4. Пользовательские регистры. Регистры общего назначения.
- •Вопрос 5. Пользовательские регистры. Сегментные регистры.
- •Вопрос 6. Основные характеристики памяти. Адресная, ассоциативная и стековая организация памяти.
- •Вопрос 7. Ассоциативная организация памяти: регистровая косвенная адресация (базовая и индексная)
- •Вопрос 8. Ассоциативная организация: регистровая косвенная адресация со смещением
- •Вопрос 9. Стековая память
- •Вопрос 10. Динамическая память. Статическая память
- •Вопрос 11. Режимы работы кэш-памяти
- •Вопрос 12. Структура эвм. Назначение и структура процессора
- •Вопрос 13. Системы команд. Классификация процессоров в соответствии с системой команд
- •Вопрос 14. Реальный режим процессора типа интел 8086. Сегмент, граница параграфа, смещение
- •Вопрос 15. Защищенный режим работы процессора. Таблицы дескрипторов
- •Вопрос 16. Виртуальный режим работы процессора типа интел 8086
- •Вопрос 17. Прерывания
- •Вопрос 18. Системы ввода-вывода.
- •Вопрос 19. Классификация процессоров. Cisc, risc, vliw, суперскалярные процессоры, misc.
- •Вопрос 20. Особенности risc архитектуры.
- •Вопрос 21. Параллельная обработка. Конвейерная организация. Типы конфликтов.
- •Вопрос 22. Архитектура суперскалярных процессоров. Предварительная выборка команд и предсказание переходов.
- •Вопрос 23. Архитектура эвм с длинным командным словом.
- •Вопрос 24. Процессор ia-64. Особенности построения и работы архитектура ia-64 (Merced)
- •Вопрос 25-26. Основные классы современных параллельных компьютеров. Numa, pvp, кластеры. Основные классы современных параллельных компьютеров. Mpp, smp
- •Массивно-параллельные системы (mpp)
- •Симметричные мультипроцессорные системы (smp)
- •Системы с неоднородным доступом к памяти (numa)
- •Параллельные векторные системы (pvp)
- •Кластерные системы
- •Вопрос 27. Вычислительные системы, классы архитектур.
Вопрос 13. Системы команд. Классификация процессоров в соответствии с системой команд
Система команд — соглашение о предоставляемых архитектурой средствах программирования, а именно: определённых типах данных, инструкций, системы регистров, методов адресации, моделей памяти, способов обработки прерываний и исключений, методов ввода и вывода.
Базовыми командами являются, как правило, следующие:
- арифметические, например «сложения» и «вычитания»;
- битовые, например «логическое и», «логическое или» и «логическое не»;
- присваивание данных, например «переместить», «загрузить», «выгрузить»;
- ввода-вывода, для обмена данными с внешними устройствами;
- управляющие инструкции, например «переход», «условный переход», «вызов подпрограммы», «возврат из подпрограммы».
Оптимальными в различных ситуациях являются разные способы построения системы команд.
Если объединить наиболее часто используемую последовательность микроопераций под одной микрокомандой, то надо будет обеспечивать меньше микрокоманд. Такое построение системы команд носит название CISC (Complex Instruction Set Computer), в распоряжении имеется небольшое число составных команд.
С другой стороны, это объединение уменьшает гибкость системы команд. Вариант с наибольшей гибкостью — наличие множества близких к элементарным операциям команд. Это RISC (Reduced Instruction Set Computer), в распоряжении имеются усечённые, простые команды.
Еще большую гибкость системы команд можно получить, используя MISC подход, построенный на уменьшении количества команд до минимального и упрощении вычислительного устройства обработки этих команд.
Вопрос 14. Реальный режим процессора типа интел 8086. Сегмент, граница параграфа, смещение
В зависимости от режима процессора изменяется схема управления памятью системами и задачами. Процессоры серии ИНТЕЛ могут работать в нескольких режимах. В реальном с модели ИНТЕЛ 8086, в защищенном 8286, в виртуальном – 8486 и старше.
1 пользователь – 1 задачный режим работы (реальный режим)
1 пользователь – много режимом работы (виртуальный режим)
РЕАЛЬНЕ РЕЖИМ РАБОТЫ
Первоначально IBM PC использовался процессор INTEL 8086, который мог выполнять следующие функции:
Использовал 16-разрядные команды, применял 16-разрядные внутренние регистры, мог адресовать 1 МБ памяти, используя для этого 20 разрядов адреса. Всё программное обеспечение было предназначено для этого процессора. Разрабатывалось на основе 16-разрядной системы команд и модели памяти объемом 1 МБ. Пример: MS DOS, Windows. Этот 16-разрядный режим работы был назван риальне режимом.
Недостатки режима: одновременно может выполняться только одна программа (однозадачный режим). Нет никакой встроенной защиты для предотвращения перезаписи ячеек памяти одной программы или ОС другой программой.
Соответственно вот такая организация структуры процессора и памяти привела к ряду особенностей. С помощью 16 разрядного регистра можно записать число 65535. Память объемом 1 МБ. Биты не нумеруются, нумеруются байты.
Соль в том, что по умолчанию сохраняется в регистре DS (регистр данных, то есть es:[ebx] писать на надо)
Чтобы решить эту проблему, память компьютера условно поделена на так называемые сегменты. Сегментом называется область памяти, которая начинается на границе параграфа, то есть с любого адреса, кратного 16 (четыре младших бита равны нулю).
Таким образом, если мы знаем значение сегмента, то легко подсчитать физический адрес в памяти, умножив это значение на 16: если сегмент = 64h, то физический адрес = 64h • 10h = 640h.
Теперь нужно задать смещение (offset) – количество байт от начала заданного сегмента до требуемой ячейки. Итак, абсолютный адрес в памяти вычисляется как сумма номера сегмента, умноженного на 16, и смещения. Сегменты и смещения записываются в командах ассемблера следующим образом:
сегмент:[смещение]
где
• сегмент – это один из сегментных регистров (CS, DS, ES, FS, GS или SS), в который предварительно занесён номер сегмента;
• смещение – это непосредственное значение смещения или регистр общего назначения, в котором хранится значение смещения.