私はこのコードを持っています:
section .data
msg3 db 'Enter Two Strings: '
msg3Len equ $ -msg3
section .bss
string1Len resb 1
string1 resb 0
string2Len resb 1
string2 resb 0
section .text
global _start
_start:
mov eax,4
mov ebx,1
mov ecx,msg3
mov edx,msg3Len
int 80h
mov eax,3
mov ebx,1
mov ecx,string1
int 80h
dec al
mov byte [string1Len], al
mov eax,3
mov ebx,1
mov ecx,string2
int 80h
dec al
mov byte [string2Len], al
mov eax,4
mov ebx,1
mov ecx,string1
mov edx,[string1Len]
int 80h
mov eax,4
mov ebx,1
mov ecx,string2
mov edx,[string2Len]
int 80h
mov eax, 0
mov ebx, 1
int 80h
2 つの文字列の印刷に問題があります。余分な文字やゴミ文字を印刷します。また、文字列を 3 つ印刷すると、余分な文字が印刷されます。正しいように見えるコードの何が問題なのですか?