.Model Small;64KB .Stack 100h;256 Bytes .DATA Meldung DB "Hello World",10,13,"$" ;DB -> 1 Byte ;in C: char Meldung[]="Hello World\n"; .CODE Start: WriteStr MACRO Str,WieOft mov ax,@data ;Data Segment nach AX mov ds,ax ;AX nach DS mov dx,OFFSET Str ;Offset von Str nach dx mov cx,WieOft ;Anzahl call RepStr ;Prozedur RepStr aufrufen ENDM WriteStr ;Macro Ende WriteStr Meldung,3 ;Variable Meldung 3 mal ausgeben mov ah,4Ch ;Programm beenden int 21h RepStr PROC NEAR ;Prozedur zum wiederholten ausgeben eines Strings push ax ;AX aufrufen push cx ;cx aufrufen mov ah,09h ;bereit machen zum ausgeben LoopLbl: int 21h ;ausgeben Loop LoopLbl ;wiederholen pop cx pop ax ret ;zurueck -> Zeile 17: mov ah,4Ch -> Programm beenden RepStr ENDP ;Prozedur Ende END Start ;Start Ende