Главная Промышленная автоматика.

liJ Продолжение табл. П4

Мнемоника

Операнды

MaiumniLifi код

DJNZ

адрес

Rr, адрес (г-0-7)

CALL

адрес

RETR

SE[, SEL

MBO MBl RBO

= §1

о a я

bbblOOlO

адрес

niOlrrr I

адрес

aдр10100

адрес

10000011 I 1 1

10010011 I I I

00000101 I 1 I

00010101

1 1 I

11100101

I I I

11110101

I I I

iiooomi

Описание

Комментарии

Если Bb=l,

(PCO-7)адрес

(Rr)*-(Rr)-l

Если содержимое Rr иа О, (PC О -7)*-адрес

рывания поступил. Этот сигнал запускает последовательность обслуживания прерываний, если внешние прерывания разрешены

Переход, если один нз разрядов А установлен в 1.

Управление передается по указанному в .команде адресу, если «Ь» разряд А установлен в 1 Декрементированне содержимого РОН и тестирование.

Содержимое регистра г уменьшается на единицу п тестируется на «нуль». Если регистр содержит только .нули, управление программой передается следующей ко-Манде. Если содер/кимое регистра не нуль, происходит управляемый переход по указанному во втором байте адресу. В этом случае восьмиразрядный регистр адреса обеспечивает возможность адресования к 256 ячейкам текущей страницы

Команды обращения к подпрограмме

((SP))(PC), (PCW4-7) (PCS-10)адрес 8-10 (РС07)ч-адрес 0-7 (PCIl)-DBL

(SP)(SP)-1 (PC)-((SP))

(SP)4(SP)-1 PS((SP))

Вызов подпрограммы.

Содержимое счетчика команд и содержимое разрядов 4-7 регистра состояний засылаются в стек. Ука.эатель стека (содержимое разрядов 0-2 per.i-стра состояний) сохраняется. Управление программой передается в ячейку с адресом, указанным в данной команде. Содержимое П-разряда счетчика омаи,( опрел(!ляетея ноеледней тгмпилои SI-.I.MIi.

После возвращения из подпрограммы выполнение программы продолжается с команды, следующей за кодоидой CALL

Возврат из подпрогра.ммы обслуживания прерываний без восстановления содержимого регистра состояний. Содержимое указателя стека (разряды 0-2 регистра состояний) декрементируется. Содержимое счег-чика команд восстанавливается из стека. Содержимое разрядов 4-7 регистра состояний не восстанавливается

Возврат из подпрограммы обслуживания прерываний с восстановлением содержимого регистра состояний. Указатель стека декрементируется. Содержимое счетчика команд и содержимое разрядов 4-7 регистра состояшнй восстанавливаются из стека

К<).ман;и.1 упранлсния

(D>F)<-0

fDBL)l

(BS)O

Разрешение внешних прерываний. Внешние прерывания разрешаются сигналом ни,зкого уровня на входе прерывания INT

Запрещение внешних прерываний. ОМЭВМ не рса-гирует iKi поступление низкого уровня иа входе 1NT

Выбор нулевого банка (.МВО) памяти программ. Разряд счетчика ко.манд устанавливается в 0. Нулевой банк размещен в ячейках 0-2047 памяти программ

Выбор первого банка памяти (МВ1) программ, П-разряд счетчика команд устанавливается в 1. Первый банк размещен и ичейка.х 2048-4095 памяти программ

Выбор нулевого банка рабочих регистров памяти данных. Разряд 4 регистра состояний устанавливается в 0. Рабочие регистры 0-7 занимают $1чейхи 0-7 памяти данных



55 Окончание табл. П4

Лнемо-нмка

Операнды

Машинный код

Описание

Комментарий

NOP ENTO

STRT

STOP EN

DIS STRT

MOV MOV

TCNT TCNTI

TCNTI T

T, л A, T

11010101 I I I

00000000

I I I

01110101

I I I

01000101

1 • -I 1

01100101

I I I

00100101

I I I

00110101

I I I

01010101

I I 1

01100010

I I I

01000010

I I I

(BS)l

Выбор первого банка рабочих регистров памяти данных. Разряд регистра состояний устанавливается в единицу. Рабочие регистры О-7 занимают ячейки 24-31 па.мяти данных

Нет операции. Программа продолжается со следующей команды

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

Команды работы с таймером/счетчиком

{Т)-{А) {А)(Т)

Запуск счетчика событий. Регистр счетчика событий иикре.ментируется каждый раз, когда иа выводе Т1 происходит переход уровня напрягкения с высоко1-о на низкий

Останов таймера/счетчика событий

Разрешение прерываний по переполнению тай.ме-ра/счетчика событий. Переполнение таймера/счетчика событий запускает последовательность обработки прерываний

Запрещение прерываний при иереполнеиип таймера/счетчика событий

Запуск тай.мера. Накопление происходит в регистре таймера, который инкрементируется через каждые 32 командных цикла. Счетчнк командных циклов начинает счет с нуля

Загрузка таймера/счетчика из аикумулятора

Передача содержимого регистра таймера/счетчика в А

CPL CLR CPL CLR CPL CLR

С F0 F0 F1

10100111 I I I 10000101 I I I 10010101 I I I 10100101

I I I

10110101

I I I

10010111

I I I

KoiManjtH манипуляции с ф (C)NOT(C)

(FO)O

(FO)NOT(FO)

(Fl)-O

(Fl)NOT(Fl)

лажкамй

Инвертирование содержимого разряда переноса

Содержимое флагового разряда (FO) устаи1влив;!ет-ся в О

Инвертирование содержимого флагового разряда (F0)

Содержимое флагового разряда (F1) устанавливается в О

Инвертирование содержимого флагового разряда (F1)

Очистка разряда переноса

Во время выполнения программы разряд переноса может быть установлен в 1 командами ADD, ADDC, RLC, RRC, CRLC, DA. Команда CLRC позволяет обнулить разряд переноса

Приложение 3. Система команд однокристальной микроЭВМ К1814

Табл и и а И,")

Тип операции

Мнемоника

Влияние на 1С

Описание

Выполняемое действие

Пересылки

регистр

регистр

Пересылки

регистр -

память

CLA ТАУ ТУА Т;\М TAMIY

ТАМ7..\

I I I I

Очистить аккумулятор

Пе;реслать содержимое аккумулятора в У-регпстр Переслать содержимое Y-perncTipa в аккумулятор Переслать содержимое аккумулятора н память Переслать содержимое амиумулятора в память, увеличить Y-регистр

Переслать содержимое аккумулятора н намять, очистить аккумулятор

АУ У-+А АОЗУ (X, Y) А~»ОЗУ (X, Y), Y+ly, если Y=15 ITC А-ОЗУ (X, Y), 0-А



Окончание табл.

Тип опергпии!

Мнемоника

Вли >[-

на ТС

Пересы.тки

память

регистр

Х.ЧА

Арифметичес-

АМАЛС

кие операции

SAM AN

I.MAC

DA\AN

CPAIZ

A6AAC

A8AAC

ЛЮЛ.ЛС

Арифметичес-

ALEM

кое орависиие

Al.l-.C.

Логическое

MNL/

e;i;iBiif:HHe

Выпо.чняемгк: /[.риегпмс-

Переслать содержимое памяти li аккумуипор Переслать содержимое иамяги в Y-регистр Поменять содержимое памяти и аккумулятора Сложнгь содержимое аккумулятора и памяти, результат в аккумулятор

Вычесть содержимое яккумуля i ора из со;1ержимо-г) иа мяти, 11езультат в акку.муляго])

Увеличить содержимое памя1-11, резу.чьтат В аккумулятот

Уме;пли!пь содержимое памяти, результат г> аккумулятор

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

Увеличить содержимое Y-рсгистра y.MCHbuiHTb содержимое Y-регистра

Образовать дополнение содержимого аккумулятора до i Сложить содержи.мое аккумулятора с константой 3, результат в аккумулятор

Сложить содержимое аккумулитора с «о-нстантон 8. [)счул;-тат в аккумуляюр

(~л();кип. с(-),че])жнМ11е шлчуму л-/Мс iKunei ни rnji 10, резульга г -н акку>П,1Я i о]) Увсличшь содержимое аккумуля101)а Установить ТС, еглн со,-1епж11мое аккумулятора меньше или ])лвно памяти Уегапон.Нп. Tf, се.пн ri)Tvp;i-:i!\!0,- ак1-:уМу..1Я-11)р.а мешлне И.П1 ]1,-1НН(1 !1,-о:!Ппн1е

Уе-,-1 !1(н>П[ь ТС, если спдер.-кнчое 4-iviinn не jmidio ну;:!;)

ОЗУ (X, Y) -.\ ОЗУ (X, Y)-y ОЗУ (X, Y)A A-t-ОЗУ (X, Y)->-A, если Yslo I-vTC

ОЗУ (X, У)-*Л->Д. если А--Ч)ЗУ. то l-TC ОЗУ (.X, Y)-f 1Л, если Л = 1.5, 1-*ТС

ОЗУ (X, Y) -!-Л, если ОЗУ-О, ) о ОТС Л- 1-А, 1-ТС, если А1, ОТС

Y-t-1-Y, если Y=)5, 1->-ТС Y-1-Y, если Y-IO, 0-.-ТС A-t-1-А, ее.™ А-О, ОТС А + 6->-А, если А 15, 1-vTC

A-F8-M, если А=15, !~-TC

Л I 10 -Л, если Л- IS, 1-,ТС

Если А<03У (Х, Y), 10 I -ТС

Ест А-УС, т.. 1- --ТГ Еел:1 (ЯУ (.X, Y) -/ О, -Hi 1 >[(:.

YNEA

YNLC

DNEZ

Оперлциц с

SBir

разрядами

ТП1Т

памяти

RBIT

Пересылки

константы

TCMIY

Операции

ввода

Операции

SETR

вывода

RSTR

Адресация

ОЗУ данных

COMX

Адресация

ПЗУ программ

CALL

RETN

N N uN

Установить ТС, ecJiii еодиржнмое V рсгмеера не равчп еолери-;нмому а,кьуму.1я i

Уеиишвить тс;, сели со;1ержимое Y-pernopa не. [мне." fkOHCTame

УстанОВить ТС, если входные данные не равны нулю Устаноппп. би-т памяти

Устаиовпть ТС, если уегаиовлен бит памнгн

Сбросить бит памяти

Переслать -константу в Y-penieip

Переслать константу в память, увеличить Y-регистр

Переслать входные данные в аккумулятор

Установить разряд выходного R-порта

Сбросить разряд 1вы,чодного R-.nopia

Переслать содержимое аккумулятора в выходной Q-pe-гистр

Очистить Q-регисрр Загрузить константу в .\-регнсгр Инвертировать содержимое Х-регистра Условный переход, если ТС равен единице

Обращение к подпрограмме, если 1С=1

Возврат из подпрограммы

Загрузить коистаиту в буферный регистр адреса стра-

1ГИЦЫ

Если YA, то 1 1 <;

Если Y-/--C,;, 1о 1-ТС

Если входные данныеО, то 1ТГ.

1-03У (X, Y, И)

Если ОЗУ (Х, Y, В) = 1, то 1-ТС

0->ОЗУ (X, Y, В)

0->ОЗУ (X, Y), Y-fl-Y Входные даниые-*-А

1->R(Y) O-R(Y) A--Q

0-Q СХ ХХ

Если ТС .1, то БРАС~*РЛС, W->CR

Если ТС = 1, -то W~>-CK, СК-РВ, БРАС-РАС

РВ-+-1->.СК, БРАС->РЛС С->БРАС

Примечание. 1 - занесение результата сравнения из АЛУ в ТС,

логической 1 ъ ТС; С-aaiieceirHe переноса пз ет;]ри1его рп.чряда сумматора » ТС; N - заи(сеине если операнды не равны, заносится единица.





0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 [22] 23

0.0053