Hardware Reference
In-Depth Information
38
FADD
yk,yk,q
39
xk kann uberschrieben werden
SET
xk,temp1
∗ r = x k +1
+ y k +1
40
41
FMUL
temp1,xk,xk
42
FMUL
temp2,yk,yk
43
FADD
r,temp1,temp2
44
FCMP
test,r,:M
45
BNP
test,2F
46
Punkt in Farbe k setzen
LDA
temp1,:Bmp:data
47
SET
temp2,:WIDTH
48
MUL
temp2,bildy,temp2 so viele Bytes bis y
49
ADD
temp2,temp2,bildx
50
STBU
k,temp1,temp2
51
JMP
4F
52
53 2H
CMP
test,k,:K
54
noch eine Iteration
BNZ
test,1B
55 ∗ sonst: farbe schwarz, also nichts zu tun
56 4H
Loop zuende
INCL
bildx,1
57
SET
test,:WIDTH
58
Zeilenende?
CMP
test,bildx,test
59
nein
BNZ
test,:Mandel
60
ja: in nachste Zeile
SET
bildx,0
61
INCL
bildy,1
62
CMP
test,bildy,:HEIGHT
63
PBNZ
test,:Mandel
64
Fertig!
POP
0,0
A.3.2 Quicksort
Quicksort gilt als das schnellste bekannte Sortierverfahren. Wir wollen einen
Bereich (Array) von ganzen Zahlen sortieren, die als Octabytes gespeichert
werden. Wir beginnen die Diskussion mit einem einfacheren Sortierverfahren,
namlich Insertion Sort. Dieses Verfahren ist lediglich geeignet, um sehr klei-
ne Felder mit maximal zehn Elementen schnell zu sortieren. Wir werden es
spater als Teil im Quicksort-Verfahren einsetzen. Links von einer bestimmten
Position seien alle Elemente sortiert. Diese Position ist anfangs die Position
des zweiten Elements (Index 1). In jedem Durchlauf wird das nachste Ele-
ment x in die Reihe der bereits sortierten Elemente eingefugt. Dazu wird von
rechts beginnend die Position gesucht, an der das Element x einzufugen ist.
Search WWH ::




Custom Search