Передача в массив - Assembler

Узнай цену своей работы

Формулировка задачи:

Есть задание: Объявить массив Размер: 8 Количество элементов: 17 Проинициализировать массив 0, используя произвольный метод адресации В каждый элемент массива переслать число 05h (со знаком) У меня получилось такое:
mov ax,0
mov cx,11
mov bx,200
mov [bx],ax
inc bx
dec cx
JNZ 109
mov bx,200
mov cx,11
mov ax,05
mov [bx],ax
inc bx
dec cx
JNZ 118
Преподаватель сказал, что это ошибочный код и предложил вместо 05h переслать число 5566, я переслал, программа перестала работать так, как нужно. Чтобы исправить это, я добавил еще один инкремент (inc bx), тогда программа вроде бы стала работать и 5566, но тогда у меня размерность уже не 8, а 16. Это я что-то неправильно понял или преподаватель что-то перепутал? И еще, хочу выполнить косвенную адресацию, но все варианты выполняются с ошибкой. Работу выполняю на XP. Заранее спасибо за ответ.

Решение задачи: «Передача в массив»

textual
Листинг программы
mov al,0
mov cx,11
mov di,200
rep stosb
mov al,5
mov cx,11
mov di,200
rep stosb

Оцени полезность:

12   голосов , оценка 3.917 из 5
Похожие ответы