Не выводится первый символ - Assembler
Формулировка задачи:
.model small .stack 256 .data mes db 'Enter the string: $' mas db 256 dup (0) len dw 0 .code start: mov ax, @data mov ds, ax mov ah, 9 lea dx, mes int 21h m: mov ah, 1 int 21h cmp al, 32 je m mov si, 0 input: mov ah, 1 int 21h cmp al, 13 je metka k: inc len mov mas[si], al inc si cmp al, 32 je n jmp input n: mov ah, 1 int 21h cmp al, 13 je metka cmp al, 32 je n jmp k metka: mov ah, 9 mov si, len mov mas[si], '$' lea dx, mas int 21h mov ah, 4ch int 21h end start
Уже нашел ошибку.
Решение задачи: «Не выводится первый символ»
textual
Листинг программы
m: mov ah, 1 int 21h cmp al, 32 je m mov si, 0 jmp k input:
Объяснение кода листинга программы
- Устанавливается значение регистра
ah
равным 1. - Вызывается прерывание 21h для ввода данных с клавиатуры.
- Сравнивается содержимое регистра
al
с числом 32. - Если
al
равно 32, выполняется переход на меткуm
. - Устанавливается значение регистра
si
равным 0. - Происходит переход на метку
k
. - Программа продолжает выполнение с метки
input
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д