Лекции Глотова А.Н. (1092061), страница 10
Текст из файла (страница 10)
Признаки состояния МП не изменяютсяв процессе выполнения этих команд.MOV R1, R2 (mov register) - передать из регистра в регистр┌───┬─────┬─────┐│0 1│D D D│S S S│R1 <- R2└───┴─────┴─────┘Содержимое регистра R2 копируется в регистр R1. При этом староесодержимое R1 уничтожается, а содержимое R2 не меняется.DAX RP (load A indirect) - загрузить А с косвенной адресацией┌───┬───┬───────┐│0 0│R P│1 0 1 0│A <─ (RP)└───┴───┴───────┘Содержимое ячейки памяти, адрес которой содержится в паре адресуемыхкомандой регистров, загружается в Аккумулятор.STAX RP (Store A indirect)┌───┬───┬───────┐│0 0│R P│0 0 1 0│(RP) <─ A└───┴───┴───────┘Содержимое Аккумулятора загружается в ячейку памяти, адрес которойсодержится в указанной паре регистров.PUSH RP - загрузить в стек┌───┬───┬───────┐│1 1│R P│0 1 0 1│(SP) <- RP;└───┴───┴───────┘SP <- SP-2Содержимое пары регистров загружается в стек.
При этом значениеуказателя стека уменьшается на 2.722) ГРУППА КОМАНД АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ.Группа команд арифметических операций выполняет такие операции,каксуммированиеINCrementилиADD,вычитаниевычитаниеединицыSUBstract,-добавлениеDECrement.Этаединицыгруппа-командадресует только один из операндов, второй операнд всегда находится ваккумуляторе. В результате выполнения команд этой группы формируетсяряд признаков.ADD R (add register) - сложить с регистром┌─────────┬─────┐│1 0 0 0 0│S S S│A <─ A + R└─────────┴─────┘Содержимое Аккумулятора суммируется с содержимым регистра.
Результатсохраняется в Аккумуляторе. Предыдущее значение А уничтожается, асодержимое регистра не меняется.ADD M (add memory) - сложить с памятью┌───────────────┐│1 0 0 0 0 1 1 0│A <─ A + (HL)└───────────────┘Содержимое А суммируется с содержимым ячейки памяти по адресу,содержащемуся в паре HL.ADI data (add immediate) - сложить с непосредственным операндом┌───────────────┐ ┌─────────┐│1 1 0 0 0 1 1 0│ │ D A T A │A <─ A + (byte 2)└───────────────┘ └─────────┘Содержимое А суммируется с непосредственным операндом, содержащемсяво втором байте команды.ADC R (add register with carry) - сложить с регистром и с переносом┌─────────┬─────┐│1 0 0 0 1│S S S│A <─ A + R + CY└─────────┴─────┘Содержимое А суммируется с содержимым регистра R и с содержимымразряда CY регистра признаков.SBI data (substract immediat with borrow) - вычестьнепосредственный операнд с заемом┌───────────────┐ ┌─────────┐│1 1 0 1 1 1 1 0│ │ D A T A │A <─ A - (byte 2) - CY└───────────────┘ └─────────┘DAD (add register pair to H and L) - сложить содержимоерегистров с двойной точностью┌───┬───┬───────┐│0 0│R P│1 0 0 1│ HL <─ HL + RP└───┴───┴───────┘733) ГРУППА КОМАНД ЛОГИЧЕСКИХ ОПЕРАЦИЙ.Группа команд логических операций содержит команды, реализующиеоперации И (AND), ИЛИ (OR), исключающее ИЛИ (EXCLUSIVE OR), а так жесравнение (COMPARE) над данными.
Так же как команды арифметическихопераций, эти команды адресует только один из операндов, второйоперанд всегда находится в аккумуляторе. Результат операцииобразуется в аккумуляторе.ANA R - поразрядное логическое сложение с А┌───┬─────┬─────┐│1 0│1 0 0│S S S│ (A) <- (A) AND (R)└───┴─────┴─────┘CMP M - Сравнение с памятью┌───────────────┐│1 0 1 1 1 1 1 0│ (A) <- M(HL)└───────────────┘Содержимое ячейки памяти, адрес которой хранится в HL вычитается изсодержимого аккумулятора.
Результат нигде не сохраняется. Изменяетсятолько содержимое регистра признаков.Операция служит для сравнениядвух чисел и организации условных переходов по этому признаку.RLC – Циклический сдвиг содержимого A влево┌───────────────┐│0 0 0 0 0 1 1 1│ A <- Сдв.лев A└───────────────┘СодержимоеAсдвигаетсявлево.Содержимоестаршегоразрядаперемещается в младший.4) ГРУППА КОМАНД ВЕТВЛЕНИЯ.Группакомандветвленияобразуетсянаборомусловныхибезусловных команд перехода JUMP и JUMP IF, команд вызова подпрограммCALL и команд возврата RETURN. Группа команд JUMP IF используетсятогда, когда по результату выполнения некоторой операции выбираетсянаправление дальнейшего хода программы. Команды CALL и RETURN служатдля организации связи основной программы с подпрограммами, т.е.
для74входа в подпрограмму и последующего возврата к основной программе. ВМП системах команды этой группы получили широкое применение, так какпоподпрограммамумножения,выполняютсяделения,вычислениякакарифметическиенекоторыхфункций,операциитакитипаоперацииввода - вывода.JMP A16 - безусловный переход┌───────────────┐ ┌───────┬───────┐│1 1 0 0 0 0 1 1│ │A16│ PC <- A16└───────────────┘ └───────┴───────┘Происходит переход по адресу A16, указанному в команде (т.е. значениеA16 загружается в счетчик команд)J(COND) A16 - переход по условию┌───┬─────┬─────┐ ┌───────┬───────┐│1 1│C N D│0 1 0│ │A16│ PC <- A16 \/ PC <- PC + 3└───┴─────┴─────┘ └───────┴───────┘Если условие COND (Z, NE и др.) выполняется, то происходит переход поадресу A16, указанному в команде (т.е.
значение A16 загружается всчетчиккоманд),еслиусловиеневыполняется,товыполняетсяследующая по очереди команда.В командах условного перехода 3-х разрядный код CND задает в 3-хбайтной команде условие передачи управления по адресу, указанному вкоманде. Возможны задания 8 вариантов условия переходов:- по наличию переноса(C);- отсутствию переноса(NC);- нулевому результату(Z);- ненулевому результату(NZ);- положительному результату(P);- отрицательному результату(M);- четному числу единиц результата(PE);- нечетному числу единиц результата (PO);75Например: условный переход по нулевому результату JZ 5E46h┌───────────────┐ ┌───────┬───────┐│1 1 0 0 1 0 1 0│ │5E46h│ PC <- 5E46h└───────────────┘ └───────┴───────┘Если признак z установлен в 1 (т.е. был нулевой результат),происходитпереходпоадресу5E46h,указанномувкомандето(т.е.значение 5E46h загружается в счетчик команд).
Если признак z сброшенв0(т.е.былненулевойрезультат),товыполняетсяследующаяочереди команда (значение счетчика команд увеличивается на три).RST N - обслужить программное прерывание┌───┬─────┬─────┐│1 1│N U M│1 1 1│└───┴─────┴─────┘Текущее значение счетчика команд загружается в стек, а управлениепередается по адресу равному N X 8, где N - номер прерывания, числоот 0 до 7.5) ГРУППА КОМАНД УПРАВЛЕНИЯ.Группу команд управления образуют команды, управляющиепроцедурами ввода - вывода информации, операциями со стеком, икоманды проверки текущего состояния процессора.EI - разрешить прерывание┌───────────────┐│1 1 1 1 1 0 1 1│ (РПР) <- 1└───────────────┘Разрешает прерывание программы.
Устанавливает триггер разрешенияпрерывания РПР в 1.DI - запретить прерывание┌───────────────┐│1 1 1 1 0 0 1 1│ (РПР) <- 0└───────────────┘Запрещает прерывание программы. Устанавливает триггер разрешенияпрерывания РПР в 0.HLT - Останов┌───────────────┐│0 1 1 1 0 1 1 0│└───────────────┘Переводит процессор в режим останова.по76NOP - Пустая операция┌───────────────┐│0 0 0 0 0 0 0 0│└───────────────┘Не выполняет никаких действий. Используется для организациипрограммных задержек или для замещения других команд, подлежащихудалению.9.5. СОСТАВ МПК КР580МПККР580,выполненныйхарактеризуетсяпоархитектурнымn-МДПиединством,ТТЛШ-котороетехнологии,обеспечиваетсяавтономностью и функциональной законченностью отдельных микросхем,унификациейихинтерфейса,электрическойпрограммируемостью,совместимостью.фиксированныйнаборкоманд,ихлогическойВосьмиразряднаябольшойвыбориорганизация,периферийныхмикросхемразличного назначения, относительно высокое быстродействие, умеренноепотреблениесозданиимощностисредствавтоматики,обеспечиваютвычислительнойконтроллеровМПКширокоетехники:измерительныхприменениеустройствприборовиприлокальнойпериферийныхустройств, микро - ЭВМ для управления технологическими объектами иизмерительными системами.МСКР580ВМ80А-фунциональнопараллельный8-разрядныйприменяетсявкачествеМПсзаконченныйфиксированнойцентральногопроцессораоднокристальныйсистемойвкоманд,устройствахобработки данных и управления.МС КР580ВВ51А - универсальный синхронно – асинхронный приемо передатчик(УСАПП),последовательногоустройством,предназначенпротоколаспособнымобменадлямеждузапрограммироватьаппаратнойМПКР580ВМ80даннуюреализацииилидругиммикросхемуна77требуемыйрежимработы,иканаламипоследовательнойпередачидискретной информации.МСУСАППпреобразуетпараллельныйкод,полученныйотЦП,впоследовательный поток символов со служебными битами и выдает этотпоток в последовательный канал связи с заданной скоростью, а так жевыполняет обратное преобразование: последовательный поток символов впараллельное8-разрядноеслово.Передаваемаяипринимаемаяинформация при необходимости может контролироваться на четность илинечетность.МС УСАПП программируется на выполнение почти всех применяющихсявнастоящеевремяпротоколовпоследовательнойпередачиданныхиработает в двух режимах: синхронном и асинхронном.
ПрограммированиеМСнатотилисоответствующиеинойрежимрегистрыработысловвыполняетсяинструкциизаписьюрежима,вслужебныхсинхросигналов и инструкции команды.Максимальнаяпоследовательномускоростьканалуприема/передачи64кБод,минимальнаяинформациинепоограниченаиопределяется внешними устройствами.Рассмотримпоследовательнойодинизпередачинаиболееданныхраспространенных-интерфейсстандартовстандартаRS232(отечественный аналог "Стык С2").Последовательный интерфейс RS232.Стандартный формат асинхронной последовательной передачи данных.Используемый в ЭВМ и ВУ формат содержит n пересылаемых битовинформации и 3 - 4 дополнительных бита: стартовый бит, бит контроляпо четности (или нечетности) и 1 или 2 стоповых бита (рисунок).78───────┐┌─────┬─────┬─ ...
───┬─────┬─────┬─────┬───────нет пе-││ 1 │ 2 │n - 1│ n │││нет пересылки└──┬──┴─────┴─────┴─ ... ───┴─────┴──┬──┘ │ресылки│ (______________ _____________) │└─ стоповый│V│бит│n информационных битов└─────── бит└─ стартовый битконтроляРисунок 9.7Когдапередатчикбездействует,налиниисохраняетсяуровеньсигнала логической 1.
Передатчик может начать пересылку информации влюбой момент времени посредством генерирования стартового бита, т.е.переводалиниивсостояниелогического0навремя,точноравноевремени передачи бита. Затем происходит передача информационных битовначинаясмладшегозначащегобита,закоторымиможетследоватьдополнительный бит контроля.
Далее с помощью стопового бита линияпереводится в состояние лог. 1. При единичном бите контроля стоповыйбитнеизменяетсостояниелинии.Состояниелогической1должноподдерживаться в течении промежутка времени, равного 1 или 2 временипередачи бита.Промежуток времени от начала стартового бита до конца стоповогобита называется кадром. Новый стартовый бит может быть послан в любоймоментпослеокончаниястоповогобита.Влинияхпередачиданныхпередатчик и приемник должны быть согласованы по всем параметрамформата,приемникевключаяноминальноеустанавливаетсявремяпередачигенераторбита.Длясинхроимпульсов,этоговчастотакоторого должна совпадать с частотой генератора передатчика. Крометого для обеспечения оптимальной защищенности сигнала от искажения,шумов и разброса частоты синхроимпульсов приемник должен считыватьпринимаемый бит в середине его длительности.МСКР580ВИ53-трехканальныйпрограммируемыйтаймер,79предназначен для организации работы микропроцессорных систем в режимереальноговремени.МСформируетсигналысразличнымивременнымипараметрами.МСКР580ВВ55Апараллельной-программируемоеинформации,применяетсявустройствовводакачествеэлемента–выводаввода-вывода общего назначения, сопрягающего различные типы периферийныхустройств с магистралью данных систем обработки информации.