TITLE Рубежный контроль - вариант 5 - вырезание строки в другую строку - 6 ошибок
.model small, stdcall
.stack 128

.data
Input BYTE "There was a king, who ruled the land",0Ah, 0Dh,"His Majesty was in command",0Ah, 0Dh,"#With silver eyes the scarlet eagle",0Ah, 0Dh,"Showers silver on the# people", 0Ah, 0Dh,"$",0
Output BYTE LENGTHOF Input DUP(?)

LimitSym BYTE "#"

.code

main PROC
mov ax, @data
mov ds, ax
std 

mov si, OFFSET Input


cycle:			; Подсчёт длины строки
inc cx			;
lodsb			;
jnz cycle		;

mov si, OFFSET Input
mov di, OFFSET Output
			

edit:			; Копирование с заменой
			;
lodsb			;
cmp al, LimitSym	;
je BeginCut		;
loop edit		;

jmp Finish		;

BeginCut:		; Начало цикла замены
lodsb			;
cmp al, LimitSym	;
je Finish		;
stosb			;
loop BeginCut		;

Finish:
mov al,'$'		; Завершаем строку символом доллара для DOS-прерывания
stosb




mov ah, 09h		; Вывод строк
mov dl, OFFSET Input
int 21h			;
mov dl, OFFSET Output
int 21h			;




int 21h

main ENDP
END main