Архитектура микроконтроллера Intel 8051. Горюнов А.Г - 15 стр.

UptoLike

15
1.2.1 Арифметико-логическое устройство
8-битное арифметико-логическое устройство (ALU) может
выполнять арифметические операции сложения, вычитания,
умножения и деления; логические операции И, ИЛИ, исключающее
ИЛИ, а также операции циклического сдвига, сброса, инвертирования
и т.п. К входам подключены программно-недоступные регистры T1 и
T2, предназначенные для временного хранения операндов, схема
десятичной коррекции (DCU) и схема формирования признаков
результата операции (PSW) [1, 3].
Простейшая операция сложения используется в ALU для
инкрементирования содержимого регистров, продвижения регистра-
указателя данных (RAR) и автоматического вычисления следующего
адреса резидентной памяти программ. Простейшая операция
вычитания используется в ALU для декрементирования регистров и
сравнения переменных.
Простейшие операции автоматически образуют ―тандемы‖ для
выполнения таких операций, как, например, инкрементирование 16-
битных регистровых пар. В ALU реализуется механизм каскадного
выполнения простейших операций для реализации сложных команд.
Так, например, при выполнении одной из команд условной передачи
управления по результату сравнения в ALU трижды инкрементируется
счѐтчик команд (PC), дважды производится чтение из RDM,
выполняется арифметическое сравнение двух переменных,
формируется 16-битный адрес перехода и принимается решение о том,
делать или не делать переход по программе. Все перечисленные
операции выполняются всего лишь за 2 мкс.
Важной особенностью ALU является его способность оперировать
не только байтами, но и битами. Отдельные программно-доступные
биты могут быть установлены, сброшены, инвертированы, переданы,
проверены и использованы в логических операциях. Эта способность
достаточно важна, поскольку для управления объектами часто
применяются алгоритмы, содержащие операции над входными и
выходными булевыми переменными, реализация которых средствами
обычных микропроцессоров сопряжена с определенными трудностями.
Таким образом, ALU может оперировать четырьмя типами
информационных объектов: булевыми (1 бит), цифровыми (4 бита),
байтными (8 бит) и адресными (16 бит). В ALU выполняется 51
различная операция пересылки или преобразования этих данных. Так
как используется 11 режимов адресации (7 для данных и 4 для
адресов), то путем комбинирования операции и режима адресации
базовое число команд 111 расширяется до 255 из 256 возможных при
однобайтном коде операции.