Как написать программу - Assembler

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

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

Привет всем. В Assemblere Я новичек и хочу чтобы вы мне помоглибы написать такую программу. Есть такие слова допустим как МОЙ ДОМ МОСКВА. Мне надо написать такую программу чтобы эти три слова былибы написаны с другой стороны. ОЙМ МОД АБКСОМ. Как понемаю это надо делать с помощью цикла? Пожалуйста помогите.

Решение задачи: «Как написать программу»

textual
Листинг программы
.model  small
.386
dos_inp macro   lbl, sz
_ib_    struc  
max db  sz      ; наибольшая длина строки
len db  ?               ; сюда вернется настоящая длина
bf  db  sz dup(?)   ; тут будет то, что ввели
_ib_    ends            
lbl _ib_ <>
endm
.stack  100
.data
req db  'Enter string:$'
dos_inp buf, 80
.code   
start:  
    mov ax, @data
    mov ds, ax
    mov es, ax
; Вывод на экран 
    mov     ah, 09h
    lea     dx, req
    int     21h
; ввод строки
    mov ah, 0Ah
    lea dx, buf
    int 21h
; новая строка
    mov ax, 0D0Ah
    int 29h
    xchg    al, ah
    int 29h
    lea si, buf.bf  ;
    movzx   cx, buf.len 
    add si, cx
    dec si
    std
@@: lodsb
    int 29h
    loop    @B
    cld
    xor ax, ax
    int 16h
; выход
    mov ah, 4Ch
    int 21h
    end start

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

Этот код на языке Assembler, и он осуществляет ввод строки с клавиатуры. Вот список действий, которые он выполняет:

  1. Дефинирует структуру данных для ввода строки, используя макрос dos_inp.
  2. Определяет буфер ввода-вывода, используя переменную buf.
  3. Выводит приглашение для ввода строки на экран.
  4. Осуществляет ввод строки с клавиатуры в буфер.
  5. Выводит новую строку на экран.
  6. Перемещает указатель начала строки в буфере в начало строки и устанавливает счетчик символов в 0.
  7. Пока счетчик символов не превышает длину строки, осуществляет вывод символа в буфер.
  8. Увеличивает счетчик символов на 1.
  9. Если счетчик символов равен 0, выходит из цикла.
  10. Устанавливает указатель начала строки в буфере на начало строки и осуществляет вывод строки на экран.
  11. Выполняет выход из программы.

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

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

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