Группа команд поразрядной обработки данных. 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Группа команд поразрядной обработки данных.



Логические команды:

- ANA R – операция “И” между содержимым аккумулятора и содержимым регистра (A) (A) L (R);

- ANI _ B 2 – операция “И” между содержимым аккумулятора и вторым байтом команды (A) (A) L B2;

- ORA R – операция “ИЛИ” между содержимым аккумулятора и содержимым регистра R (A) (A) V (R);

- ORI _ B 2 – операция “ИЛИ” между содержимым аккумулятора и вторым байтом команды (A) (A) V B2;

- XRA R – операция “ИЛИ-НЕ” между содержимым аккумулятора и содержимым регистра R (A) (A) " (R);

- XRI _ B 2 – операция “ИЛИ-НЕ” между содержимым аккумулятора и вторым байтом команды (A) (A) " B2.

 

Команды сравнения:

- CMP R – операция (A) – (R); если (A) = (R), то Z = 1; если

(А) <(R), то С=1;

- CPI _ B 2 – операция (А) – B2; если (A) = B2, то Z = 1; если

(A)< B2, то С=1.

Команды сдвига:

- RLC – сдвиг влево (каждый бит сдвигается на один разряд влево, а 7 бит переносится в 0 и одновременно записывается в признак (С)) Dm®Dm+1, D7®D0, D7®C;

- RRC – сдвиг вправо (каждый бит сдвигается на один разряд вправо, а 0 бит переносится в 7 и одновременно записывается в признак (С)) Dm+1®Dm, D0® D7, D0®C;

- RAL – сдвиг влево через перенос (каждый бит сдвигается на один разряд влево, 7 бит записывается в признак (С), а бит из (С) записывается в 0 бит) Dm®Dm+1, D7®C, C®D0;

- RAR – сдвиг вправо через перенос (каждый бит сдвигается на один разряд вправо, 0 бит записывается в признак (С), а бит из (С) записывается в 7 бит) Dm+1®Dm, D0®C, C®D7.

 

Команда инверсии содержимого аккумулятора - СМА (А) (Ā).

 

Команды безусловного перехода:

- JMP _ В2_ В3 – записать информацию из второго и третьего байта команды в счетчик команд;

- PCHL – записать содержимое пары регистров HL в счетчик команд.

Команды условного перехода:

JNC – если признак c = 0 JC – еслипризнак c = 1 JNZ – если признак z = 0 JZ – если признак z = 1 JPO – если признак p = 0 JPE – если признак p = 1 JP – если признак s = 0 JM – если признак s = 1 то перейти по адресу, записанному во втором и третьем байтах команды, иначе перейти к следующей команде.  

Команда безусловного вызова подпрограммы:

- CALL _В2_ В3 – вызов подпрограммы с начальным адресом, записанным во втором и третьем байтах команды.

 

 

Команды условного вызова подпрограммы:

- CNZ – если z = 0 - CZ – если z = 1 - CNC – если c = 0 - СС – если c = 1 - СРО – если p = 0 - СРЕ – если p = 1 - СР – если s = 0 - CM – если s = 1 то перейти к подпрограмме с начальным адресом, указанном во втором и третьем байтах команды, иначе перейти к следующей команде  

Команда безусловного возврата из подпрограммыRET.

 

Команды условного возврата из подпрограмм:

- RNZ – если z = 0 - RZ – если z = 1 - RNC – если c = 0 - R С – если c = 1 - R РО – если p = 0 - R РЕ – если p = 1 - R Р – если s = 0 - RM – если s = 1 то возвратиться к команде, следующей за командой вызова подпрограммы, иначе продолжить выполнение подпрограммы.  

 

Команды операций со стеком:

- PUSH B (D, H) – запись содержимого регистровой пары BC (DE,HL) в стек (B,D,H) ®[ УС-1 ], (C,E,L) ®[ УС-2 ], (УС)=(УС)-2;

- PUSH PSW – запись слова состояния в стек (A) ®[УС-1], (F) ®[ УС-2 ], (УС)=(УС)-2;

- POP B (D, H) – запись из стека в регистровую пару BC(DE,HL)

[УС] ® (C,E,L), [УС+1] ®(B,D,H), (УС)=(УС)+2;

- POP PSW – запись слова состояния из стека

[УС] ® (F), [УС+1] ®(A), (УС)=(УС)+2.

Команды управления микропроцессором:

- CMC – инверсия признака (С) (С) ® (С);

- STC – запись 1 в признак (С) 1 ® (С);

- EI – разрешение прерываний;

- DI – запрет прерываний;

- NOP – команда «нет операции»;

- Н L Т – останов.

Ввод-вывод через порты МПС осуществляется специальными командами микропроцессора: IN ADDR и OUT ADDR, где ADDR — адрес внешнего устройства. Так как адрес внешнего устройства указывается в одном байте, то микропроцессор может обмениваться информацией не более чем с 256 внешними устрой­ствами.

Число различных команд микропроцессора составляет 78, и для них зарезервировано 78 имен команд, перечисленных выше. Многие базовые команды из числа 78 порождают несколько раз­личных кодов операций, поэтому общее число кодов команд составляет 244 (см. табл. 1).

Время выполнения команды, оцениваемое числом тактов микро­процессора, составляет 4 – 18 тактов. Для подавляющего числа команд время выполнения команды (число тактов) есть величина постоянная, однако существуют команды, для которых это время может меняться. Такими командами являются команды условного вызова и возврата из подпрограмм. Время выполнения команды зависит от того, выполняется условие или нет. Если условие выполняется, время выполнения команды увеличивается.

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

 

Кросс-средства отладки

Формат ассемблерной строки

 

Разработка и отладка микропроцессорных программ ведется с помощью различных отладочных средств: от оценочных учебных модулей до универсальных аппаратно-программных комплексов. Последнее время фирмами разработчиками МП поставляются аппаратно-программные комплексы, сопрягаемые с персональными компьютерами. Они содержат ряд программ и плату с МП, подключаемую к последовательному или параллельному порту ЭВМ (встречаются оба варианта). При этом реализуются следующие возможности:

- ассемблирование исходного файла;

- моделирование на программном уровне (симуляция) исходного файла;

- моделирование на аппаратном уровне (эмуляция) исходного файла.

В лабораторном практикуме плата с МП отсутствует, поэтому обучение проводится на программном уровне.

Исходный файл прикладной программы пишется в любом текстовом редакторе и ему присваивается расширение. asm. Запись программы на Ассемблере требует соблюдения определенных правил. Программа пишется в виде последовательности команд. Каждая команда записывается в одной строке и имеет четыре поля:

 



Поделиться:


Последнее изменение этой страницы: 2020-10-24; просмотров: 99; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.186.92 (0.011 с.)