0
내 코드가 작동하지 않습니다. 문제는 lea입니다 (6 번 줄). NetBeansIDE는 "opcode와 피연산자의 잘못된 조합"이라고 말합니다. 이 문제를 해결할 수있는 임시 해결책이 있습니까? 도움을 주시면 감사하겠습니다.문자열의 한 행에 3 개의 동일한 문자가 있는지 확인하십시오.
global _main
section .data
text: db "fdkvemDFderft", 0
section .text
_main:
lea si, text
no:
lodsb
or al,al
jz exit
cmp al,[si]
jnz no
cmp al,[si+1]
jnz no
;code
exit:
;code
mov eax, 4C00h
ret
-f win32
감사합니다. 그러나 여전히 작동하지 않습니다. 지금은 문제없이 컴파일됩니다. 'mov si, text'라고 쓸 때 "coff 형식은 32 비트가 아닌 위치 재 지정을 지원하지 않습니다." – user3025848
글쎄, 그 또 다른 문제. COFF 형식을 생성하지 마십시오. MS/DOS 함수 호출 (btw, AX에 4c00H를로드해야 함)을 사용하여 프로그램을 종료하는 것이 거의 없습니다. 0100H로 ORG 된 일반 이진 이미지 인 COM 파일을 생성하려고합니다. COFF는 ELF가 대체하기 전에 유닉스에서 주로 사용되었습니다. –
실제로, 당신은 teminate하지 않는다 - 당신은 단지 종료를 설정하기 시작하지만 그것을 완료하지 않는다. 비록 AX에서 4c00은 Windows 프로그램을 종료하는 방법이 될 수도 있지만, 나는 창문에 대해 아무것도 몰라. –