Подскажите как исправить код. Я показываю лишь кусочек, что исправляю. Запускаем exe-файл через командную строку с параметром %SystemRoot% и код надо подправить так, что бы при вводе %SystemRoot% выводились данные как при %SystemRoot%\*.* в этом кусочке я и пыталась это сделать. Введенная строка с клавиатуры в командной строке хранится в Buffer. Я пыталась найти конец строки, проверить предыдущий символ на "%" и если так оно и есть то добавить после него "/*.*". В итоге не работает. ;начало кода xor eax,eax lea esi, Buffer @@:lodsb .if al==0h dec esi dec esi cmp byte ptr [esi], '%' jne next111 inc esi mov byte ptr [esi],'\' inc esi mov dword ptr [esi], 002A2E2Ah; *.* .else jmp @B .endif next111: ;продолжение кода
Я показываю лишь кусочек, что исправляю. Запускаем exe-файл через командную строку с параметром %SystemRoot% и код надо подправить так, что бы при вводе %SystemRoot% выводились данные как при %SystemRoot%\*.*
в этом кусочке я и пыталась это сделать. Введенная строка с клавиатуры в командной строке хранится в Buffer. Я пыталась найти конец строки, проверить предыдущий символ на "%" и если так оно и есть то добавить после него "/*.*".
В итоге не работает.
;начало кода
xor eax,eax
lea esi, Buffer
@@:lodsb
.if al==0h
dec esi
dec esi
cmp byte ptr [esi], '%'
jne next111
inc esi
mov byte ptr [esi],'\'
inc esi
mov dword ptr [esi], 002A2E2Ah; *.*
.else
jmp @B
.endif
next111:
;продолжение кода