Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Команда INC DPTR
Команда “инкремент указателя данных” выполняет инкремент (прибавление “1”) содержимого 16-битового указателя данных (DPTR). Прибавление “1” осуществляется к 16 битам, причем переполнение младшего байта указателя данных (DPL) из FFH в 00H приводит к инкременту старшего байта указателя данных (DPH). На флаги эта команда не влияет.
Команда JB < bit>, < rel8> Команда “переход, если бит установлен” выполняет переход по адресу ветвления, если указанный бит равен “1”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется с помощью прибавления относительного смещения со знаком в третьем байте команды (rel8) к содержимому счетчика команд после прибавления к нему 3. Проверяемый бит не изменяется. Эта команда на флаги не влияет.
Команда JBC < bit>, < rel8> Команда “переход, если бит установлен и сброс этого бита”, выполняет ветвление по вычисляемому адресу, если бит равен “1”. В противном случае выполняется следующая за JBC команда. В любом случае указанный бит сбрасывается. Адрес перехода вычисляется сложением относительного смещения со знаком в третьем байте команды (rel8) и содержимого счетчика команд после прибавления к нему 3. Эта команда не влияет на флаги.
Команда JC < rel8> Команда “переход, если перенос установлен” выполняет ветвление по адресу, если флаг переноса равен “1”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется с помощью сложения относительного смещения со знаком во втором байте команды (rel8) и содержимого счетчика команд, после прибавления к нему 2. Эта команда не влияет на флаги.
Команда JMP @+DPTR Команда “косвенный переход” складывает восьми битовое содержимое аккумулятора без знака с 16-битовым указателем данных (DPTR) и загружает полученный результат счетчик команд, содержимое которого является адресом для выборке следующей команды. 16-битовое сложение выполняется по модулю 216, перенос из младших восьми бит распространяется на старшие биты программного счетчика.Содержимое аккумулятора и указателя данных не изменяется.
Команда JNB < bit>, < real8> Команда “переход, если бит не установлен” выполняет ветвление по адресу, если указанный бит равен “0”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется с помощь сложения относительного смещения со знаком в третьем байте команды (rel8) и содержимого счетчика команд, после прибавления к нему 3. Проверяемый бит не изменяется. Эта команда не влияет на флаги.
Команда JNC < rel8> Команда “переход, если перенос не установлен” выполняет ветвление по адресу, если флаг переноса равен “0”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется с помощью относительного смещения со знаком во втором байте команды (rel8) и содержимого счетчика команд, после прибавления к нему 2. Проверяемый бит не изменяется. Эта команда не влияет на флаги.
Команда JNZ < rel 8> Команда “переход, если содержимое аккумулятора не равно нулю” выполняет ветвление по адресу, если хотя бы один бит аккумулятора равен “1”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется сложением относительного смещения со знаком во втором байте команды (rel8) и содержимого счетчика команд (PC) после прибавления к нему 2. Содержимое аккумулятора не изменяется. Эта команда на флаги не влияет.
Команда JZ < rel8> Команда “переход, если содержимое аккумулятора равно “0” выполняет ветвление по адресу, если все биты аккумулятора равны “0”, в противном случае выполняется следующая команда. Адрес ветвления вычисляется сложением относительного смещения со знаком во втором байте команды (rel8) и содержимым счетчика команд после прибавления к нему 2. Содержимое аккумулятора не изменяется. Эта команда на флаги не влияет.
Команда LCALL < addr16> Команда “длинный вызов” вызывает подпрограмму, находящуюся по указанному адресу. По команде LCALL к счетчику команд (PC) прибавляется 3 для получения адреса следующей команды и после этого полученный 16-битовый результат помещается в СТЕК (сначала следует младший байт, а затем - старший), а содержимое указателя СТЕКа (SP) увеличивается на 2. Затем старший и младший байты счетчика команд загружаются соответственно вторым и третьим байтами команды LCALL. Выполнение программы продолжается командой, находящейся по полученному адресу. Подпрограмма, следовательно, может начинаться в любом месте адресного пространства памяти программ объемом до 64 Кбайт. Эта команда на флаги не влияет.
Команда LJMP < addr16> Команда “длинный переход” выполняет безусловный переход по указанному адресу, загружая старший и младший байты счетчика команд (PC) соответственно вторым и третьим байтами, находящимися в коде команды. Адрес перехода, таким образом, может находиться по любому адресу пространства памяти программ в 64 Кбайт. Эта команда на флаги не влияет.
Команда MOV < байт назначения>, < байт источника> Команда “переслать переменную-байт” пересылает переменную-байт, указанную во втором операнде во вторую ячейку, указанную в первом операнде. Эта команда на флаги и другие регистры не влияет. Содержимое байта-источника не изменяется. Эта команда допускает 15 комбинаций адресации байта-источника и байта назначений.
Команда MOV < бит назначения>, < бит источника> Команда “переслать бит данных” битовую переменную, указанную во втором байте, копирует в разряд, который указан в первом операнде. Одним из операндов должен быть флаг переноса С, а другим может быть любой бит, к которому возможна прямая адресация.
|