Задача на разделения цепочек - Assembler

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

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

Ввести строку символьных данных, задавая буфер равный 18 байт. Разделить цепочку на две - равные девяти байт каждая, выдать на экран эти части одна под другой начиная с 10 строки 35 столбца, в начале вторую часть, а затем первую. Ребят, выручайте ! Желательно с комментариями.

Решение задачи: «Задача на разделения цепочек»

textual
Листинг программы
model   tiny
.code
org 100h
start:  mov ax,3
    int 10h
    mov ah,9
    lea dx,dbInp
    int 21h
    mov cx,18
    lea di,dbStr
@@01:   xor ax,ax
    int 16h
    cmp al,'A'
    jb  @@01
    cmp al,'z'
    ja  @@01
    cmp al,'Z'
    jae @@02
    cmp al,'a'
    jb  @@01
@@02:   stosb
    int 29h
    loop    @@01
    lea si,dbStr+9
    mov ax,0B800h
    mov es,ax
    mov di,2*(10*80+35)
    mov ah,07
    push    di
    call    @@04
    pop di
    add di,160
    lea si,dbStr
@@04:   mov cx,9
@@03:   lodsb
    stosw
    loop    @@03
    ret
dbInp   db  10,13,'Enter string:$'
dbStr   db  18 dup(?)
    end start

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

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