Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Лабораторная работа «Логические операции»Содержание книги
Поиск на нашем сайте Составить рабочую программу для вычисления выражения. Варианты заданий. 1. 2. 3. 4. 5.
Команды сравнения и команды переходов
Практическое занятие «Команды сравнения и команды переходов» Команды сравнения Команды сравнения предназначены для определения равенства двух чисел, а также установления, какое из двух чисел больше или меньше. Сравнение выполняется при помощи АЛУ посредством внутреннего вычитания. Первое из сравниваемых чисел размещается в аккумуляторе, второе может находиться в одном из регистров РОН или в памяти. Особенностью команд сравнения является то, что содержимое аккумулятора и регистра не изменяются при выполнении команды. Флаги регистра признаков устанавливаются в зависимости от результата сравнения. Команды сравнения используют те же методы адресации, что арифметические и логические команды: CMP R - сравнение содержимого аккумулятора и регистра; CMP M - сравнение содержимого аккумулятора и ячейки памяти, адрес которой хранится в регистровой паре (H, L); CPI <data> - сравнение содержимого аккумулятора с содержимым второго байта команды. Команды переходов предназначены для изменения последовательности выполнения команд программы. Команды переходов позволяют организовать в программах циклы и ветвления. Переход может быть условный и безусловный. Условный переход осуществляется по результатам проверок значений разрядов регистра признаков. Предусмотрено девять команд переходов: одна команда безусловного перехода и восемь команд условных переходов. Все команды переходов используют прямую адресацию и являются трехбайтными командами. Во второй и третий байты команды заносится адрес, по которому осуществляется переход; причем во второй байт – младший байт адреса перехода, а в третий – старший байт адреса перехода. Значение регистра признаков команды перехода не изменяют. Команда безусловного перехода JMP <addr> – безусловный переход по адресу, который указан во втором и третьем байтах команды.
Команды условных переходов JC <addr> – переход, если есть перенос в старший байт или заем; флаг переноса CY=1. В противном случае выполняется следующая команда; JNC <addr> - переход, если нет переноса или заема; флаг переноса CY=0. В противном случае выполняется следующая команда; JZ <addr> - переход, если результат в аккумуляторе равен нулю; флаг нуля Z=1. В противном случае выполняется следующая команда; JNZ <addr> - переход, если результат в аккумуляторе не равен нулю; флаг нуля Z=0. В противном случае выполняется следующая команда; JP <addr> - переход, если флаг знака S=0, т.е. в аккумуляторе находится положительное число. В противном случае выполняется следующая команда; JM <addr> - переход, если флаг знака S=1, т.е. в аккумуляторе находится отрицательное число. В противном случае выполняется следующая команда; JPE <addr> - переход, если флаг знака P=1, т.е. число в аккумуляторе содержит четное количество единиц. В противном случае выполняется следующая команда; JPO <addr> - переход, если флаг знака P=0, т.е. число в аккумуляторе содержит нечетное количество единиц. В противном случае выполняется следующая команда. Пример 1. Сравнить два однобайтных числа, находящихся в регистрах D и ЯП (0800). Большее из чисел записать в ЯП (0801).
Таблица 9 – Пример программы
Пример 2. Если однобайтное число в регистре В четное, то его проинвертировать и записать в ЯП (0800), если нечетное, записать его в ЯП (0801).
Таблица 10 – Пример программы
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2016-08-12; просмотров: 410; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.137 (0.007 с.) |