- •Архитектура эвм
- •Принцип программного управления
- •Принцип параллельной организации вычисления
- •Микропроцессор 8086
- •Компьютерные шины
- •Логика работы мп
- •Регистры общего назначения (рон)
- •Регистры указатели
- •Сегментные регистры
- •Регистр указатель команд ip
- •Регистр флагов flags
- •Организация оперативной памяти
- •Структура программы на Ассемблере
- •Сегментная организация программы
Логика работы мп
Выполнение программы в Мп осуществляется путем повторения следующих обобщенных операций:
Выборка машинной команды из памяти
Чтение операндов из памяти
Выполнение команды
Запись результата в память
Архитектура МП 8086 позволяет разделить выше перечисленные операции между двумя устройствами в ЦП:
Операционным устройством (ОУ)
Шинным интерфейсом (ШИ)
ОУ – осуществляет непосредственно выполнение машинных команд
ШИ – осуществляет генерацию адреса, выборку команд и операндов, запись результатов.
С этими устройствами программист общается при помощи ячеек памяти внутри МП, которые называются регистрами.
Регистры общего назначения (рон)
Регистр- называют устройство предназначенное для временного хранения информации во время её обработки.
Их особенность в том, что к их содержимому можно обращаться как к 2-х байтному числу, так и к каждому байту отдельно.
В названиях регистра обозначают:
L – low (малые разряды AL, BL,CL,DL)
H-high (старшие разряды AH,BH,CH,DH)
При написании программ можно обращаться к РОН как к целому регистру или к каждой части независимо.
Регистр АХ - первичный аккумулятор.
Является сумматором, применяется для всех операций ввода/вывода, операций над строками и некоторых арифметических операций, а так же как временное хранение информации.
Регистр ВХ - базовый.
Используется для организации адресации в памяти, для арифметических целей. Это единственный регистр общего назначения, который можно использовать в качестве индекса для расширенной адресации.
Регистр СХ - счетчик.
Управляет работой операций для которых требуется повторение и для арифметических действий.
Регистр DX – регистр данных.
Применяется для некоторых операций ввода/вывода и тех операций умножение и деление над большими числами, которые используют регистровую пару DX:AX.
Регистры указатели
Указывают адрес объекта в памяти системы. К их содержимому можно обращаться только как к 2-х байтному числу.
Указатели стека SP.
Используются для работы с данными в стековых структурах. Позволяет временно хранить адреса, а иногда данные. Связан с регистром SS: его содержимое указывает адрес элемента на вершине стека. Может выполнять функции РОН в арифметических и логических операциях.
Указатель базы BP.
Используется как указатель при работе с данными в стековых структурах. Может использоваться в арифметических и логических операциях.
Указатель SI.
Применяется в некоторых операциях над строками в качестве указателя адреса байта или слова, может использоваться в адресации в большинстве арифметических и логических операциях.
Регистр DI – приемник.
Указатель назначения для адреса байта или слова в строковых командах. Может использоваться в адресации арифметических и логических операциях.
Сегментные регистры
Предназначены для осуществления сегментной организации программы. К их содержимому можно обращаться как к 2-х байтному числу так и к каждому байту отдельно. Использование этих регистров в командах имеют строгие ограничения.
Регистр CS- регистр сегмента кода.
Содержит начальный адрес сегмента кода. Этот адрес при сложении с указателем команд IP дает полный адрес команды, которая должна быть принята на исполнение. Его содержимое может быть изменено только при исполнении команд, изменяющих естественный код выполнения программы.
Например: JMP (переход), CALL (вызов подпрограммы), RET (возврат из подпрограммы)
Регистр DS – регистр сегмента данных.
Содержит начальный адрес сегмента данных. Сумма его значений со смещением, заданным в команде, определяет адрес необходимый ячейке памяти. Все прямые и косвенные ссылки, использованные регистры: ВХ, CI, DI определяются относительно регистра DS.
Регистр SS –регистр сегмента стека.
Содержит начальный адрес сегмента стека. Содержимое регистров SP, BP использованные в стековых операциях обрабатывается процессором с учетом имени регистра SS
Регистр ES
Некоторые операции над строками используют этот дополнительный регистр. Для управления адресации памяти.