Обнуления массива слов - Assembler

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

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

Задание такое: Написать программу обнуления массива слов длинною 100 элементов, используя все возможные режимы адресации. Написал код:
data segment
massiv dw 1,-2,3,4,5,6,7,8,9
data ends
code segment
assume es:data, cs:code
start:
push ds
pop es
lea di,massiv
xor ax,ax
mov ax,3
int 10h
code ends
end start
Подскажите, пожалуйста, правильно ли я написал код? И почему когда я в dos-box'е tlink этого кода то выбивает Warning: No stack?

Решение задачи: «Обнуления массива слов»

textual
Листинг программы
mov al, [si]
cbw
call OutInt

Объяснение кода листинга программы

  1. Переменная si содержит смещение в памяти, где хранится значение, которое нужно обнулить.
  2. Команда mov al, [si] загружает это значение в регистр al.
  3. Затем команда cbw переносит значение из регистра al в регистр bx.
  4. И наконец, команда call OutInt вызывает функцию OutInt, которая выводит значение регистра bx на экран.
  5. В результате выполнения этого кода, значение, хранящееся по указанному смещению в памяти, будет обнулено и выведено на экран.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

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

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