АЛУ служит для выполнения арифметич. и логических операций над операндами.
АЛУ является операционным блоком, вы-полняющим микрооперации, поступающие из устройства управления.
Логическое устройство (ЛУ):
Все логические операции выполняются по-разрядно, т.е. каждый бит операнда обраба-тывается независимо от других. Для этого ЛУ содержат наборы несвязанных друг с другом логических элементов.
- Дизъюнкция (ИЛИ, логическое сложение).
Х1
1 Y=X1.X2
Х2
3Eh . 2Ch = 3Eh
.00101100
- Конъюнкция (И, логическое умножение).
X1
& Y=X1,X2
X2
3Eh , 2Ch = 2ch
,00101100
- Инверсия (НЕ, логическое огтрицание).
__
X1 1 X1
__ _______
3Eh = C1h 00111110 = 11000001
- Исключающее ИЛИ (сумма по модулю 2, неравнозначность).
X1
M2 Y=X1ÅX2
X2
__ __ __
Y=X1,X2.X1,X2
3EhÅ2Ch
Å00101100
00010010 _ _
Y=1,0.1,0 = 1.0 = 1
Арифметическое устройство (АУ):
Арифметическое устройство (АУ).
Второй операнд
___
первый преобразова- ПК/ОК
операнд тель кода
+1
сумматор
Результат
Арифметические операции выполняются сумматором дополнительного кода.
Арифметические операции: +, -, *, /.
Сложение:
Знаковые разряды обрабатываются как обычные разряды числа.
65+(-28)=37
зн 64 32 16 8 4 2 1
7 6 5 4 3 2 1 0
+65 0 1 0 0 0 0 0 1 ДК
-28 1 0 0 1 1 1 0 0 ПК
1 1 1 0 0 0 1 1 ОК
+0 0 0 0 0 0 0 1
1 1 1 0 0 1 0 0 ДК
+11100100
1 00100101 ДК
Проверка: зн 64 32 16 8 4 2 1
0 0 1 0 0 1 0 1 ДК=ПК
Вычитание:
Эта операция заменяется на операцию с-ложения уменьшаемого и обратного кода вычитаемого с последующим сложением результата с единицей.
65-(-28)=93
01000001-11100100=01000001+00011011+1=
+00011011
+00000001
01011101 ДК
Проверка: зн 64 32 16 8 4 2 1
0 1 0 1 1 1 0 1 ДК=ПК
Операция умножения выполняется с по-мощью операции сложения и сдвига влево. Операция деления выполняется с помощью операции вычитания и сдвига вправо. АЛУ МП содержит регистр сдвига. 57. Регистр флагов. Назначение флагов. По результату АЛУ формирует признаки результата – флаги, которые сохраняются в регистре флагов. Структура регистров флагов: 11 10 9 8 7 6 5 4 3 2 1 0 OF SF ZF AF PF CF CF – флаг переноса. CF=1, если операция сложения приводит к переносу из старше- го (знакового) разряда или заему при вы-полнении операции вычитания. PF – флаг четности. PF=1, если младшие 8 разрядов результата содержат четное коли-чество единиц. AF – флаг доп. переноса (полупереноса). AF=1, если был перенос (заем) из младшей тетрады в старшую, т.е. из 3 разряда в 4. Используется при обработке 2-10 данных. ZF – флаг нуля. ZF=1, если все биты ре-зультата = 0. SF – флаг знака. SF=1, если результат – от-рицательное число, SF=0, если результат – положительное число, либо 0. Флаг SF при-нимает значение знакового разряда числа. OF – флаг переполнения. OF=1, если при выполнении арифметической операции над числами со знаком происходит пере-полнение разрядной сетки. OF=0, если есть перенос в знаковый разряд и из зна- кового, или нет переноса в знаковый раз- ряд и из знакового. Пример: зн 64 32 16 8 4 2 1 7 6 5 4 3 2 1 0 +120 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 OF=1 CF=0 PF=1 + 0 1 1 1 1 0 0 0 AF=1 ZF=0 SF=1 1 1 1 1 0 0 0 0 58.Режимы работы МП. Реальный режим. Защищенный режим. МП 80286+ способны работать в двух ре-жимах: 1)Режим реальных адресов (реа-льный режим), 2)Режим защищенной па- мяти (защищенный режим). Реальный режим работы. МП рассматривается как МП 8086, но более быстродействующий и с расширенным на-бором команд. *Шина адреса МП 20 бит. Объем доступной памяти 1 МБ (220). *Размер сегмента – фиксированный 64 КБ. *Допускается однозадачная работа. *В реальный режим работы МП переклю-чается по сигналу “сброс”. Защищенный режим работы: При обращении к памяти может исполь-зоваться вся шина адреса МП, т.е. досту- пен весь объем памяти компьютера. *Размер сегмента – любой (для програм- мы – фиксированный). *Сегмент может делиться на страницы. Стандартный размер страницы 4 КБ. *Допускается многозадачная обработка данных. *Защита памяти с помощью 4-уровневого механизма привилегий. Самый высокий уровень привилегий – нулевой – у ядра ОС (супервизор). Самый низкий – третий – у пользовательских программ. 59.Сегментированная модель памяти. Если в ОП имеется 2k ячейки, то для адре-сации ячейки нужен k-разрядный адрес. Уникальный адрес байта памяти называет- ся физическим адресом или абсолютным. Физический адрес МП выставляет на шину адреса. При большем объеме памяти большей бу- дет и разрядность физического адреса. Это приводит к увеличению длины команды и программы в целом. Чтобы исключить зависимость длины ко-манды от объема ОП компьютера, память условно делят на участки, называемые сегментами. Начальные адреса сегментов могут быть любыми, их назыв. базовыми адресами. БА – это ФА первой ячейки сегмента. На размер сегмента накладывается ограни-чение. Ограничение размера сегмента оз-начает, что адрес в сегменте ≥ 0, но ≤ 2m-1 (0≤offset≤2m-1). Адрес байта в сегменте называется смеще-нием (относительный адрес, исполнитель-ный адрес, эффективный адрес), т.е. адрес ячейки, отсчитанный от начала сегмента. В команде указыв. относительный адрес и для его хранения достаточно m разрядов. При этих условиях ФА ячейки памяти рас-считывается по формуле: ФА=БА+offset. 60.Сегментные регистры. Диспетчер памяти. Диспетчер памяти состоит из блока сегме-нтации и блока страничной адресации. Он осуществляет формирование ФА. Сегментированная память представляет собой набор сегментов, характеризуемых определенными атрибутами: - расположение (определяется БАом) - размер (определяется режимом работы микропроцессора). - тип: - программный сегмент (сегмент кода). - сегмент данных. - сегмент стека. - характеристика защиты. МП содержит 6 16-разрядных сегментов регистров, которые хранят селекторы сегментов. По селектору диспетчер памяти формирует БА сегмента. 15 0 сегментный регистр програм-много сегмента сегментный регистр сегмента данных. сегментный регистр доп. сег-мента данных. сегментный регистр сегмента стека. сегментный регистр доп. сег-мента данных. сегментный регистр доп. сег-мента данных. Селектор в CS обеспечивает обращение к текущему программному сегменту. Селектор в SS обеспечивает обращение к текущему сегменту стека. Селекторы в DS, ES, GS, и FS обеспечивают обращение к текущим сегментам данных. При запуске программы управление полу-чает спец. программа ОС – загрузчик, ко-торая определяет свободные сегменты в ОП, обеспечивает копирование проги из внешней памяти в эти сегменты и загружа- ет селекторы в сегментные регистры. Селектор сегмента данных присваивается глобальной константе @data. MOV AX, @data MOV DS, AX Наши рекомендации |