Assemblerprogramm zur Umwandlung einer 16-Bit-Dualzahl Zahl in eine gebrochene BCD-Zahl |
![]() |
![]() |
Letztmalig dran rumgefummelt: 09.06.07 20:50:43 |
ist wahrscheinlich fehlerfrei und kann unbedenklich verwendet werden |
|
Beispiel
6: Zur Ausgabe einer Zahl
auf Bildschirm oder Drucker muss die Zahl im ASCII-Code vorliegen.
Lösung:
Marke | Operation | Operand | Kommentar |
PN | A6 | ||
;UMWANDLUNG. EINER GANZEN POSITIVEN DUALZAHL | |||
;IN DIE ASCII-DARSTELLUNG | |||
;EINGABEPARAMETER: DUALZAHL IN HL ADRESSE ASCII-PUFFER IN DE | |||
;AUSGABEPARAMETER: ASCII-ZAHL IM PUFFER | |||
DAS2: | PUSH | DE | |
XOR | A | ||
LD | D,A | ||
LD | B,10H | ;ZAEHLER FUER 16 BIT | |
ZYK: | ADD | HL,HL | |
ADC | A | ||
LD | E,A | ||
ADC | A | ||
DAA | |||
LD | E,A | ||
RL | C | ;UEBERTRAG AUS REGISTER DE NACH REGISTER C | |
LD | A,E | ||
DJNZ | ZYK-# | ||
LD | A,C | ||
;PROGRAMMABSCHNITT 2: UMWANDLUNG BCD - ASCII | |||
LD | C,O5H | ;5 BYTE-ASCII | |
POP | DE | ;ADRESSE ZEICHENPUFFER | |
Z0: | ADD | 30H | ;BILDUNG ASCII-ZEICHEN |
LD | (DE),A | ;ZEICHEN IN DEN PUFFER | |
DEC | C | ||
RZ | ;NACH 5 ZEICHEN FERTIG | ||
INC | DE | ||
XOR | A | ||
LD | B,04H | ;4-BIT-BCD-ZIFFER NACH A | |
Z1: | ADD | HL,HL | |
ADC | A | ||
DJNZ | Z1-# | ||
JR | ZO-# | ||
END |
Beispiel für eine kleine Anweisungstabelle in vollständiger Assembler-Codierung
![]() zur Hauptseite |
© Samuel-von-Pufendorf-Gymnasium Flöha | © Frank Rost im Juni 2007 |
... dieser Text wurde nach den Regeln irgendeiner Rechtschreibreform verfasst - ich hab' irgendwann einmal beschlossen, an diesem Zirkus nicht mehr teilzunehmen ;-) „Dieses Land braucht eine Steuerreform, dieses Land braucht eine Rentenreform - wir schreiben Schiffahrt mit drei „f“!“ Diddi Hallervorden, dt. Komiker und Kabarettist |