это быстро и бесплатно
Оформите заказ сейчас и получите скидку 100 руб.!
Ознакомительный фрагмент работы:
Микросхемы MCS-51 содержат в своем составе “булевый” процессор (табл.3).
Таблица 3 – Булевы операции
| Мнемокод | Описание |
| CLR С | (С) <- 0 |
| CLR bit | (bit) <- 0 |
| SETB С | (С) <- 1 |
| SETB bit | (bit) <- 1 |
| CPL С | (С) <- NOT(С) |
| CPL bit | (bit) <- NOT (bit) |
| ANL С, bit | (С )<- (C) / (bit) |
| ANL С, /bit | (С) <- (C) / NOT(bit) |
| ORL С, bit | (С) <- (C) / (bit) |
| ORL С, /bit | (С) <- (C) / NOT(bit) |
| MOV С, bit | (С) <- (bit) |
| MOV bit, C | (bit) <- (C) |
Внутреннее ОЗУ имеет 128 прямо адресуемых бит. Пространство SFR может также поддерживать до 128 битовых полей. Битовые инструкции осуществляют условные переходы, пересылки, сброс, инверсии, операции “И”, “ИЛИ”. Все указанные биты доступны в режиме прямой адресации.
Адреса операций переходов обозначаются на языке ассемблера меткой либо реальным значением в пространстве памяти программ (табл.4). Адреса условных переходов ассемблируются в относительное смещение – знаковый байт, прибавляемый к программному счетчику PC в случае выполнения условия перехода. Границы таких переходов лежат в пределах между -128 и +127 относительно первого байта, следующего за инструкцией. В PSW отсутствует флажок нуля, поэтому инструкции JZ и JNZ проверяют условие “равно нулю” тестированием данных в аккумуляторе.
Таблица4.4 –Инструкции переходов
| Мнемокод | Описание |
| LJMP ad16 | Длинный безусловный переход по всей памяти |
| AJMP ad11 | Безусловный переход в пределах страницы 2 кбайт |
| SJMP rel | Безусловный переход в пределах страницы 256 байт |
| JMP @A+DPTR | Безусловный переход по косвенному адресу |
| JZ rel | Переход, если нуль |
| JNZ rel | Переход, если не нуль |
| JC rel | Переход, если бит переноса установлен |
| JNC rel | Переход, если бит переноса не установлен |
| JB bit, rel | Переход, если бит установлен |
| JNB bit, rel | Переход, если бит не установлен |
| JBC bit, rel | Переход, если бит установлен со сбросом бита |
| DJMZ Rn, rel | Команда цикла |
Продолжение табл4.4
| DJNZ ad, rel | Команда цикла |
| CJNE: A, ad, rel | Сравнение аккумулятора с байтом и переход, если не равно |
| CJME A, #d, rel | Сравнение аккумулятора с константой и переход, если не равно |
| CJNE: Rn, #d, rel | Сравнение регистра с константой и переход, если не равно |
| CJNE: @Ri, #d, rel | Сравнение байта памяти с константой и переход, если не равно |
| LCALL ad16 | Длинный вызов подпрограммы во всей памяти |
| ACALL ad11 | Вызов подпрограммы в пределах страницы 2 кбайт |
| RET | Возврат подпрограммы |
| RETI | Возврат подпрограммы обработки прерывания |
| NOP | Пустая операция |
Существует три вида команды безусловного перехода – SJMP, LJMP, AJMP, различающиеся форматом адреса назначения. Инструкция SJMP кодирует адрес как относительное смещение и занимает 2 байта. Дальность перехода ограничена диапазоном от -128 до +127 байт относительно инструкции, следующей за SJMP. В инструкции LJMP используется адрес назначения в виде 16-битной константы. Длина команды составляет 3 байта. Адрес назначения может располагаться в любом месте памяти программ. Команда AJMP использует 11-битную константу адреса. Команда состоит из 2 байт. При выполнении этой инструкции младшие 11 бит адресного счетчика замещаются 11-битным адресом из команды. 5 старших бит PC остаются неизменными. Т.е., переход может производиться внутри двухкилобайтного блока, в котором располагается инструкция, следующая за командой AJMP.
Существует два вида команды вызовы подпрограммы – LCALL и ACALL. Инструкция LCALL использует 16-битный адрес вызываемой подпрограммы. В данном случае подпрограмма может быть расположена в любом месте памяти программ. Инструкция ACALL использует 11-битный адрес подпрограммы. В этом случае вызываемая подпрограмма должна быть расположена в одном двухкилобайтном блоке с инструкцией, следующей за ACALL. Оба варианта команды кладут на стек адрес следующей команды и загружают в PC соответствующее новое значение.
Подпрограмма завершается инструкцией RET, позволяющей вернуться на инструкцию, следующую за командой CALL. Эта инструкция снимает со стека адрес возврата и загружает его в PC. Инструкция RETI используется для возврата из подпрограмм обработки прерываний. Единственное отличие RETI от RET состоит в том, что RETI информирует систему о том, что обработка прерывания завершилась. Если в момент выполнения RETI нет других прерываний, то она идентична RET.
Инструкция DJNZ предназначена для управления циклами. Для выполнения цикла N раз надо загрузить в счетчик байт со значением N и закрыть тело цикла командой DJNZ, указывающей на начало цикла.
Команда CJNE сравнивает два своих операнда как беззнаковые целые и производит переход по указанному в ней адресу, если сравниваемые операнды не равны. Если первый операнд меньше, чем второй, то бит переноса CF устанавливается в “1”.
Сделайте индивидуальный заказ на нашем сервисе. Там эксперты помогают с учебой без посредников
Разместите задание – сайт бесплатно отправит его исполнителя, и они предложат цены.
Цены ниже, чем в агентствах и у конкурентов
Вы работаете с экспертами напрямую. Поэтому стоимость работ приятно вас удивит
Бесплатные доработки и консультации
Исполнитель внесет нужные правки в работу по вашему требованию без доплат. Корректировки в максимально короткие сроки
Гарантируем возврат
Если работа вас не устроит – мы вернем 100% суммы заказа
Техподдержка 7 дней в неделю
Наши менеджеры всегда на связи и оперативно решат любую проблему
Строгий отбор экспертов
К работе допускаются только проверенные специалисты с высшим образованием. Проверяем диплом на оценки «хорошо» и «отлично»
Работы выполняют эксперты в своём деле. Они ценят свою репутацию, поэтому результат выполненной работы гарантирован
Ежедневно эксперты готовы работать над 1000 заданиями. Контролируйте процесс написания работы в режиме онлайн
Требуется разобрать ст. 135 Налогового кодекса по составу напогового...
Решение задач, Налоговое право
Срок сдачи к 5 дек.
Школьный кабинет химии и его роль в химико-образовательном процессе
Курсовая, Методика преподавания химии
Срок сдачи к 26 дек.
Реферат по теме «общественное мнение как объект манипулятивного воздействий. интерпретация общественного мнения по п. бурдьё»
Реферат, Социология
Срок сдачи к 9 дек.
Выполнить курсовую работу. Образовательные стандарты и программы. Е-01220
Курсовая, Английский язык
Срок сдачи к 10 дек.
Изложение темы: экзистенциализм. основные идеи с. кьеркегора.
Реферат, Философия
Срок сдачи к 12 дек.
Заполните форму и узнайте цену на индивидуальную работу!