Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Diskussion über swap a,b und Co. (*grins*)

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 18.07.2006, 12:52    Titel: Diskussion über swap a,b und Co. (*grins*) Antworten mit Zitat

Tja, ich habe mi gedacht, dass es ganz nützlich wäre einmal die Tricks und Kniffe der FreeBasic Community zu sammeln. Ich möchte hier alle btite einen Trick oder mehr hinein zu schreiben. Ich fang mal an mit etwas ganz banalem:

Code:

'swap a,b ist langsamer als:
asm
x=x xor y
y=y xor x
x=x xor y
end asm

_________________
Danke an Volta für seine großartige MMX_fade function. *verneig*
Personal-DNA:
<script src="http://personaldna.com/h/?k=qtrCFboSuCOpFrX-OI-AADBA-f78d&t=Free-Wheeling+Leader">
</script>


Zitat:
Das Forum für den zum QBASIC kompatieblen open soure FreeBasic Kompiler.
by DJ. Peters

Zuletzt bearbeitet von psygate am 24.07.2006, 12:17, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 18.07.2006, 15:41    Titel: Antworten mit Zitat

Nichts gegen deine Idee, aber:
Für Quellcode gibt es http://www.fbarchiv.de und für Artikel http://de.wikibooks.org/wiki/FreeBasic.

Aber Interresanter Code!
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 18.07.2006, 15:51    Titel: Antworten mit Zitat

So ähnlich hab ich das doch schon mal gesehen grinsen
http://www.freebasic.net/forum/viewtopic.php?t=4875
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 19.07.2006, 23:16    Titel: Antworten mit Zitat

Jap, habs gesucht aber nicht gefunden.

@M. Frey: Ja, aber da stehen nur Codes drinnen, aber nicht solche kleinen tricks. Dieses x=x cor y ist nämlich viel schneller als swap. Solche kleinen 'Speed-Ups' findet man auf fb@rchiv einfach nicht.
_________________
Danke an Volta für seine großartige MMX_fade function. *verneig*
Personal-DNA:
<script src="http://personaldna.com/h/?k=qtrCFboSuCOpFrX-OI-AADBA-f78d&t=Free-Wheeling+Leader">
</script>


Zitat:
Das Forum für den zum QBASIC kompatieblen open soure FreeBasic Kompiler.
by DJ. Peters
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Michael Frey



Anmeldungsdatum: 18.12.2004
Beiträge: 2577
Wohnort: Schweiz

BeitragVerfasst am: 20.07.2006, 11:49    Titel: Antworten mit Zitat

Du kannst auch fbarchiv auch selbst Code hochladen zwinkern .
Nun, mal seh'n wie sich der Thread entwickelt und dann Entscheiden.
_________________
http://de.wikibooks.org/wiki/FreeBasic Jede Hilfe für dieses Buch ist Willkommen!
http://de.wikibooks.org/wiki/FreeBasic:_FAQ FAQ zu Freebasic (im Aufbau, hilfe Willkommen)
Neu mit Syntax Highlight
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 20.07.2006, 12:11    Titel: Antworten mit Zitat

Wenn wir hier weiter so diskutieren, dann gar nciht. durchgeknallt

Aber ich hab da noch was:

auch wenn komplizierter aus sieht, aber es geht auch:

Code:

x=3
y=4

print x or y
print not(not(x) and not(y))

print x and y
print not(not(x) or not(y))

print x xor y
print not(x) and y or x and not(y)
sleep


Naja, is jetzt nciht wirklich ein trick, sollte aber vielleicht ein bisschen helfen die arbeit der logischen operatoren zu verstehen.

Und, nachdem FreeBASIC anscheinend nicht fähig ist mit double werten (3.1415xxxxxxxx) eine mod operation auszuführen, kann man als subroutine ja diese version einbauen:

x mod y=x-int(x/y)*y
[/code]
_________________
Danke an Volta für seine großartige MMX_fade function. *verneig*
Personal-DNA:
<script src="http://personaldna.com/h/?k=qtrCFboSuCOpFrX-OI-AADBA-f78d&t=Free-Wheeling+Leader">
</script>


Zitat:
Das Forum für den zum QBASIC kompatieblen open soure FreeBasic Kompiler.
by DJ. Peters
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 20.07.2006, 14:02    Titel: Antworten mit Zitat

Das ist kein 'Fehler' von FreeBASIC!
Mod ist eine Funktion für Integerzahlen:
Das englische Wiki hat Folgendes geschrieben:
Description:
Mod is the modulus or "remainder" arthimetic operator. The result of Mod is the integer remainder of number1 divided by number2. If either number1 or number2 is not an integer value then it is rounded to the nearest whole number.
Ein solcher Hinweis fehlt in der deutschen Hilfe.
[Edit]
Eine ausführliche Beschreibung des Befehles Mod ist hier
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 21.07.2006, 13:23    Titel: Re: Tricks und Kniffe Antworten mit Zitat

psygate hat Folgendes geschrieben:
Tja, ich habe mi gedacht, dass es ganz nützlich wäre einmal die Tricks und Kniffe der FreeBasic Community zu sammeln. Ich möchte hier alle btite einen Trick oder mehr hinein zu schreiben. Ich fang mal an mit etwas ganz banalem:

Code:

'swap a,b ist langsamer als:
asm
x=x xor y
y=y xor x
x=x xor y
end asm

Der Vorschlag für so eine Rubrik ist ja nicht schlecht.
Aber wenn man solch einen Beitrag vorher nicht mal ausprobiert... durchgeknallt
1. zwischen asm ... end asm funktionieren keine normalen Basicanweisungen mit dem Kopf durch die Mauer wollen
2. swap a, b ist schneller als die 3 Basicanweisungen grinsen
Code:
option explicit

#include once "windows.bi"
const _COUNTER_LOOP_COUNT_ = 1000

dim shared as ulongint _counter_tsc1_, _counter_tsc2_
dim shared as ulongint _counter_overhead_, counter_cycles
dim shared as uint _counter_loop_counter_

sub _counter_code1_
    asm
        xor eax, eax
        cpuid
        rdtsc
        mov [_counter_tsc1_], eax
        mov [_counter_tsc1_+4], edx
    end asm
end sub

sub _counter_code2_
    asm
        xor eax, eax
        cpuid
        rdtsc
        mov [_counter_tsc2_], eax
        mov [_counter_tsc2_+4], edx
    end asm
end sub

#define COUNTER_BEGIN _
    _counter_overhead_ = 2000000000 :_
    counter_cycles = 2000000000 :_
    SetPriorityClass( GetCurrentProcess(), HIGH_PRIORITY_CLASS ) :_
    for _counter_loop_counter_ = 1 to _COUNTER_LOOP_COUNT_ :_
        _counter_code1_ :_
        _counter_code2_ :_
        if (_counter_tsc2_ - _counter_tsc1_) < _counter_overhead_ then :_
            _counter_overhead_ = _counter_tsc2_ - _counter_tsc1_ :_
        endif :_
    next :_
    for _counter_loop_counter_ = 1 to _COUNTER_LOOP_COUNT_ :_
        _counter_code1_
'
' *** Note the open FOR loop ***
'
#define COUNTER_END _
        _counter_code2_ :_
        if (_counter_tsc2_ - _counter_tsc1_) < counter_cycles then :_
            counter_cycles = _counter_tsc2_ - _counter_tsc1_ :_
        endif :_
    next :_
    SetPriorityClass( GetCurrentProcess(), NORMAL_PRIORITY_CLASS ) :_
    counter_cycles -= _counter_overhead_

dim as integer x,y,z

x=5:y=-233
counter_begin
swap x,y
counter_end
print "swap x,y                         : ";counter_cycles;" CPU - Takte"

x=5:y=-233
counter_begin
z=x :x=y :y=z
counter_end
print "z=x :x=y :y=z                    : ";counter_cycles;" CPU - Takte"

x=5:y=-233
counter_begin
x=x xor y: y=y xor x: x=x xor y
counter_end
print "x=x xor y: y=y xor x: x=x xor y  : ";counter_cycles;" CPU - Takte"

Sleep

Quelle Testprogramm:
http://www.freebasic.net/forum/viewtopic.php?p=34325#34325

Gruß Volta
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 23.07.2006, 12:06    Titel: Antworten mit Zitat

Hi,
Diese 'Tricks' funktionieren aber nur mit Integers..
(und auch nur durch Veränderung der beteiligten Variablen, was mir gegen den Strich geht!)
Swap kann aber mehr..
Code:
'Ä=Ž , Ö=™ , Ü=š ; ä=„ , ö=”, ü=? , ß=á ,§=õ , ©=¸
Option Escape
Option Explicit

Const Pi=4.0*Atn(1.0), Rho=50.0/Atn(1.0)
Dim As Double a=Pi, b=Rho
Dim As Long c=19, d=4
?"Swapz.Bas ¸2006 by ytwinky, MD"
?"a=" &a &" b=" & b
?"Swap a, b"
Swap a, b
?"a=" &a &" b=" & b
?"c=" &c &" d=" & d
?"Swap c, d"
Swap c, d
?"c=" &c &" d=" & d
?"a=" &a &" d=" & d
?"Swap a, d"
Swap a, d
?"a=" &a &" d=" & d
?"\nDaá das letzte Beispiel verkehrt ist, weiá ich.."
?"Warum der fbc das nicht weiá, weiá ich nicht ;-))"
?"(auch wenn 64 schon ziemlich nah an 63,6619.. dran ist,"
?"bleibt 19 relativ weit von 0 entfernt..)"
?"a=" &a &" d=" & d
?"Swap d, a"
Swap d, a
?"a=" &a &" d=" & d
?"Ooops, gerundet.."
?"voltas Tipp eingef?gt(auch).."
?"Eniki..";
Sleep
..nämlich ohne Klimmzüge Doubles oder Integers vertauschen.
(Double und Integer vertauschen klappt nicht ohne Probleme, wie das Beispiel zeigt..
Hmm, eine Typ-Prüfung würde die Funktion stark verlangsamen, wenn sie in langen
Schleifen(Sortieren) verwendet wird..
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..

Zuletzt bearbeitet von ytwinky am 23.07.2006, 15:31, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 23.07.2006, 13:54    Titel: Antworten mit Zitat

Hi ytwinky,
ich hab deinen Test mal ergänzt mit:
Code:
?
?"Swap d, a"
Swap d, a
?"a=" & a &" d=" & d
also mal den letzten Tausch 'rückgängig' gemacht.
Code:
Swapz.Bas ¸2006 by ytwinky, MD
a=3.141592653589793 b=63.66197723675813
Swap a, b
a=63.66197723675813 b=3.141592653589793
c=19 d=4
Swap c, d
c=4 d=19
a=63.66197723675813 d=19
Swap a, d
a=9.387247270983684e-323 d=64

Swap d, a
a=64 d=19
Daá das letzte Beispiel verkehrt ist, weiá ich..
Warum der fbc das nicht weiá, weiá ich nicht ;-))
Eniki..
Das ist das Ergebnis.
Vermutlich wird die 32bit-Integer nur bitweise in die 64bit -Double kopiert, nicht konvertiert. Das zurück kopieren funktioniert dann auch.
Gruß Volta
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dusky_Joe



Anmeldungsdatum: 07.01.2005
Beiträge: 1007
Wohnort: Regensburg/Oberpfalz

BeitragVerfasst am: 23.07.2006, 14:11    Titel: Antworten mit Zitat

Wie einige vllt wissen, sammle ich solche Routinen für meine commonstatements.bi (Siehe auch Projektvorstellungen), eine Include, die eine ganze reihe nützlicher Codefragmente, DEFINEs and so on enthält. Hat jemand etwas dagegen, wenn die im rahmen dieser Diskussion entstehenden Procs an die BI anfüge?

Ich hatte vor, die File in nächster Zeit auf stefan.freebasic.de zu veröffentlichen.

Have a nice day
Ciao
Stefan
_________________
fully biological degradable

Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 23.07.2006, 15:37    Titel: Antworten mit Zitat

Hi Dusky_Joe,
nö, ich hab nix dagegen..
..reicht eigenlich noch eine CD im die BI-Datei zu brennen oder muß es schon eine DVD sein vor lachen auf dem Boden rollen
(dann müßte ich ernstlich die Anschaffung eines DVD-Brenners erwägen,
oder, wie gewisse andere Herren auch, die Liga der Analog/ISDN-Nutzer verlassen..)
Gruß
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 23.07.2006, 18:03    Titel: Antworten mit Zitat

Nein! Nicht du auch noch! durchgeknallt
(Man verzeihe mir weiters noch den OT...grinsen)
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
ytwinky



Anmeldungsdatum: 28.05.2005
Beiträge: 2624
Wohnort: Machteburch

BeitragVerfasst am: 23.07.2006, 18:38    Titel: Antworten mit Zitat

Hey, ruhig Brauner, der Kutscher kennt den Weg..
Anlog/ISDN-Liga rulez vor lachen auf dem Boden rollen
Analoge Grüße
ytwinky
_________________
v1ctor hat Folgendes geschrieben:
Yeah, i like INPUT$(n) as much as PRINT USING..
..also ungefähr so, wie ich GOTO..
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 24.07.2006, 11:07    Titel: Antworten mit Zitat

So. Ejtzt habt ihr geschafft. durchgeknallt

jetzt musss ich ncoh was dazu schreiben:

swap a,b kann amn auch durch
Code:

a=a+b
b=a-b
a=a-b

ersetzen. Das ist jetzt mein letzter beitrag für heute. Achja, könnte nicht ein Mod diesen Thread in "Diskussion über Swap a,b" umbenennen? Wäredoch treffender durchgeknallt lachen
_________________
Danke an Volta für seine großartige MMX_fade function. *verneig*
Personal-DNA:
<script src="http://personaldna.com/h/?k=qtrCFboSuCOpFrX-OI-AADBA-f78d&t=Free-Wheeling+Leader">
</script>


Zitat:
Das Forum für den zum QBASIC kompatieblen open soure FreeBasic Kompiler.
by DJ. Peters
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 24.07.2006, 11:38    Titel: Antworten mit Zitat

Dazu brauch's keinen Mod und keinen Admin - kannst du leicht selber machen. Editiere einfach deinen ersten Beitrag (den Eröffnungsbeitrag) und gib' als Titel was anderes an. zwinkern

Übrigens: interessanter Lösungsweg. lachen

@ytwinky:
Aufdass uns die analoge (ich fass ISDN, auch wenn's nicht korrekt ist mal mit dazu grinsen) Welt noch lange erhalten bleibe. happy
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 25.07.2006, 11:20    Titel: Antworten mit Zitat

Hi psygate,
schön das du jetzt geschrieben hast 'swap a,b kann man auch durch .. ersetzen' grinsen
Ist richtig, .. aber warum sollte man das machen?
Ich würd auch nicht alle Subtraktionen
Code:
x= 100 : y= 54
?x + 1 + not y
so ersetzen zwinkern

Gruß Volta

@Dusky_Joe, auch ich hab nix dagegen..
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
psygate



Anmeldungsdatum: 05.04.2005
Beiträge: 304
Wohnort: Wien und der Computer

BeitragVerfasst am: 25.07.2006, 13:15    Titel: Antworten mit Zitat

@Dusky: Auch wenn cih nciht erwarte, dass du was von meinen willst, aber gerne lachen

@Volta:

Mann... Langsam glaube ich immer weniger, dass du ein Mensch bist...
Sag mal, hat man dich mit Computerbauteilen oder so gefüttert, als du noch ein Kind warst? Das ist ein fast unglaubliches WIssen, welches du da besitzt...

Aber frage am rande: Wird das nicht prozessor-intern so abgehnandelt mit
1 + not y ? Ich meine irgendwo mal gelesen zu haben ,dass ein Proz eh nicht Subtrahieren kann?
_________________
Danke an Volta für seine großartige MMX_fade function. *verneig*
Personal-DNA:
<script src="http://personaldna.com/h/?k=qtrCFboSuCOpFrX-OI-AADBA-f78d&t=Free-Wheeling+Leader">
</script>


Zitat:
Das Forum für den zum QBASIC kompatieblen open soure FreeBasic Kompiler.
by DJ. Peters
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 25.07.2006, 13:28    Titel: Antworten mit Zitat

psygate hat Folgendes geschrieben:
Aber frage am rande: Wird das nicht prozessor-intern so abgehnandelt mit
1 + not y ? Ich meine irgendwo mal gelesen zu haben ,dass ein Proz eh nicht Subtrahieren kann?

Du liegst nicht weit daneben:

http://de.wikipedia.org/wiki/Zweierkomplement

Zum Titelthema: Wir können sonst die Swap-Operation mathematisch einmal beweisen. Dazu schreibe ich sie leicht um:

a1=a0+b0
b1=a1-b0
a2=a1-b1

Behauptung: a2=b0, b1=a0

Beweis durch Substitution und anschliessendem Vereinfachen:

a2=a1-b1=(a0+b0)-(a1-b0)=(a0+b0)-((a0+b0)-b0) = a0+b0-(a0+b0-b0)=a0+b0-a0=b0
b1=a1-b0=(a0+b0)-b0=a0+b0-b0=a0

Vermutlich operationenmässig spart man keine Zeit, dagegen jedoch Speicherplatz, weil keine Temp-Variable nötig ist.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1876
Wohnort: D59192

BeitragVerfasst am: 25.07.2006, 14:15    Titel: Antworten mit Zitat

Hi,
ich bin ganz menschlich (obwohl meine Azubis manchmal auch das Gegenteil behaupten grinsen ).
Ganz normal an der Mutterbrust groß geworden, da es noch keine Computer gab mit deren Teilen man mich füttern konnte. happy
Ich hab nur die letzten 40 Jahre verlegen sehr viele Erfahrungen sammeln können.

dreael hat deine Fragen schon beantwortet.
Obwohl (entschuldige @dreael) solche mathematischen Beweise hab ich immer gehasst missbilligen (ich war immer zu faul diese Dinger nachzuvollziehen).

Gruß Volta

Edit/
@dreael,
der Tausch von Variableninhalten ist operationstechnisch einfacher und in wenigen CPU-Takten erledigt als 3 Rechenoperationen. Der Test in dem Beitrag oben zeigt das auch.
Edit2/
dumm gelaufen, habe das gerade auf einem Celeron 2,93GHz nachgeprüft und siehe da: genau anders.
Swap braucht mehr Taktzyklen als die 3 Rechenoperationen!!
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz