Другие языки программирования и технологии

Строки ассемблер нужно заполнить строку (10) рандомными символами. (MASM) как? помогите!

Ассемблер MASM 10;
процессор Pentium и выше;
операционная система Windows x32, x64;
IDE Visual Studio;
консольное приложение Win32:

.586
.model flat, stdcall
option casemap :none

GetStdHandle proto :dword
WriteConsoleA proto :dword, :dword, :dword, :dword, :dword
lstrlenA proto :dword
_kbhit proto C
ExitProcess proto :dword
Random proto :dword

.data
Txt db 'Строка из 10 случайных символов:', 13, 10, 0
Prompt db 13, 10, 10, 'Для продолжения нажмите любую клавишу', 0

.data?
Seed dd ?
hStdOut dd ?
String db 10 dup (?)

.code
N97533738:
    rdtsc
    mov Seed, eax
    mov ecx, 10
    lea edi, String
@@:
    invoke Random, 224
    add al, 32
    stosb
    loop @B
    invoke GetStdHandle, -11
    mov hStdOut, eax
    invoke lstrlenA, addr Txt
    invoke WriteConsoleA, hStdOut, addr Txt, eax, 0, 0
    invoke WriteConsoleA, hStdOut, addr String, 10, 0, 0
    invoke lstrlenA, addr Prompt
    invoke WriteConsoleA, hStdOut, addr Prompt, eax, 0, 0
@@:
    invoke _kbhit
    test eax, eax
    jz @B
    invoke ExitProcess, 0

Random proc stdcall uses edx, Range :dword
    mov eax, Seed
    mov edx, 134775813
    mul edx
    inc eax
    mov Seed, eax
    mov edx, Range
    mul edx
    mov eax, edx
    ret
Random endp

.stack 800h

    end N97533738

СЕ
Сергей Ефанов
51 590
Лучший ответ