Вывод числа на экран - Assembler (224603)

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

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

Здравствуйте, у меня есть задача сложить два числа и вывести результат на консоль. TASM. мой код
data segment
    a db 5
    b db 4
    rez db 0
data ends
 
code segment
start:
    assume cs:code, ds:data
    mov ax, data
    mov ds, ax
    
    mov bl, a
    add bl, b
    mov rez, bl
    
    mov ah, 02
    mov dl, rez
    int 21h
    
    mov ax, 4c00h
    int 21h
code ends
end start
Не могу вывести переменную rez на экран.
mov ah, 02
    mov dl, rez
    int 21h
вроде вот вывод на экран, но выводит какую-то дичь. Пробовал выводить через 9 функцию из прерывания 21h, но там вообще какая-то жесткая дичь. Вообщем, мне нужная простая часть кода(не нужно писать новый код), которая выводит rez на экран. Смотрел другие обсуждения по этой теме, там все для меня сложно, ничего не понятно, не прошло еще даже недели, с тех пор как я начал изучать ассемблер.

Решение задачи: «Вывод числа на экран»

textual
Листинг программы
OutInt proc
    aam 
    add ax,3030h 
    mov dl,ah 
    mov dh,al 
    mov ah,02 
    int 21h 
    mov dl,dh 
    int 21h
OutInt endp

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

Список действий в коде:

  1. aam - Команда умножения на 10 (перед числами 8 или 9 умножает на 10, перед числами 4, 5, 6, 7 - на 100, 1000 и т.д.)
  2. add ax,3030h - Переменная ax увеличивается на 3030 (13 строка кода)
  3. mov dl,ah - В регистр dl записывается значение переменной ah (15 строка кода)
  4. mov dh,al - В регистр dh записывается значение переменной al (16 строка кода)
  5. mov ah,02 - Переменная ah устанавливается в значение 2 (18 строка кода)
  6. int 21h - Выполняется interrupt 21h, который предназначен для вывода символов на экран (19 строка кода)
  7. mov dl,dh - В регистр dl записывается значение переменной dh (20 строка кода)
  8. int 21h - Выполняется interrupt 21h, который предназначен для вывода символов на экран (21 строка кода)

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


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

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

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