Булевы операции
Микросхемы 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 битовых полей. Битовые инструкции осуществляют условные переходы, пересылки, сброс, инверсии, операции “И”, “ИЛИ”. Все указанные биты доступны в режиме прямой адресации.
Бит переноса CF в PSW используется как 1-битный аккумулятор булевого процессора. Инструкции переходов
Адреса операций переходов обозначаются на языке ассемблера меткой либо реальным значением в пространстве памяти программ (табл.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”.
Другие работы по теме:
Структура банка
На самом верхнем уровне коммерческого банка будут находиться совет директоров (правление банка) и создаваемые им комитеты, затем президент банка и вице-президенты, каждый из которых будет руководить некоторой совокупностью банковских отделов и групп.
Валютные операции 6
Валютные операции. ВАЛЮТНЫЕ ОПЕРАЦИИ - урегулированные национальным законодательством или международными соглашениями сделки, предметом которых являются валютные ценности. В международных соглашениях (торговых, кредитных, платежных и др.) устанавливаются правовые основы организации и осуществления платежных, кредитных и других отношений сторон и состав их участников.
Контрольная работа по финансовой математике
Задание на контрольную работу по предмету «Финансовая математика» (вариант 2) Найти величину процентов, полученных кредитором, если за предоставление в долг на полгода некоторой суммы денег он получил от заемщика в совокупности 6,3 тыс. руб. При этом применялась простая процентная ставка в 10% годовых.
Подготовка больного к операции 2
Ярославский медицинский колледж Реферат: по теме: « Подготовка больного к операции » Выполнила: Студентка 3 АК « А » Проверила: Соловьева Т. Н Содержание:
Недержание мочи у мужчин
Причиной недержания мочи у мужчин не всегда является возраст, нередко проблема возникает после перенесенной операции на предстательной железе или каких-либо болезней мочеполового тракта.
Математические методы исследования в экономике 2
Математические методы исследования в экономике. Вариант № 6 Составить линейную оптимизационную модель и решить любым известным методом Условие: Фирма выпускает три вида изделий. В процессе производства используются три технологические операции. На рисунке показана технологическая схема производства изделий.
Центрально-Европейская операция
Введение 1 Предыстория 2 Расстановка сил 2.1 Союзники 2.2 Германия 3 Ход операции 4 Итоги Центрально-Европейская операция Введение Центрально-Европейская операция (вторжение западных союзников в Германию, Центрально-Европейская кампания; 22 марта – 11 мая 1945) – последняя стратегическая военная операция войск союзников против немецкой армии в ходе Второй мировой войны.
Битва за Сайпан
Битва за Сайпан — сражение Тихоокеанской кампании Второй мировой войны, проходившее на острове Сайпан, одном из Марианских островов, с 15 июня по 9 июля 1944 года. Это сражение стало первым в Марианской наступательной операции военных сил США.
Кольмарская операция
Введение 1 Предыстория 2 Расстановка сил 2.1 Союзники 2.2 Германия 3 Ход операции 4 Итоги Список литературы Кольмарская операция Введение Кольмарская операция (20 января – 9 февраля 1945) – стратегическая военная операция войск США и Франции против немецкой армии в ходе Второй мировой войны с целью ликвидации окружённой в районе Кольмара немецкой группировки.
Операция Prime Chance
Операция «Главный шанс» (англ. Prime Chance) — военная операция ВМС США, проводившиеся практически параллельно с операцией «Искренние намерения» с августа 1987 года по июнь 1989 года в Персидском заливе с целью обеспечения безопасности для судов, ходивших под американским флагом во время ирано-иракской войны.
Бригада 2506
(исп. Brigada Asalto 2506) — название военного формирования, состоявшего из кубинских иммигрантов, подготовленного в США под руководством ЦРУ для вторжения на Кубу при президенте Дуайте Эйзенхауэре. Использовалось при президенте Кеннеди в операции в заливе Свиней в 1961 году. Бригада численностью около 1 200 человек проходила обучение в лагерях ЦРУ в Гватемале, располагая при этом логистической базой в Никарагуа[1].
Операция Орлиный коготь
Введение 1 План 2 Ход операции 3 Жертвы 3.1 США 3.2 Иран Список литературы Введение Операция «Орлиный коготь» (англ. Eagle Claw) была проведена 24 апреля 1980 года вооружёнными силами США в Иране с целью спасения 53 заложников из посольства США в Тегеране.
Рейнская операция
Рейнская операция (кодовое название — «Пландер» ) — стратегическая военная операция вооружённых сил союзников против немецких войск в ходе Второй мировой войны с целью форсирования Рейна, часть Центрально-Европейской операции.
Операция Манна Нидерланды, 1945
Операция «Манна» — сброс продовольствия страдающему от голода населению Голландии в последние дни перед капитуляцией Германии. Вылеты осуществлялись над оккупированными территориями Нидерландов с 29 апреля по 8 мая 1945 года. 6680 тонн доставили ВВС Великобритании, 4000 тонн — ВВС США, чья операция называлась «Обжора» (англ.
Голландская операция 1944
Введение 1 Предпосылки 2 Цели сторон 3 План Операции 3.1 Операция «Маркет» 3.2 Операция «Гарден» 4 Итоги 5 Кинематограф Список литературы Введение Голландская операция (1944) — (кодовое наименование Маркет Гарден англ. Market Garden) военная операция союзников, проводившаяся с 17 сентября по 25 сентября 1944 года на территории Голландии и Германии во время Второй мировой войны.
Рейнская воздушно-десантная операция
Введение 1 Предыстория 2 Ход операции 3 Итоги Список литературы Рейнская воздушно-десантная операция Введение Рейнская воздушно-десантная операция — стратегическая военная операция вооружённых сил союзников против немецких войск в ходе Второй мировой войны, часть Центрально-Европейской операции.
Операция Earnest Will
Earnest Will (в переводе — «Искренние намерения» или «Твёрдые намерения») — кодовое название операции ВМС США по конвоированию кувейтских танкеров в Персидском заливе во время ирано-иракской войны. Самая крупная морская конвойная операция после Второй мировой войны.
Операция Peninsula Strike
«Peninsula Strike» (в переводе — «Удар по полуострову»)— название первой крупной военной операции США после свержения режима Саддама Хусейна в Ираке в период Иракской войны.
Инцидент с Маягуэс
— события, связанные с захватом камбоджийскими «красными кхмерами» американского торгового судна «Маягуэс» (Mayagьez) в мае 1975 года. 12 мая 1975 года судно «Маягуэс», шедшее в камбоджийских территориальных водах, было остановлено патрульными катерами «красных кхмеров». Это произошло месяц спустя после захвата «красными кхмерами» власти в Камбодже и две недели спустя после окончания Вьетнамской войны.
Вторжение США в Панаму
План Введение 1 Предпосылки 2 Военная операция 3 Интересные факты Список литературы Введение Вторжение США в Панаму (англ. United States invasion of Panama) — вторжение США в Панаму 20 декабря 1989 года.
Битва при Нарвике
Битва при Нарвике — серия сражений между немецкими армией и флотом с одной стороны и коалиционными силами Англии, Франции, Норвегии и Польши с другой. Битва за Нарвик продлилась с 9 апреля по 8 июня 1940 года. Битва разделилась на морскую фазу операции прошедшую в акватории Офотфьорда (другое распространённое название — «Нарвик фьорд») и наземную часть, где боестолкновения шли в окрестностях города Нарвика и прилегающих к нему Норвежскому скальному массиву.
Анаконда операция
«Анаконда» (англ. Anaconda) — военная операция, проводившаяся международной коалицией во главе с США против сил террористической организации «Аль-Каида» в Афганистане в марте 2002 года. Одна из наиболее значительных и известных операций глобальной войны с терроризмом.
Операция Йехошуа
Операция «Йехошуа» (Операция «Иисус») — операция по спасению эфиопских евреев[1] из Судана в Израиль, проведенная в январе 1985 г. Джордж Буш-старший, в то время вице-президент США, заручившись согласием руководства Судана, организовал при поддержке ЦРУ авиарейс Хартум — Тель-Авив. Таким образом, в продолжение операции «Моисей», из Судана в Израиль было вывезено еще 800 эфиопских евреев[2][3][4].
Операция Passage to Freedom
«Рейс к свободе» (англ. Passage to Freedom) — название операции по эвакуации вьетнамских беженцев из Северного Вьетнама, проводившейся Военно-морскими силами США в 1954—1955 годах.
Логический тип данных. Операции сравнения
Логические, или булевские, данные предназначены для хранения логических значений "истина" или "ложь". Логические переменные и константы имеют тип Boolean и занимают в памяти 1 байт. Существует всего две логические константы - TRUE и FALSE.
Операции сложения и вычитания
Алгоритм выполнения операции сложения, вычитания. Сложение чисел в столбик. Проверка получившихся результатов, переведение их в другую систему счисления. Перевод числа 128 из 8-й в 10-ую систему счисления и числа 11011101 из 2-й в 10-ую систему счисления.
Вычисление количества информации с помощью калькулятора
ПРАКТИЧЕСКАЯ РАБОТА «Вычисление количества информации с помощью калькулятора» Цель работы: Овладеть навыками сложных вычислений, в том числе вычисления степени числа 2 с натуральным показателем, для перевода единиц количества информации.
Тесты по Информатике 2
Тест по информатике Алгоритмы: виды, свойства 9 класс по учебнику Угриновича Н.Д. Алгоритм-это: Указание на выполнение действий, Система правил, описывающая последовательность действий, которые необходимо выполнить для решения задачи,