Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы по СПО (1 часть).docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
449.46 Кб
Скачать
  1. Регистры: определение, классификация. Регистры общего назначения. Сегментные регистры.

Регистр – сверхоперативная память в МП для временного хранения инфы или данных. Регистры: универсальные, универмясные (шучу), специализированные.

По назначению: основные, для работы с мультимедиа(ММХ), для работы с числами с плавающей запятой, управления памяти, управления, отладочные, машинно-специфические. Основные:

1)регистры общего назначения POH

2) сегментные

3)регистры-указатели

4)регистры флагов(состояния проца)

A - хранит результат операций

В – при задании сложных адресов

С – счётчик

D – для хранения данных при умножении и делении.

Сегментные – хранят сегментные части адресов рабочих сегментов в оперативке.

CS – коды команд

DS – сегмент данных

ES – сегмент дополн. Данных

SS – сегмент стека

  1. Стек: определение, назначение. Регистр флагов.

Стек (англ. stack — стопка) — структура данных, в которой доступ к элементам организован по принципу LIFO (англ. last in — first out, «последним пришёл — первым вышел»). Чаще всего принцип работы стека сравнивают со стопкой тарелок: чтобы взять вторую сверху, нужно снять верхнюю.

Добавление элемента, называемое также проталкиванием (push), возможно только в вершину стека (добавленный элемент становится первым сверху). Удаление элемента, называемое также выталкиванием (pop), тоже возможно только из вершины стека, при этом второй сверху элемент становится верхним. Основное назначение стека - временное хранение информации. Как мы уже видели, стек используется для сохранения адреса возврата; программа также может сохранять данные. Если программа хочет использовать регистр, пусть даже сохранить текущие данные, она может послать значение этого регистра в стек. Эти данные сохраняются в стеке и позже могут быть восстановлены.

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

Флаг – логическая переменная размером 1 бит (0/1). Регистр флагов состоит из битов, каждый из которых отвечает за определённое условие.

СF – флаг переноса, равен 1, когда есть перенос из старшего разряда.

PF – флаг чётности, равен 1, когда кол-во единиц – чётно.

AF – флаг полупереноса из 3-го бита в 4-й.

OF – флаг переполнения

ZF – флаг 0

SF – знаковый, равен знаку результата

  1. Способы адресации: регистровая адресация, непосредственная адресация, прямая адресация, косвенная адресация, адресация по базе со сдвигом.

Регистровая адресация применяется, когда промежуточные результаты хранятся в одном из рабочих регистров центрального процессора. Поскольку регистров значительно меньше чем ячеек памяти, то небольшого адресного поля может хватить для адресации.

Непосредственная адресация

В команде содержится не адрес операнда, а непосредственно сам операнд. При непосредственной адресации не требуется обращения к памяти для выборки операнда и ячейки памяти для его хранения. Это способствует уменьшению времени выполнения программы и занимаемого ею объёма памяти. Непосредственная адресация удобна для хранения различного рода констант.

Прямая адресация

Адрес указывается непосредственно в виде некоторого значения, все ячейки располагаются на одной странице. Преимущество этого способа в том, что он самый простой, а недостаток — в том, что разрядность регистров общего назначения процессора должна быть не меньше разрядности шины адреса процессора.

Косвенная адресация

Адресный код команды в этом случае указывает адрес ячейки памяти, в которой находится адрес операнда или команды. Косвенная адресация широко используется в малых и микроЭВМ, имеющих короткое машинное слово, для преодоления ограничений короткого формата команды (совместно используются регистровая и косвенная адресация).

Адресация по базе со сдвигом - комбинация непосредственного и косвенного методов адресации mov ax, [bx+2] mov ax, [bp]+2