Изменение регистра в ассемблере

Задание простое: в виде переменной задается текст, и все буквы в данном тексте переводятся в нижний регистр. Не разбираюсь в ассемблере, нужно просто в заданной строке(в данном примере "Hello World!") после определенных действий менялся регистр. И должно вывестись на консоль ("hello world!"). Может в коде куча лишнего, не знаю. Если есть готовое решение, будет вообще супер.

db 71h,72h,73h,74h,75h,76h,77h,78h,79h,7Ah
section .text
global _start
_start:
mov ecx, len
mov esi, s1
mov edi, s2
cld
rep movsb
mov edx,20
mov ecx,s2
mov ebx,1
mov eax,4
int 0x80
mov eax,1
int 0x80
mov di, si
lea bx, ConversionTable
Convert2Lower: lodsb
xlat
stosb
loop Convert2Lower
section .data
s1 db 'Hello World!',0 
len equ $-s1
section  .bss
s2 resb 20```

Ответы (0 шт):