Задачка из нескольких модулей - Assembler

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

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

Задание Необходимо создать основной модуль main программы, который после пуска программы осуществляет вывод на экран сообщения: “нажмите любую клавишу”, а затем вызывает call input процедуру, которая осуществляет ожидание нажатия клавиши. При нажатии клавиши процедура input вводит идентификатор нажатой клавиши и возвращает управление основному модулю main программы. В модуле main программы анализируется идентификатор нажатой клавиши. Если нажата клавиша, помеченная символом A, то модуль main программы осуществляет вызов процедуры output1, обеспечивающей печать сообщения “нажата клавиша A - взаимодействие завершено” и возвращающей управление основному модулю main программы, который завершает работу программы. Если идентификатор нажатой клавиши не соответствует символу A, то основной модуль main программы осуществляет вызов процедуры output2, которая осуществляет печать сообщения “нажмите клавишу A” и возвращает управление основному модулю main программы.

Во вложения загрузил соответствующие модули output1 outpu2 input

Основной Вопрос по главному модулю и как их связать вместе в рабочую программу

P.S. вот некоторые соображения по главному модулю

Title main
.Model Small
.Stack 100h
.data
mess db 'nazmite lubuyu klavishu'
data ends 
.code
start:
mov ax,@data
mov ds,ax 
mov ah,9
mov dx,offset mess
int 21h; 
call input

Решение задачи: «Задачка из нескольких модулей»

textual
Листинг программы
cmp al,41h
je Op1
call output2
Op1:
call output1
quit:
mov ax,4c00h
int 21h
end start

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

В данном коде происходит сравнение байта памяти с значением 41h (0x41). Если байт равен 41h, то управление передаётся команде output2, иначе управление передаётся команде output1. После выполнения команды output1 управление передаётся команде quit, которая завершает работу программы. Значение переменной ax равно 4c00h (0x4c00). Команда int 21h вызывает прерывание 21h.

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


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

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

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