Эти команды выполняют передачу данных из регистра в регистр, размещение данных в памяти, размещение извлеченных из памяти данных в устройство ввода/вывода. Так же эти команды устанавливают индикатор переноса. Почти все эти команды не влияют на индикаторы регистра состояния. Каждая команда передачи данных содержит адрес источника и назначения данных. Способы адресации ориентированны на то, где и как осуществляется поиск данных. К основным в этой группе команд относятся:
· MOV R1, R2 – передача из регистра 2 в регистр 1,
· MVI, R (M) – загрузить регистр (или память),
· LXI R1.2 – загрузить пару регистров LHL, LDA, STA, SHLD, IN, OUT, STC – команды передачи данных.
Например, команда MOV A, L – следующая за мнемоникой буква А указывает назначения тогда как последняя буква L индефицирует источник данных.
Команда SPHL – здесь источником данных является пара регистров HL, приемником 16-тиразрядный указатель стека SP.
Существует несколько команд непосредственной загрузки данных. Эти команды часто используются для размещения начальных значений в регистры МП.
|
|
Команда LXI H – пара регистров HL должна быть загружена данными, следующими непосредственно за кодом операции в программной памяти. Эта команда является трехбайтовой: 1 байт – код операции (21); 2-ой байт – содержит младший байт и помещается в регистр L; 3-й байт – это старший байт, который помещается в регистр H.
Команда загрузки пары регистров HL с прямой адресацией LHLD. Второй и третий байт являются 16-тиразрядным адресом памяти данных для загрузки.
МП преобразует 2 следующих за кодом операции байта в 16-тиразрядный адрес, который служит указателем адреса памяти данных (ОЗУ) и загружается в пару регистров HL.
Типовой МП снабжен несколькими командами размещения. Например, команда STA - загрузка данных с прямой адресацией. Содержимое аккумулятора помещается в память, на которую указывает 16-тиразрядный адрес, составленный 2 и 3 байтом команды.
Команда ввода (IN) – по сути, идентична команде загрузки, только здесь источником данных является порт ввода, который идентифицируется 8-миразрядным числом (адрес устройства ввода/вывода). Назначение данных из порта всегда аккумулятор.
Данные порта 00001111, на который указывает второй байт команды, передаются и размещаются в аккумулятор.