Как изменить вывод строки с основного цвета на случайный - PullRequest
0 голосов
/ 24 апреля 2018

Я новичок в сборке и пытаюсь создать программу, которая выводит обратные слова строки пользователя. Я также хочу, чтобы каждый раз, когда пользователь что-то печатал, он выводил обратную строку в случайных цветах. Но я понятия не имею, как это сделать. Может ли кто-нибудь сделать этот код для меня или сказать мне, где изменить код? Заранее большое спасибо.

INCLUDE Irvine32.inc

.data

stringInput byte 50 dup(0)

promptIn byte "Enter the string: ",0

.code

swaping MACRO a,b

XOR a,b

XOR b,a

XOR a,b

ENDM

strlen proc

push ebp

mov ebp, esp

push ebx

mov eax, 0

mov ebx, [ebp+8]

Counter:

cmp byte ptr [ebx + eax], 0

je Done

inc eax

jmp counter

Done:

pop ebx

mov esp, ebp

pop ebp

ret TYPE ebp

strlen endp

strrev proc

Push ebp

MOV ebp, esp

Push eax

Push ebx

Push ecx

Mov ebx, [ebp+8]

Mov ecx, [ebp+8]

push ebx

call strlen

ADD ecx, eax

SHR al,1

count: CMP al,0

JZ finished

MOV ah, byte PTR [ebx]

swaping ah, byte ptr [ecx-1]

MOV BYTE PTR [ebx], ah

INC ebx

DEC ecx

DEC al

JMP count

finished: POP ecx

POP ebx

POP eax

MOV esp, ebp

POP ebp

RET (TYPE ebp)*4

strrev ENDP

main proc

mov eax, 0

mov edx, offset promptIn

call writeString

mov edx, offset stringInput

mov ecx, 51

call readString

push edx

call strrev

call crlf

call writestring

call crlf

exit

main endp

end main
...