- •Вопросы по курсу тсис для группы 0032
- •1. Информационная система. Информация.
- •Классификации информационных систем Классификация по архитектуре
- •Классификация по степени автоматизации
- •Классификация по характеру обработки данных
- •Классификация по сфере применения
- •Классификация по охвату задач (масштабности)
- •2. История развития компьютеров и информационных систем.
- •3. Позиционные системы счисления. Перевод чисел из одной системы счисления в другую.
- •4. Арифметика эвм. Представление чисел в форме с фиксированной точкой.
- •5. Сложение в формате с фиксированной точкой. Переполнение.
- •6. Операция вычитания с фиксированной точкой. Дополнительный код числа.
- •7. Умножение и деление чисел в формате с фиксированной точкой.
- •8. Представление чисел в форме с плавающей точкой. Мантисса числа. Характеристика числа.
- •4,72 Х 105; 472 X 103; 4720 X 102микрон или 4,72 х 10-4; 47,2 X 10-5;472 X 10-6км.
- •9. Нормализованные и денормализованные числа.
- •10. Арифметические операции в формате с плавающей точкой.
- •11. Стандарт ieee 754.
- •12. Формат bcd. Представление текстовой информации. Ascii.
- •13. Алгебра логики. Переменные и константы алгебры логики.
- •14. Законы и аксиомы алгебры логики. Логические функции.
- •1. Закон одинарных элементов
- •2. Законы отрицания
- •3. Комбинационные законы.
- •4. Правило поглощения (одна переменная поглощает другие)
- •5. Правило склеивания (выполняется только по одной переменной)
- •15. Конъюнкция. Дизъюнкция. Инверсия. Функционально полная система лф. Функции и-не, или-не, Исключающее или.
- •1. Логическое или (логическое сложение, дизъюнкция):
- •17. Преобразование логических выражений. Склеивание. Минимизация логических выражений.
- •18. Логический элемент. Логическая (комбинационная) схема. Лэ как физическое устройство.
- •19. Обратная связь. Бистабильная ячейка — триггер. Rs-триггер, d-триггер, т-триггер.
- •20. Синхронный триггер. Понятие о синхронизации.
- •21. Узлы эвм. Регистры. Счетчики. Сумматоры. Шифраторы и дешифраторы. Мультиплексоры. Алу.
- •22. Буферные элементы. Шинная организация современного компьютера.
- •23. Понятие архитектуры компьютера. Структура компьютера. Понятие о cisc и risc.
- •24. Регистры общего назначения и их особенности у Intel.
- •25. Команда. Формат команды. Классификация команд. Особенности состава команд у Intel.
- •26. Адресация памяти и ввода-вывода. Циклы обмена между процессором и памятью.
- •27. Абсолютная, прямая и косвенная адресация.
- •28. Автоинкрементная и автодекрементная адресация.
- •29. Стек. Работа стека и его использование.
- •30. Ввод-вывод: программный, по прерываниям и пдп.
- •31. Режимы работы процессора Intel, rm, vm, pm, smm.
- •32. Сегментная и страничная организация доступа к памяти.
- •33. Сегментация памяти в реальном режиме.
- •34. Страничная организация — реализация виртуальной памяти.
- •35. Управление сегментами в защищенном режиме. Дескрипторные таблицы. Дескрипторы сегментов.
- •36. Повышение производительности процессора. Конвейеризация команд и данных. Предсказание переходов. Кэш. Суперскалярность. Многоядерность.
- •37. Понятие шины расширения. Шины pci, pci-X, pci-e.
- •38. Внешние интерфейсы пк. Интерфейс usb.
- •39. Устройства ввода информации.
- •40. Устройства вывода информации.
33. Сегментация памяти в реальном режиме.
В микропроцессорах i8086/88 сегментация памяти осуществляется простым способом. Все адресное пространство в 1 Мбайт разбивается на несколько (от 16 до 65536) смежных блоков памяти. Каждый такой блок может иметь размер от 16 байт до 64 Кбайт и выравнивается на шестнадцатибайтной границе. Блок памяти длиной в 16 байт и выравненный на 16-ти байтной границе называется параграфом. Для обращения к любому адресу в памяти необходимо знать его физический адрес, который в микропроцессорах i8086/88 и реальном режиме работы микропроцессоров x86 совпадает с его линейным адресом.
В общем случае для формирования линейного адреса необходимо знать базу (Base, Segment) и смещение (Offset) этого адреса. В микропроцессорах i8086/88 оба компонента линейного адреса являются шестнадцатиричными.
Для микропроцессоров x86 в реальном режиме работы смещение (Offset) является одновременно эффективным адресом. Эффективные адреса формируются в Intel-совместимых микропроцессорах с помощью регистров данных (смотри VOLIII(6), "Системные регистры центрального процессора".) Эффективный адрес формируется следующим образом.: к восьми или шестнадцатиразрядному смещению в программе добавляется 16-ти разрядное содержимое базового регистра и 16-ти разрядное содержимое индексного регистра. (смотри VOLIII(6) "Классификация регистров данных").
1. Разрядность смещения должна соответствовать разрядности регистра, куда пересылаются данные.
2. Обычно в базовом регистре содержится начальный адрес блока извлекаемых данных, а в индексном регистре - длина извлекаемой записи, умноженная на порядковый номер (от 0 до N-1) записи.
Система команд в микропроцессорах x86 устроена так, что для образования эффективного адреса необходимо обязательное присутствие только одного его компонента. Таким образом любой компонент: база, индекс, смещение -- или даже оба из них могутбыть опущены.
Базовые адреса содержатся в сегментных регистрах микропроцессоров i8086/88 и в регистрах селекторов сегментов в микропроцессорах x86 (смотри VOLIII(6), "Классификация регистров для сегментации и страничной организации памяти".) Эти регистры шестнадцатиразрядные. Однако образующийся в результате сложения базового и эффективного адреса линейный адрес является 20-ти разрядным. Схема формирования 20-тиразрядного адреса из базового и эффективного показана на рисунке E.0.
Рис. E.0. Образование линейного адреса в микропроцессорах i8086/88 и реальном режиме работы микропроцессоров x86.
Базовые адреса выравнены на границах параграфа (смотри предыдущий подраздел). Поэтому трансляция линейного адреса в физический не вызывает проблем.
Примечание: Это справедливо для микропроцессоров i8086/88. В защищенном режиме работы микропроцессоров значение в сегментном регистре не имеет прямой взаимосвязи с реальным адресом в памяти. Кроме того, сомо понятие "параграф" там не используется.
Следует отметить, что в микропроцессоре i8086 максимальное значение физического адреса составляет FFFFFh (или 1Мбайт - 1 байт). Однако величина максимального значения линейного адреса (сумма максимальных значений базового и эффективного адресов) равна:
Таким образом максимальный линейный адрес имеет размер 1,062 Мбайт (то есть на 64 Кбайт больше, чем адресное пространство в 1 Мбайт). Поэтому в микропроцессорах i8086/88 происходит "заворачивание" адреса вокруг границы сегмента. (то есть физический адрес (формула E.1.) будет иметь значение 0FFEFh). В микропроцессоре i80286, в резульате ошибки разработчиков, такого заворачивания нет (смотри раздел Верхняя память). В микропроцессорах i80386 и выше это "заворачивание" можно включить, а можно и выключить, Для включения "заворачивания" необходима аппаратная блокировка линии A20 (A20=0) с помощью порта контроллера клавиатуры. Его состоянием можно управлять программно. Смотри также разделы, посвященные опчиям драйвера Himem.sys.
E.0.2. Особенности сегментации памяти в микропроцессоре i8086 (итоги).
Сегменты памяти определяются только сегментными регистрами.
Начальный адрес сегмента связан с физическим адресом параграфа.
Никаких средств правильности использования сегментов нет.
Размещение сегментов в памяти достаточно произвольно. Ограничение - только выравнивание на границе параграфа.
Сегменты могут частично или полностью перекрываться, или не иметь общих частей.
Программа может обращаться к любому сегменту как для считывания, так и для записи данных и команд.
Для защиты памяти от несанкционированного доступа других программ требуются специальные "внешние" схемы.
Система не делает различий между сегментами данных, кода и стека.
Нет никаких препятсятвий для обращения к физически не существующей памяти.
При обращении к несуществующей памяти результат непредсказуем (все зависит от разработчика материнской платы и другого аппаратного обеспечения компьютера.)
Длина сегмента равна целому числу параграфов.