Ввести возраст человека и в зависимости от введенного значения выдать одно из сообщений: «Ребенок», «Школьник»... - 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

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

  1. Установка начального значения возраста (переменная age) равным 0.
  2. Вывод на экран приглашения к вводу возраста.
  3. Ввод возраста с клавиатуры.
  4. Обработка введенного значения:
    • Проверка на завершение ввода (нажатие клавиши Enter).
    • Преобразование введенного значения в числовой формат (от 0 до 9).
    • Умножение текущего значения возраста на 10.
    • Добавление к результату последней введенной цифры.
    • Обновление значения возраста.
  5. Вывод сообщения в зависимости от значения возраста.
  6. Завершение работы программы.

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


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

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

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