rstJkee
@rstJkee

Развернуть строку assembler?

Встал вопрос, как можно развернуть строку в ассемблере, собственно, недолго покопавшись, решил написать ответ. Может кому интересно будет
  • Вопрос задан
  • 59 просмотров
Решения вопроса 1
rstJkee
@rstJkee Автор вопроса
Компилятор nasm (делал в sasm)

%include "io.inc"

section .data
    arr db "genius" ; основная строка
    len equ $-arr ; длина этой строки

section .bss
    str2 resb 64 ; резирвирую память для развёрнутой строки

section .text
    global CMAIN
CMAIN:
    mov ebp, esp; for correct debugging
    mov ebx, len
    dec ebx
    mov esi, 0
cycle:
    cmp ebx, 0
    jl end
    mov al, byte[arr+ebx]
    mov [str2+esi], al
    inc esi
    dec ebx
    jmp cycle
end:
    PRINT_STRING str2
    xor eax, eax
    ret
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы