Список выполненных команд ассемблера и их описание

Страницы работы

Содержание работы

Список выполненных команд и их описание

LDAX rp (load A indirect) — загрузить А с косвенной   адресацией.

Формат команды:     00RP1010

(A)<-((rp)).

Содержимое ячейки памяти, адрес которой содержится в  паре адресуемых командой регистров блока РОН, загружается в регистр А. На языке ассемблера каждая пара регистров, которые разрешены к использованию в данной и последующей  командах, задается одним символом: если rр=В, то выбираются регистры В и С, если rp=D, то адрес ячейки памяти определяет содержимое пары регистров D и Е.

MOV rl, r2 (move register) —передать с регистра на регистр.

Формат команды:     01DDDSSS

(r1)<-(r2).

Команда MOV rl, г2 может быть использована для создания копий некоторых переменных (COPY), которые многократно используются при вычислениях. Кроме того, она позволяет  организовать процедуру обмена байтами (EXCHANGE BYTES) в  операциях, где операнды неравнозначны (вычитание, деление и т.п.) и возникает необходимость поменять их местами. Естественно, что, прежде чем оперировать данными с регистровой адресацией, они должны быть загружены из внешней памяти в блок РОН.

MOV M, r (move to memory) — передать в память.

Формат команды:    01110SSS

((H)(L))<-(r).

Содержимое регистра r, адрес которого задается полем SSS команды, отсылается в память по адресу, определяемому как результат конкатенации содержимого регистров Н и L.

LXI rp, data 16(load register pair immediate) - загрузить непосредственный 16-разрядный операнд.

Формат команды:    00RP0001, low data, high data

(rl)<-(byte 2)

(rh)<-(byte 3)

Содержимое второго байта команды передается в младший регистр rl (заданный полем RP пары регистров); третий байт команды передается в старший регистр rh регистровой   пары.

SHLD addr (store H and L direct) - запомнить содержимое регистров Н и L.

Формат команды:    0100010, low addr, high addr

((byte3)(byte2))<-(L)

((byte3)(byte2)+l)<-(H).

Содержимое регистра L помещается в ячейку памяти,  адрес которой указывают 3-й и 2-й байты команды. Содержимое регистра H помещается в ячейку памяти, адрес которой указывают 3-й и 2-й байты команды увеличенные на  единицу.

СМР r (compare register) — сравнить с регистром

Формат команды:       10111SSS

(А)-(r)

Содержимое регистра r вычитается из регистра А. Содержимое аккумулятора остается без изменений. Регистр признаков состояния устанавливается в зависимости от результатов вычитания:

if (A)=(r) then Z=1 else

if (A)<r then C=1 else Z*CY=1.

MVI r, data (move immediate) передать непосредственный операнд.

Формат команды:      00DDD110

data (r)<-(byte 2)

Содержимое второго байта команды передается в регистр r, адрес которого определяется полем DDD.

INX rp (increment register pair) — увеличить на 1 содержимое пары регистров.

Формат команды:      00RP0011

(rh)(rl)<-(rh)(rl)+1

DCX rp (decrement register pair) — умньшить на 1 содержимое пары регистров.

Формат команды:      00RP1011

(rh)(rl)<-(rh)(rl)-1

ADD r (add register)—сложить с регистром.

Формат команды:    10000SSS

(А)<-(А)+(r).

Содержимое регистра А суммируется с данными, размещенными в регистрах блока РОН. В результате выполнения команды формируется ряд признаков FLAGS.

SBB M (subtract memory) — вычесть содержимое памяти c  заемом.

Формат команды:       10011110

(A)<-(A)-((H)(L))-(C)

Похожие материалы

Информация о работе