Dyskusja:Biblioteczka kodera Atari XL/XE: Różnice pomiędzy wersjami
Przejdź do nawigacji
Przejdź do wyszukiwania
Nie podano opisu zmian |
nie wiem czy to się nadaje |
||
| Linia 2: | Linia 2: | ||
silwuple ;) [[Użytkownik:Mikey|Mikey]] 22:03, 27 gru 2007 (CET) | silwuple ;) [[Użytkownik:Mikey|Mikey]] 22:03, 27 gru 2007 (CET) | ||
== nie wiem czy to się nadaje == | |||
1) szybkie mnożenie przez -1. | |||
Z=A*(-1) to | |||
EOR #$ff | |||
STA Z | |||
INC Z | |||
2) ujemne indeksowanie przy wyszukiwaniu rosnącym - oszczędzamy porównanie w rej. indeksowym np. szukamy wartości A w łańcuchu TAB o długości L. | |||
LDY #$ff-L | |||
CMP TAB-($ff-L),Y | |||
BEQ _JEST | |||
INY | |||
BNE _DO_CMP | |||
[[Użytkownik:Xxl|Xxl]] 20:21, 6 maj 2008 (CEST) | |||
Wersja z 6 maj 2008, 19:21
proponuje dodać temat "Techniki skracania kodu" obok "Techniki przyspieszania kodu" - procedury optymalizowane nie na szybkość tylko na zajmowane miejsce. Xxl 21:56, 27 gru 2007 (CET)
silwuple ;) Mikey 22:03, 27 gru 2007 (CET)
nie wiem czy to się nadaje
1) szybkie mnożenie przez -1.
Z=A*(-1) to EOR #$ff STA Z INC Z
2) ujemne indeksowanie przy wyszukiwaniu rosnącym - oszczędzamy porównanie w rej. indeksowym np. szukamy wartości A w łańcuchu TAB o długości L.
LDY #$ff-L
CMP TAB-($ff-L),Y
BEQ _JEST
INY
BNE _DO_CMP
Xxl 20:21, 6 maj 2008 (CEST)