| SORT PROCEDURE |
| ENTRY |
DEC |
HL |
|
|
ADD |
HL,DE |
|
|
LD |
B,H |
|
|
LD |
C,L |
|
| DO |
|
|
; Beginn der äußeren Schleife |
|
PUSH |
DE |
|
|
LD |
A,(DE) |
|
| DO |
|
|
; Beginn der inneren Schleife |
|
LD |
H,D |
|
|
LD |
L,E |
|
|
INC |
HL |
|
|
CP |
(HL) |
|
| IF NC THEN |
|
|
|
| IF NZ THEN |
|
|
; Werte eventuell vertauschen |
|
LD |
E,A |
|
|
LD |
A,(HL) |
|
|
LD |
(HL),E |
|
| FI |
|
|
|
| FI |
|
|
|
|
LD |
D,H |
|
|
LD |
E,L |
|
|
OR |
A |
|
|
SBC |
HL,BC |
|
| IF NC THEN |
|
|
|
|
EXIT |
|
|
; innere Schleife verlassen |
| FI |
|
|
|
| OD |
|
|
; Ende der inneren Schleife |
|
POP |
DE |
|
|
LD |
(DE),A |
|
|
INC |
DE |
|
|
LD |
H,D |
|
|
LD |
L,E |
|
|
SBC |
HL,BC |
|
| IF NC THEN |
|
|
|
| RET |
|
|
; Prozedur verlassen |
| FI |
|
|
|
| OD |
|
|
; Ende der äußeren Schleife |
|
| END SORT |
|