
- •Архитектура простой микро – эвм, структура простейшей памяти, состав команд.
- •Структура элементарного микропроцессора.
- •Функционирование микро – эвм: выполнение операции сложения.
- •Функционирование микро – эвм: действия на требования прерывания внешнего устройства.
- •Функционирование микро – эвм: использование регистра адреса/данных.
- •Функционирование микро – эвм: использование указателя стека.
- •И нтерфейс с озу.
- •Основные элементы интерфейса портов ввода/вывода.
- •Интерфейс с реальными портами ввода/вывода.
- •Синхронизация прерыванием передачи данных в устройства ввода/вывода.
- •Шины. Основные понятия.
- •Синхронизация шины.
- •Арбитраж шины.
- •Разновидности шин.
- •Разновидности озу.
- •Типы динамической памяти (fpm, edo, bedo, sdram)
- •Разновидности пзу(Постоянная память—rom, from, eprom).
- •Принципы кэширования.
- •Кэширование в процессорах старших поколений.
- •Архитектура микропроцессора intel 8086.
- •Микропроцессор intel 8086: регистры общего назначения, указатель команд, регистр флагов.
- •Внутренние регистры Регистры данных
- •Регистры сегментов
- •Регистры указателей и индексов
- •Указатель команд
- •Сегментация памяти в процессорах intel 8086.
- •Адресация
- •Способы адресации.
- •Режимы для указания адресов переходов.
- •Адресация портов ввода-вывода.
- •Принципы ввода/вывода, ввод/вывод по прерываниям.
- •Блоковые передачи и прямой доступ к памяти.
- •Регистры сегментов. Шесть 16-разрядных регистров содержат значения селекторов сегментов, которые указывают на текущие адресуемые сегменты памяти. Ниже перечислены эти регистры.
- •Режимы работы 32-разрядных процессоров семейства intel.
- •Основные понятия защищенного режима работы.
- •Основные понятия защищенного режима
- •Селекторы и дескрипторы.
- •Многозадачность. Переключение задач.
- •Страничное управление памятью в процессорах Pentium.
- •Страничное управление памятью в процессорах p6.
- •Режим виртуального 8086 (v86 и ev86).
- •Распределение памяти пк.
- •Стандартная память. Верхняя память (uma). Дополнительная память. Стандартная память — Conventional Memory
- •Верхняя память - uma
- •Дополнительная память — Extended и Expanded Memory
- •Основные характеристики озу.
- •Достоверность хранения данных.
- •Процессоры intel 486: пакетный режим передачи данных.
- •Процессоры intel 486: буферы отложенной записи.
- •Процессоры пятого поколения фирмы intel. Основные отличия по сравнению с предыдущими поколениями.
- •Процессоры Pentium
- •Технология mmx. Технология 3dnow!
- •Процессоры 6-го поколения фирмы intel. Основные особенности. Двойная независимая шина.
- •Обзор процессоров шестого поколения
- •Двойная независимая шина
- •Архитектурные принципы построения процессоров.
- •1.Технология cisc
Сегментация памяти в процессорах intel 8086.
Логическая структура памяти PC обусловлена особенностями системы адресации процессоров семейства х86. Процессоры 8086/88, применявшиеся в первых моделях PC, имели доступное адресное пространство 1 Мбайт (20 бит шины адреса). Эти процессоры использовали сегментную модель памяти, унаследованную и старшими моделями в реальном режиме. Согласно этой модели, исполнительный (линейный) адрес вычисляется по формуле Addr=Seg*16+Offset, где Seg и Offset — содержимое сегментного и адресного регистров. Таким образом, обеспечивался доступ к адресному пространству Addr=00000-FFFFFh при помощи 16-битных регистров. Заметим, что при Seg=FFFFh и Offset=FFFFh данная формула даст адрес 10FFEFh, но ввиду 20-битного ограничения на шину адреса эта комбинация в физической памяти указывает на 00FFEFh. Таким образом, адресное пространство как бы сворачивается в кольцо с небольшим «нахлестом».
Адресация
Так как у микропроцессора 8088 указатель команд и адресные регистры имеют по 16 битов, то можно подумать, что он способен адресоваться к памяти объемом не более 64 Кбайт (65 536 байт), т. е. имеет стандартный для 8-битовых микропроцессоров диапазон адресов. Однако на самом деле микропроцессор 8088 всегда генерирует 20-битовые адреса. Он делает это за счет добавления 16-битового смещения к содержимому регистра сегмента, умноженному на 16. Таким образом,
физический адрес = смещение + 16*(регистр сегмента).
В действительности микропроцессор 8088 вместо умножения на 16 использует содержимое регистра сегмента так, как если бы оно имело четыре дополнительных нулевых бита (рис.3). Добавление нулей аналогично умножению, поскольку при каждом сдвиге на одну позицию влево двоичное число удваивается. Следовательно, перемещение значения регистра сегмента на четыре позиции влево умножает его на 16: 2*2*2*2 = 16.
Например, если смещение адреса имеет значение 10H, где суффикс Н обозначает шестнадцатеричное число, а регистр сегмента содержит 2000Н, то микропроцессор 8088 произведет вычисление физического адреса следующим образом (операнды показаны в двоичном виде): 0000 0000 0001 0000 (смещение)
+ 0010 0000 0000
0000 0000 (номер блока)
0010 0000 0000 0001 0000 (физический адрес).
Следовательно, мы получим 20-битовый адрес ячейки памяти 20010H.
Имея в своем распоряжении 20-битовый адрес, микропроцессор 8088 может получить доступ к любому из 1 048 576 байт. (Данное значение называется "мегабайт" (Мбайт); 1 Мбайт = 1024 Кбайт.) Это в 16 раз превышает диапазон адресов микропроцессора 8080!
Результат вычислений адреса называется эффективным адресом ЕА или смещением. (В руководствах фирмы Intel термин "эффективный адрес" применяется в контексте машинного языка, а термин "смещение" (offset) - в контексте языка ассемблера. Слово "смещение" (displacement) означает величину, которая прибавляется к содержимому регистра(ов) для образования ЕА.) Однако окончательный адрес данных определяется EA и соответствующим сегментным регистром — DS, ES или SS.
См. предыдущий билет(регистры сегментов)!