home *** CD-ROM | disk | FTP | other *** search
- DOSSEG
- .MODEL SMALL
- .STACK 200h
- .DATA
- GrussAnWelt DB 'Hallo, Welt!',0Dh,0Ah,0
- GrussAnSonnen DB 'Hallo, Sonnensystem!',0Dh,0Ah,0
- GrussAnUniversum DB 'Hallo, Universum!',0Dh,0Ah,0
- .CODE
- HauptProgramm PROC NEAR
- mov ax,@DATA
- mov ds,ax
- mov bx,OFFSET GrussAnWelt
- call StringAusgabe ; 'Hallo, Welt' ausgeben
- mov bx,OFFSET GrussAnSonnen
- call StringAusgabe ; 'Hallo, Sonnensystem' ausgeben
- mov bx,OFFSET GrussAnUniversum
- call StringAusgabe ; 'Hallo, Universum' ausgeben
- mov ah,4Ch ; DOS-Funktion für Programmende
- int 21h ; ...und fertig
- Hauptprogramm ENDP
- ;
- ; Unterprogramm für die Ausgabe eines mit NUL abgeschlossenen Strings.
- ;
- ; Eingabe:
- ; DS:BX - Zeiger auf String, der ausgegeben werden soll.
- ;
- ; Veränderte Register: AX, BX
- ;
- StringAusgabe PROC NEAR
- AusgabeSchleife:
- mov dl,[bx] ; nächstes Ziechen im String holen
- and dl,dl ; Hat das Zeichen den Wert NUL
- jz EndeDerAusgabe ; Stringende erreicht!
- inc bx ; Zeiger für nächstes Zeichen erhöhen
- mov ah,2 ; DOS-Ausgabe-Funtkion
- int 21h ; DOS-Aufruf für Zeichenausgabe
- jmp AusgabeSchleife ; nächstes Zeichen ausdrucken
- EndeDerAusgabe:
- ret ; Rückkehr zum aufrufenden Programm
- StringAusgabe ENDP
- END HauptProgramm
-