Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Команды общего назначения

Индивидуальное задание. | Форматы арифметических данных. | Команда сложения ADD и команда сложения с добавлением переноса ADC. | Команда вычитания SUB и вычитания с заемом SBB. | Индивидуальное задание. | Команда коррекции деления для представления в кодах ASCII (команда AAO ) | Логические команды OR, AND и XOR. | Команды сдвига | Индивидуальное задание. | Программа типа СОМ |


Читайте также:
  1. C2. Участвующие команды
  2. II. Критерии для назначения повышенной стипендии
  3. IV. Порядок назначения пенсии и перевода с одной пенсии на другую
  4. Nbsp;   2 Команды LINDO
  5. Архитектура системного таймера и назначения каналов таймера. Режимы работы каналов таймера. Возможности программирования
  6. Биржевые индексы - ключевые показатели ,используемые для оценки, исследования и прогнозирования общего положения в фондовой торговле и в отдельных отраслях.
  7. БИС общего назначения

Основная команда общего назначения MOV (move - переслать) может пересылать байт или слово между регистром и ячейкой памяти или между двумя регистрами. Она может также пересылать непосредственно адресуемое значение в регистр или в ячейку памяти.

Команда MOV имеет следующий формат:

MOV приемник, источник

 

В ней допустимо большинство из возможных сочетаний операндов.

Приведем несколько примеров:

 

MOV AX,TABLE; Пересылка иэ памяти в регистр

MOV TABLE,AX; и наоборот

MOV ES:[BX],АХ; Можно заменить используемый регистр сегмента

MOV DS,AХ; Пересылка между 16-битовыми регистрами

MOV BL.AL; Пересылка между 8-битовыми регистрами

MOV CL,-30; Пересылка константы в регистр

MOV DE5T,25H; или в память

 

В команде MOV исключаются следующие сочетания операндов:

1. Вы не можете осуществить непосредственную пересылку данных из одной ячейки памяти в другую. Чтобы выполнить такую пересылку, данные источника надо загрузить в регистр общего назначения, а затем запомнить содержимое этого регистра в приемнике. Например, если POUNDS и WEIGHT - переменные, находя­щиеся в памяти, то для пересылки значения из одной переменной в другую можно воспользоваться командами

MOV AX,POUNDS

MOV WEIGHT,AX

2. Вы не можете загрузить непосредственно адресуемый операнд в регистр сегмента. Как и в случае 1, сначала надо загрузить его в регистр общего назначе­ния. Например, следующие команды загружают номер блока сегмента данных (DATA_SEG) в регистр DS:

MOV HX,DATA_SEG

MOV DS,AX

Подобные команды обычно сопутствуют оператору ASSUME в сегменте команд. Они указывают Ассемблеру, где размещен сегмент данных.

3. Вы не можете непосредственно переслать значение одного регистра сегмента в другой. Делайте подобные пересылки через регистр общего назначения. Напри­мер, чтобы регистр DS указывал на тот же сегмент, что и регистр ES, воспользуй­тесь командами

MOV AX,ES

MOV DS,AX

(Для выполнения этой операции можно воспользоваться командами PUSH и POP, которые будут описаны в следующем разделе.)

4. Вы не можете использовать регистр CS в качестве приемника в команде пересылки.

Команда обмена XCHG

Команда обмена XCHG (exchange - обменять) меняет между собой значения двух регистров или регистра и ячейки памяти. Однако она не может выполнить обмен значений регистров сегмента.

Приведем несколько примеров команд XCHG:

XCHG AX,BX;Обменять значения двух регистров (слова

XCHG AL,BH; или байты

XCHG WRD_LOC,DX;Обменять значения ячейки памяти

ХСНG DL,BYTE_LOC; и регистра


Дата добавления: 2015-11-13; просмотров: 36 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Режимы адресации данных| Команды ввода-вывода

mybiblioteka.su - 2015-2024 год. (0.007 сек.)