Ввести возраст человека и в зависимости от введенного значения выдать одно из сообщений: «Ребенок», «Школьник»... - Assembler/emu8086
Формулировка задачи:
Помогите пожалуйста с лабой.
Необходимо реализовать программу, которая выполняет запрос пользователя на ввод числа - возраста человека и в зависимости от введенного значения выдает одно из сообщений: «Ребенок», «Школьник», «Студент», «Работник», «Пенсионер».
Решение задачи: «Ввести возраст человека и в зависимости от введенного значения выдать одно из сообщений: «Ребенок», «Школьник»...»
textual
Листинг программы
.model small .stack 100h .data age dw ? In_age db 'Enter the age: $' child db 'CHILD!$' .code start: mov ax,@data mov ds,ax mov ah,09h mov dx,offset In_age int 21h mov si,10 ;множитель mov cx,0 ;age Input_age: mov ah,01h int 21h cmp al,0dh ; Enter je End_input_age sub al,'0' ;bl:=al-'0' mov bl,al mov ax,cx ;age:=age*10 mul si mov bh,0 ;age:=age+bl add ax,bx mov cx,ax jmp Input_age ; End_input_age: mov [age], cx exit: mov ax,4c00h int 21h end start
Объяснение кода листинга программы
- Установка начального значения возраста (переменная age) равным 0.
- Вывод на экран приглашения к вводу возраста.
- Ввод возраста с клавиатуры.
- Обработка введенного значения:
- Проверка на завершение ввода (нажатие клавиши Enter).
- Преобразование введенного значения в числовой формат (от 0 до 9).
- Умножение текущего значения возраста на 10.
- Добавление к результату последней введенной цифры.
- Обновление значения возраста.
- Вывод сообщения в зависимости от значения возраста.
- Завершение работы программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д