Hi Leute
Also ich habs immer so gemacht:
mov esi,offset STRING1
mov edi,offset STRING2
@@: mov al,[esi]
mov [edi],al
inc edi
inc esi
cmp al,0
jnz @B
Dann hab ich in diesen sauteueren dummen Buch aus dem FRANZIS' Verlag (liegt bei mir auf dem Klo, weiß auch warum) gelesen, und den Befehl movs, movsb .... entdeckt.
Ohhh .... hab ich mir gedacht,
dann geht es ja so:
mov edi,offset STRING1
xor ecx,ecx
@@: mov al,[esi]
inc esi
inc ecx
cmp al,0
jnz @B
mov esi,offset STRING1
mov edi,offset STRING2
sdf ; soll heißen Set Direction Flag , weiß nicht ob richtig
rep movsb
So und wenn man jetzt mal guckt was movsb macht, dann stellt man
fest, daß das Beispiel mit movsb ja viel mehr Zeit braucht, weil man vorher die Länge des Strings ermitteln muß, weil movsb ja keine Flags setzt. Warum auch, die meisten Strings enden ja mit null.
Keine Ahnung was RISK Architektur oder CISK Architektur wirklich ist, aber:
Waren die Prozessoren in den Apple-Rechnern wirklich soviel besser ?
Warum gibs die dann nicht mehr, oder andersrum: Warum lassen wir
immer die Dummheit nach oben ?

