Архитектура микропроцессора
Логическая структура ЦП
Структура адресного пространства внутренней памяти ПК
Основные схемы адресации
Абсолютная адресация
Сегментная адресация
Обращение процессора к ячейке памяти
ВАЖНО ПОМНИТЬ Формирование физического адреса
Достоинства метода адресации сегмент:смещение
Связь сегментов и сегментных регистров
Общая структура регистров общего назначения
Примеры использования регистров неявным способом
Регистры смещений (указателей и индексов)
Регистр флагов
Выполнение команды процессором
126.09K
Category: programmingprogramming

4.1 Архитектура микропроцессора-АКТ

1. Архитектура микропроцессора

Логическая структура ЦП
Обращение к памяти
Цикл выполнения команды
проф. Е.В. Тимощенко

2. Логическая структура ЦП

3. Структура адресного пространства внутренней памяти ПК

Начало
(десятичный
номер килобайта)
Адрес
(шестнадцатеричный
Объем
в
килобайта
х
Назначение
0
00000
640
Основная оперативная
память, включающая
Таблицу векторов
прерывания
Область BIOS
640
A0000
128
Видеопамять (ОЗУ)
768
С0000
192
Расширенная область
(ПЗУ)
960
F0000
64
Основное ПЗУ системы

4. Основные схемы адресации

1)
абсолютный или физический адрес, представляющий собой 20-разрядное
число, прямо указывающее на определенную ячейку ОЗУ;
2)
адрес в системе сегмент:смещение, состоящий из начального адреса
сегмента и значения смещения. Каждая составляющая сегмент:смещение
представляет собой 16-разрядное число.

5. Абсолютная адресация

Например,
десятичное число 1315, шестнадцатеричный эквивалент которого равен
0529Н
Процессор хранит данные в памяти в инверсном виде: младший байт – по
младшему адресу, а старший – по старшему, на 1 больше предыдущего
Расположение байтов слова в памяти компьютера и в регистре процессора

6. Сегментная адресация

Сегменты – это специальные области, определяемые в программе для
хранения разных функциональных частей программы: кода программы
(алгоритма обработки данных), переменных программы (значений данных),
рабочих ячеек для временного хранения промежуточных значений.
В реальном режиме работы процессора используются 3 основные сегмента:
кодовый – CS – содержит адрес инструкции, к которой обращается
ОС для начала выполнения программы,
данных – DS – адресует область переменных
зарезервированных для результатов обработки данных,
и
ячеек,
стека – SS – содержит адрес специальной структуры для временного
сохранения данных или данных, используемых программой в
собственных “вызываемых” подпрограммах.

7. Обращение процессора к ячейке памяти

Сегмент начинается с границы параграфа - с адреса, кратного 16 (10Н).
Например, адрес сегмента 038Е0Н
хранится в сегментном регистре как 038ЕН.
Алгоритм обращения к памяти:
значение в сегментном регистре + смещение + восстановление
шестнадцатеричный нуля младшего разряда сегментного регистра =
физический адрес.
Если в сегменте с начальным адресом 038Е[0]Н команда программы
имеет смещение 0032Н, то физический адрес команды в ОЗУ
038Е[0]Н+0032Н=03912Н

8. ВАЖНО ПОМНИТЬ Формирование физического адреса

Физический Адрес = смещение (IP) +16 * регистр сегмента(CS)
Например,
пусть смещение будет 10Н (в шестнадцатеричной системе счисления),
адрес начала размещения сегмента (содержимое регистра сегмента)
равно 2000Н.
Тогда, в двоичной СС
0000 0000 0001 0000 (смещение)
+ 0010 0000 0000 0000 0000 (номер блока)
0010 0000 0000 0001 0000 (физический адрес)

9. Достоинства метода адресации сегмент:смещение

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

10. Связь сегментов и сегментных регистров

.
Связь сегментов
и сегментных
регистров

11. Общая структура регистров общего назначения

Регистры ЕхХ – 32-разрядные,
хХ – 16-разрядные (каждый состоит из двух 8-битовых регистров
xL - младшие байты (Low),
xH - старшие байты (Hight)

12. Примеры использования регистров неявным способом

регистр АХ, аккумулятор, используется при умножении и делении слов, в операциях
ввода-вывода и в некоторых операциях над строками;
регистр AL используется при выполнении аналогичных операций над байтами, а
также при преобразовании десятичных чисел и выполнении над ними арифметических
операций;
регистр АН используется при умножении и делении байтов;
регистр ВХ, базовый регистр, часто используется при адресации данных в памяти;
регистр СХ, счетчик, используется как счетчик числа повторений цикла и в качестве
номера позиции элемента данных при операциях над строками.
Регистр CL используется как счетчик при операциях сдвига и циклического сдвига
на несколько битов;
регистр DX, регистр данных, используется при умножении и делении слов. Кроме
этого используется в операциях ввода-вывода как номер порта.

13. Регистры смещений (указателей и индексов)

регистр IP содержит смещение в сегменте кодов для следующей команды,
подлежащей исполнению
Регистр SP хранит значение смещения, которое вместе с регистром SS указывает
на текущее слово в стеке.
Регистр BP обрабатывает ссылочные параметры (данные и адреса), которые
передаются между программой и подпрограммой (процедурой) через стек. Также,
как и другие регистры указателей, ВР содержит смещение. Процессор сочетает
это смещение с адресом в SS.
Регистры индексов SI и DI используются для индексированной адресации, а
также в строковых операциях

14. Регистр флагов

OF – флаг переполнения,
DF – флаг направления,
IF – флаг прерывания,
TF – флаг трассировки,
SF – флаг знака,
ZF – флаг нуля,
AF – флаг вспомогательного переноса,
PF – флаг четности,
CF – флаг переноса

15. Выполнение команды процессором

Цикл выполнения команды – это последовательность действий, которая
совершается процессором при выполнении одной машинной команды.
выборка,
декодирование,
выборка операнда из памяти,
выполнение,
запись результата в память.
English     Русский Rules