ASM Tutorial

Fragen zu allen anderen Programmiersprachen.
Benutzeravatar
AND51
Beiträge: 5220
Registriert: 01.10.2005 13:15

Beitrag von AND51 »

Ich glaube, er meint mich.

Danke für die Info. WO gibt es denn so ein ganz gemütliches ASM tutorial, das mich nicht sofort überfordert ?

Mein Ziel mit ASM ist, mein Programm an einigen Stellen zu optimieren.

Nur als Beispiel: Sagen wir mal ich will die Variable 'bert.l=15' inkrementieren oder einen Wert hinzufügen. Mit PB würde das z. B. 3 ms dauern, den Wert hinzuzuaddieren, mit "INC bert" würde es aber nur 1 ms dauern. (Wie gesagt, nur als Beispiel)

Solche optimierungen meine ich. Solche "Tricks" will ich mir aneignen. Wo gibt es denn solche Infos? Ich habe natürlich schon gegoogled, aber was besseres als meine Delphi-Seite habe ich nicht gefunden. PB-Hilfe verweist auf www.flatassembler.net, aber die Seite ist ja außerdem auf engisch...
PB 4.30

Code: Alles auswählen

Macro Happy
 ;-)
EndMacro

Happy End
Benutzeravatar
Helle
Beiträge: 566
Registriert: 11.11.2004 16:13
Wohnort: Magdeburg

Beitrag von Helle »

In Google mal "Agner Fog" eingeben und das Optimierer-Herz lacht. Ist in Englisch, aber man bekommt mit, was gemeint ist.

Gruss
Helle

P.S.: Über die Tücken von inc und dec bei Test auf Überlauf habe ich mich hier irgendwo schon mal ausgelassen...
manunidi
Beiträge: 109
Registriert: 12.04.2006 22:44

Beitrag von manunidi »

Es heist nicht das ein assembler befehl schneller ist als z.b. 3!

Wenn man ich c++ z.B. i++ schreibt(erhöhrt i um eins)

dann macht der compiler daraus einen 3zeiler! Obs schneller ist oder nicht wäre schön zu wissen...
Benutzeravatar
Thorium
Beiträge: 1722
Registriert: 12.06.2005 11:15
Wohnort: Germany
Kontaktdaten:

Beitrag von Thorium »

manunidi hat geschrieben:Es heist nicht das ein assembler befehl schneller ist als z.b. 3!

Wenn man ich c++ z.B. i++ schreibt(erhöhrt i um eins)

dann macht der compiler daraus einen 3zeiler! Obs schneller ist oder nicht wäre schön zu wissen...
Das wird in erster Linie davon abhängen wieviele Tackte ein Befehl benötigt. Müsste man bei Intel oder AMD aber einsehen können. Da schwirren bestimmt irgendwelche Datenblätter auf der Website rumm.
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.

Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke! Bild
Benutzeravatar
Helle
Beiträge: 566
Registriert: 11.11.2004 16:13
Wohnort: Magdeburg

Beitrag von Helle »

Ich bin ja sonst nicht so, aber:
Oh Herr, schmeiss Hirn vom Himmel :mrgreen: !

Gruss
Helle
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> dann macht der compiler daraus einen 3zeiler!

o_O ? wieso sollte er?

das ist ein einziger ASM-befehl, nämlich INC (und zwar auf die speicherstelle,
auf die der pointer zeigt, die der Varname ist)
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten