Wie kann ich in Assembler eine Zahl ausgeben?
Diese Anleitung hab ich im Internet gefunden:
7. Wie gebe ich eine Zahl aus?
Angenommen man möchte die Zahl ausgeben, die sich in einem Register befindet, so geht man folgendermaßen vor (für dezimale Ausgabe):
Man dividiert die Zahl so lange durch 10 bis der Quotient = 0 ist, und schiebt in jedem Durchlauf den Rest auf den Stack. Beispiel für die Zahl 2745:
2745 / 10 = 274, Rest 5, Stack: 5
274 / 10 = 27, Rest 4, Stack: 5, 4
27 / 10 = 2, Rest 7, Stack: 5, 4, 7
2 / 10 = 0, Rest 2, Stack: 5, 4, 7, 2
Nun befinden sich auf dem Stack die Ziffern in umgedrehter Reihenfolge. Das stellt allerdings kein Problem dar, da man mit der Anweisung pop immer den zuletzt auf den Stack geschobenenen Wert erhält.
Man konstruiert also eine weitere Schleife die nacheinander die Ziffern vom Stack holt und auf dem Bildschirm ausgibt.
Bitte?? 8o Geht es denn nicht einfacher eine Zahl auszugeben? Und wie lautet der Interrupt um eine Ziffer auszugeben?
Danke
mfg
BleedingSoul
Diese Anleitung hab ich im Internet gefunden:
7. Wie gebe ich eine Zahl aus?
Angenommen man möchte die Zahl ausgeben, die sich in einem Register befindet, so geht man folgendermaßen vor (für dezimale Ausgabe):
Man dividiert die Zahl so lange durch 10 bis der Quotient = 0 ist, und schiebt in jedem Durchlauf den Rest auf den Stack. Beispiel für die Zahl 2745:
2745 / 10 = 274, Rest 5, Stack: 5
274 / 10 = 27, Rest 4, Stack: 5, 4
27 / 10 = 2, Rest 7, Stack: 5, 4, 7
2 / 10 = 0, Rest 2, Stack: 5, 4, 7, 2
Nun befinden sich auf dem Stack die Ziffern in umgedrehter Reihenfolge. Das stellt allerdings kein Problem dar, da man mit der Anweisung pop immer den zuletzt auf den Stack geschobenenen Wert erhält.
Man konstruiert also eine weitere Schleife die nacheinander die Ziffern vom Stack holt und auf dem Bildschirm ausgibt.
Bitte?? 8o Geht es denn nicht einfacher eine Zahl auszugeben? Und wie lautet der Interrupt um eine Ziffer auszugeben?
Danke
mfg
BleedingSoul