Читайте также:
|
|
LXI Y2, D16 - загрузить непосредственный двухбайтовый операнд. Это трехбайтовая команда. Содержимое второго и третьего байтов команды пересылается в регистровую пару ВС, DE, HL или указатель стека SP. Старшим байтом числа является третий.
Пример:
LXI Н, 0920 - загрузка в регистровую пару HL числа 0920. После выполнения этой команды в регистре Н будет число 09, а в регистре L - 20.
SHLD ADR —запомнить содержимое регистров H и L. Это трехбайтовая команда. Содержимое регистра L пересылается в ячейку памяти с адресом, указанный во втором и третьем байтах команды, содержимое регистра Н пересылается в ячейку памяти с адресом, на 1 большим предыдущего.
Пример:
SHLD 091F - переслать содержимое регистровой пары Н по адресам 091F и 0920. Если, например, в паре HL было число 301E, то после выполнения этой команды по адресу 091F будет записано число 1E, а по адресу 0920 - число 30.
LHLD ADR - загрузить регистровую пару HL содержимым памяти. Это трёхбайтовая команда. Ее действие противоположно действию предыдущей команды.
Пример:
LHLD 0930 - переслать содержимое ячеек памяти с адресами 0930 и 0931 в регистры L и Н. Если, например, там хранились числа 2F и 31 соответственно, то после выполнения этой команды в регистре L будет число 2F, а в регистре H - 31.
PUSH YZ** - поместить в стек. Содержимое регистровой пары ВС, DE, HL или PSW записать в две последовательные ячейки стековой памяти. Если вместо YZ ** указано PSW, то в стековую память последовательно помещается содержимое аккумулятора А и регистра признаков F.
Пример:
PUSH В - поместить в стек содержимое регистровой пары ВС. Пусть до начала обращения указатель стека SP содержал адрес 0839. Тогда содержимое старшего регистра В будет помещено в ячейку с адресом 0838, а младшего регистра С в ячейку с адресом 0837.
POP YZ** - вытолкнуть из стека. Содержимое двух последовательных ячеек стека загружается в регистры указанной регистровой пары. Команда по действию противоположна предыдущей.
Пример:
POP D – вытолкнуть из стека в регистровую пару DE содержимое двух последних ячеек стека. Пусть до начала обращения указатель стека SP содержал адрес 0850 и пусть в адресах 0850 и 0851 хранились числа 3D и 76. Тогда содержимое адреса 0850 будет помещено в младший регистр пары Е, а содержимое адреса 0851 - в старший регистр пары D, то есть содержимое пары DE будет 763D. После выполнения этой команды указатель SP будет содержать адрес 0852.
Команда POP PSW оказывает воздействие на все признаки регистра F. Остальные команды POP не оказывают воздействия на признаки.
3. Группа команд ввода/вывода
IN N – ввести. Это двухбайтовая команда. Байт информации, размещенный на шине данных портом ввода, адрес которого задан вторым байтом команды IN, загружается в аккумулятор А.
Пример: IN E0 - ввести из порта с адресом Е0 байт информации. Если порт установил на шине данных, например, байт 18, то после выполнения этой команды в аккумуляторе А будет число 18.
OUT N - вывести. Это двухбайтовая команда. Содержимое аккумулятора А выдается на шину данных и помещается в порт вывода с адресом, заданным вторым байтом команды OUT.Пример: OUT E1 - вывести из аккумулятора А его содержимое в порт вывода с адресом Е1. Если в аккумуляторе А до выполнения было, например, число 20, то после выполнения этой команды в выводном порте будет число 20.
Дата добавления: 2015-07-20; просмотров: 67 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Группа команд однобайтовых пересылок | | | Группа команд арифметических и логических операций с двумя операндами |