Функциональная организация микро-ЭВМ и микроконтроллеров. Часть 1: PDP-11. Негода В.Н - 13 стр.

UptoLike

В таблице 2 представлены команды обработки данных. Установка призна-
ков результата в этой таблице отображается одним символом из следующего
набора:
"0" либо "1" - установка в значение 0 или 1;
"-" - неизменное значение;
"+" - установка признака в соответствии с результатом Res выполненной
операции по следующим правилам:
Z = (Res == 0)? 1 : 0;
N = Res[ст];
C устанавается в 1, если есть перенос/заем для арифметических операций
или при сдвиге выдвигаемый из значения операнда бит равен 1;
V устанавливается в 1, если при сдвиге происходит модификация знакового
разряда операнда, либо результат арифметической операции не попадает в
диапазон числа со знаком ( -128..+127 при обработке байтов, -32768..+32767 при
обработке слов).
Обработка массивов байтов и слов эффективно строится на основе автоин-
крементной и автодекрементной адресации, которым соответствуют следуюшие
конструкции языка Си:
*P++ - использование элемента, адресуемого указателем P с последую-
щим продвижением указателя к следующему элементу массива;
*--P - продвижение указателя P к предыдущему элементу массива и по-
следующее использование этого элемента.
Если для реализации указателя P используется регистр, то одна машинная
команда с автоинкрементной или автодекрементной адресацией выполняет как
обращение к элементу массива, так и модификацию указателя.
Для обработки отдельных разрядов и битовых полей используются коман-
ды логических операций и сдвигов. Команды BIS и BIC позволяют установить в 1
и сбросить в 0 разряды, значения которых равны 1 в операнде S. Комнда XOR
позволяет инвертировать заданные разряды регистра R. Например:
BIS #3, R0 ; установка в 1 разрядов R0[1..0]
BIC #4, R1 ; очистка разряда R1[2]
XOR #7, R2 ; инвертирование разрядов R2[2..0]