|
|
||||||||||||
AW: D+ und D++
http://www.6502.org/tutorials/compare_beyond.html A surprisingly common sequence in 6502 code is: LDA NUM1 CMP NUM2 BCC LABEL BEQ LABEL (or something similar) which branches to LABEL when NUM1 <= NUM2. (In this case NUM1 and NUM2 are unsigned numbers.) However, consider the following sequence: LDA NUM2 CMP NUM1 BCS LABEL which branches to LABEL when NUM2 >= NUM1, which is the same as NUM1 <= NUM2. Not only that, it's shorter and (in many cases) faster. Scheint meine Erinnerung mich doch nicht getäuscht zu haben ![]() Gruß Mike P.S.: Der ein oder andere hier hat in seiner Jugend sicherlich mal eines meiner Programme mit Unmengen von Data Zeilen aus 'ner 64er oder Happy Computer abgetippt (war 6510 Assembler deshalb ist es mir noch ein wenig vertraut) ![]()
__________________
Das Universum und die Dummheit der Menschen sind grenzenlos. Wobei ich mir beim Universum nicht so sicher bin. (Albert Einstein) Geändert von Mach2000 (11.08.2009 um 16:50 Uhr) |
|
||||||||||||
AW: D+ und D++
Ich habe nochmal Google bemüht ...
http://www.6502.org/tutorials/compare_beyond.html A surprisingly common sequence in 6502 code is: LDA NUM1 CMP NUM2 BCC LABEL BEQ LABEL (or something similar) which branches to LABEL when NUM1 <= NUM2. (In this case NUM1 and NUM2 are unsigned numbers.) However, consider the following sequence: LDA NUM2 CMP NUM1 BCS LABEL which branches to LABEL when NUM2 >= NUM1, which is the same as NUM1 <= NUM2. Not only that, it's shorter and (in many cases) faster. Scheint meine Erinnerung mich doch nicht getäuscht zu haben ![]() Gruß Mike ![]() ![]() Ja, die Befehle bewirken prinzipiell das gleiche ... mit eben den von Dir bereits festgestellten Unterschied von >= zu >. Das heisst, der D+ verzweigt auch dann, wenn beide Speicherinhalte gleich sind. Der D++ tut das nicht. Damit bleibt es aber dabei: Thorsten's These wird dadurch nicht entkräftet (eher erhärtet), aber beweisen kann das leider auch nix... Zitieren:
P.S.: Der ein oder andere hier hat in seiner Jugend sicherlich mal eines meiner Programme mit Unmengen von Data Zeilen aus 'ner 64er oder Happy Computer abgetippt (war 6510 Assembler deshalb ist es mir noch ein wenig vertraut) ![]() ![]() ![]() Gruß, Willi |
|
||||||||||||
AW: D+ und D++
![]() Gruß Mike
__________________
Das Universum und die Dummheit der Menschen sind grenzenlos. Wobei ich mir beim Universum nicht so sicher bin. (Albert Einstein) |
|
||||||||||||
AW: D+ und D++
![]() Du willst Dich nur rausreden noch bevor Du dich als Verfasser diverser Reinfälle outest! ![]() Gruß, Willi <--- der sich eben noch was weinhaltiges besorgen muss, weil er sonst das Spiel gleich nicht erträgt... |
![]() |
|
|