Пересылка массива информации из одной области памяти в другую
Адрес | Машинный код | Метка | Мнемокод | Комментарий |
MVI D | загрузка счетчика | |||
N | ||||
LXI Н | загрузка адресного указателя | |||
NN | исходного массива | |||
NN | ||||
LXI B | загрузка адресного указателя | |||
DD | результирующего массива | |||
DD | ||||
7E | M2 | MOV A,M | пересылка числа из памяти в АКМ | |
STAX B | пересылка числа из АКМ в память | |||
850А | DCR D | уменьшение счетчика на единицу | ||
850В | CA | JZ, M1 | пересылка массива закончена? | |
850С | ||||
850D | ||||
850Е | INX H | переход к следующему адресу в HL | ||
850F | INX B | переход к следующему адресу в BC | ||
C3 | JMP, M2 | организация цикла | ||
Ml | NOP | окончание программы |
Перед выполнением программы исходный массив чисел заносится в память, с помощью командных клавиш, начиная с адреса NNNN (см. Приложение 4).
В ряде случаев возникает необходимость выбрать из массива информации данные, представляющие собой ряд максимальных, либо минимальных величин. Предположим, что необходимо написать программу для решения следующей задачи. Дан массив А1, состоящий из N однобайтовых чисел. Необходимо переписать из массива А1 в массив В1 все числа в диапазоне от Н1 до Н2.
В программе выборки из массива чисел заданного интервала использованы следующие исходные данные и обозначения:
N - количество элементов исходного массива
L - счетчик, указатель длины исходного массива
ВС - адресный указатель исходного массива
NNNN - адрес ячейки памяти, где хранится первое число исходного массива.
DE - адресный указатель результирующего массива
DDDD - адрес ячейки памяти, куда будет записано первое число результирующего массива.
Н1 - нижний предел диапазона выборки
Н2 - верхний предел диапазона выборки
8100 - адрес начала программы
Перед выполнением программы исходный массив чисел А1 заносится в память с помощью командных клавиш, начиная с адреса NNNN (см. Приложение 5)
Таблица 2
Дата добавления: 2015-08-01; просмотров: 735;