; Sei eine Oktett-Folge gegeben. ; Kopieren Sie alle Elementen von dieser Folge in eine andere bis ; zum ersten Charakter '0' (wenn in der Folge überhaupt kein '0' ; Charakter gibt, dann werden alle Werte kopiert), danach die ; übergebliebene Positionen (bis zur originelle Länge der erste Folge) ; werden mit 'Z' ergänzt. assume ds:data,cs:code data segment s1 db 'abc0def' ; die originelle Folge d equ $-s1 ; Länge der originelle Folge s2 db d dup(?) ; zweite Folge (Ergebnis) data ends code segment start: mov ax,data mov ds,ax mov es,ax mov si,offset s1 mov di,offset s2 cld ; Richtung der Durchlauf von kleinere zu größere Adresse mov cx,d wieder: lodsb cmp al,'0' je danach stosb ; wenn in Al nicht '0' ist, dann wird es in s2 kopiert loop wieder danach: mov cx,si sub cx,offset s1 ;...für die übergebliebene Positionen mov al,'Z' jcxz sf ;jcxz = jump if cx=0 rep stosb sf: mov ax,4C00h int 21h code ends end start