Вывод символов на четных позициях, введенных с клавиатуры - Assembler

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

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

Разработать программу, ввода строковых данных с клавиатуры. Ввести с клавиатуры строку из 10 символов и вывести введенные символы на четных позициях в обратном порядке по одному символу в строке.

Решение задачи: «Вывод символов на четных позициях, введенных с клавиатуры»

textual
Листинг программы
mov ah,0Ah
lea dx,msg
int 21h
    
std
xor ch,ch
mov cl,byte ptr [msg+1]
mov bx,cx
lea si,[msg+1+bx]
show:       
    mov ah,02h
    mov dl,0Ah
    int 21h
        
    mov ah,02h
    mov dl,0Dh
    int 21h
        
    lodsb
    int 29h
loop show

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

  1. Устанавливаем код сегмента регистра AH равным 0Ah.
  2. Создаем косвенную адресную ссылку на строку в памяти, используя регистры DX и BX.
  3. Выводим на экран символ, используя регистры AH=02 и DL=0Ah.
  4. Выводим на экран символ, используя регистры AH=02 и DL=0Dh.
  5. Загружаем в регистр AL байт из памяти по адресу, используя SCASB.
  6. Выполняем выход из цикла при достижении конца строки.
  7. Повторяем шаги с 3 по 6 для каждого символа в строке.

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


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

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

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