2016-10-02 3 views
-1

Wie kann ich die Nummer von der Tastatur lesen (angenommen, dass die Nummer von 0 bis 65535 sein kann) und Wert in AX Register mit DOS-Schnittstelle eingeben? Das Ergebnis sollte dasselbe sein, als würden wir zum Beispiel einfach MOV ax, 65535 schreiben. Ich habe es selbst versucht, aber es hat nicht geklappt. Ich möchte einen Code als Antwort sehenAssembly 8086 liest Nummer von der Tastatur

+0

Mögliches Duplikat von [Wie konvertiert man String in Nummer in 8086 Assembly?] (Http://stackoverflow.com/questions/36979870/how-to-convert-string-to-number-in-8086-assembly) – Ped7g

Antwort

2

Dies ist nicht einfach in der Montage. Sie müssen Routinen verwenden, die entweder vom Betriebssystem oder vom BIOS bereitgestellt werden, um einen Charakter zu lesen und dann darauf aufzubauen.

Sie haben die Frage mit emu8086 markiert, die eine DOS-Schnittstelle hat. In diesem Fall können Sie int 21h mit ah entweder 1 oder 7 verwenden, um ein Zeichen zu lesen. Sie müssen dann prüfen, ob es sich um ein gültiges Zahlenzeichen handelt, und dann in der Schleife weitere Werte lesen, bis Sie fertig sind. Es gibt eine int 21h Referenz here, die helfen sollte.

+0

Könnten Sie bitte ein Codebeispiel angeben? – Daniel

Verwandte Themen