Assembly x86 NASM - Vermeiden Sie das Lesen der Eingabetaste
Ich habe gerade angefangen, Assembler zu lernen und finde keine nützlichen Inhalte, die helfen.
Ich erstelle ein einfaches Programm, das Benutzereingaben liest:
section .bss
opA: resw 1
opB: resw 1
section .text
global _start
inputA:
mov EAX, 3
mov EBX, 0
mov ECX, opA
mov EDX, 1
int 80h
inputB:
mov EAX, 3
mov EBX, 0
mov ECX, opB
mov EDX, 1
int 80h
/*terminate*/
Das Problem ist, dass, nachdem ich den ersten Wert eingegeben und die Eingabetaste gedrückt habe, das zweite sys_read übersprungen wird (ich glaube, es liest das Zeichen '\ n').
Also habe ich versucht zu vergleichen, ob opB '\ n' gespeichert hat und im positiven Fall springe ich zurück zu 'inputB:', so:
cpm word[opA], '\n'
je inputB
Aber es funktioniert nicht! Wie kann ich das lösen?
Einfacher,So entfernen Sie einen Zeilenumbruch aus einer Variablen?