Дополнение аккумулятора

CMA <B1>
    7 0

С помощью этой команды производится инвертирование всех разрядов аккумулятора. Команда выполняется в течение одного цикла (4 такта). Значение триггеров признаков при этом не изменяется.

Пример:

 

0823) CMA

Адрес/ регистр Код до выполнения операции Код после выполнения операции
2F 2F
A F2 0D
FL
PC

 


Команды перехода и вызова подпрограмм

 

Команды этой группы позволяют изменять последовательность выполнения команд программы. Существуют два способа изменения этой последовательности. Первый из них называется безусловным. Согласно этому способу последовательность выполнения программы подвергается изменению всякий раз, когда реализуется определенная команда. В соответствие со вторым способом последовательность выполнения команд программы определяется некоторыми условиями, т.е. изменяется только в том случае, когда значение указанного условия совпадает с заданным.

Команды перехода и вызова подпрограмм являются одной из составных частей процесса принятия решений. В результате выполнения команд арифметической и логической обработки данных вырабатываются значения признаков в регистре состояния. Команды перехода и вызова подпрограмм проверяют значения разрядов регистра состояния и определяют последующий ход выполнения программ в зависимости от результата проверки

Команды перехода, называемые также командами ветвления, позволяют организовать в программах циклы и разветвления.

Команды вызова подпрограмм дают возможность сократить объем разрабатываемых программ за счет повторного использования подпрограмм. Наличие в МП стека с указателем стека делает возможным возврат в главную программу после выполнения подпрограммы.

 

Команды переходов

Эти команды занимают в оперативной памяти 3 байта и выполняются за 3 машинных цикла (10 тактов). Во всех этих командах применяется прямая адресация.

При выполнении команды перехода изменяется содержимое счетчика команд PC. Содержимое второго и третьего байтов команды перехода пересылается автоматически в счетчик команд во время фазы выполнения. Тогда при очередном цикле выборки МП извлекает команду из области памяти, на которую указывает 2-й и 3-й байты команды перехода. Таким образом, происходит переход в другую точку программы. Теперь выполняются одна за другой команды новой последовательности. Это продолжается до тех пор, пока не будет опять выполнена команда перехода.

 

а) Переход безусловный

JMP Адрес (PC) <B3><B2> B1
  B2 Мл. байт адреса
  B3 Ст. байт адреса
    7 0

 

После этой команды выполнение программы продолжается с новой исходной точки, т.е. с адреса, содержащегося в байтах В2 и ВЗ команды перехода.

б) Переходы условные

(PC) <B3><B2>, если проверяемое условие выполняется; в противном случае PC (PC )+3, т.е. выполняется следующая команда после команды условного перехода B1 ССС
B2 Мл. байт адреса
B3 Ст. байт адреса
    7 0

 

Значение разрядов ССС команда выбирается в зависимости от проверяемого условия. В МП К580 имеется возможность делать переходы в зависимости от результата проверки следующих условий:

 

Команда перехода Проверяемое условие Значение ССС
JNZ Адрес (Tz) = 0
JZ Адрес (Tz) = 1
JNC Адрес (Tc) = 0
JC Адрес (Tc) = 1
JPO Адрес (Tp) = 0
JPE Адрес (Tp) = 1
JP Адрес (Ts) = 0
JM Адрес (Ts) = 1

 


Примеры:

0806) JMP beep

beep:0A76

Адрес/ регистр Код до выполнения операции Код после выполнения операции
C3 C3
0A 0A
PC 0A76
FL

0A58) JMP beep

beep:0B43

Адрес/регистр Код до выполнения операции Код после выполнения операции
0A58 C3 C3
0A59
0A5A 0B 0B
PC 0A58 0B43
FL

 

0921)JNZ L0

L0: 0A42

Адрес/регистр Код до выполнения операции Код после выполнения операции
C2 C2
0A 0A
PC 0A42
FL 02 (TZ=0)

 


0800) JNZ L0

L0: 09FE

Адрес/ регистр Код до выполнения операции Код после выполнения операции
C2 C2
FE FE
PC
FL 42 (TZ=1)

 

0921) JC L0

L0: 0A42

Адрес/ регистр Код до выполнения операции Код после выполнения операции
DA DA
0A 0A
PC 0A42
FL 03 (TC=1)

 

0921) JC L0

L0: 0A42

Адрес/регистр Код до выполнения операции Код после выполнения операции
DA DA
0A 0A
PC
FL 02 (TC=0)

 








Дата добавления: 2016-03-10; просмотров: 669;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.006 сек.