Temat: Porównanie różnych metod multiplikacji na 6502
Wiele metod, dokładna analiza, może ktoś skorzysta:
https://github.com/TobyLobster/multiply_test
Nie jesteś zalogowany. Proszę się zalogować lub zarejestrować.
Czwarta edycja ATASCII Compo! Dziś, 1 października 2024, oficjalnie rozpoczął się okres nadsyłania prac!
Silly Venture 2024 SE - stuff Dostępny jest już stuff z zeszłomiesięcznego party Silly Venture 2024
FujiCup FujiCup ma na celu wspieranie sceny gier retro, dając uczestnikom szansę na pokazanie swojego talentu
Echa Silly Venture 2024 SE Są już dostępne wyniki Silly Venture 2024 SE
Uaktualnienie firmware do The400 Poprawki do "fizycznego" emulatora ośmiobitowych komputerów i konsol Atari.
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
Wiele metod, dokładna analiza, może ktoś skorzysta:
https://github.com/TobyLobster/multiply_test
Wow. Aż miło poczytać taką analizę. Dobra rzecz!
no ja nadal nie mogę się zdecydować którą wybrać ;)
Oczywiście z Syzygy 6. Bez znaku to samo co mult14, ze znakiem tutaj są wolniejsze.
Ostatnio edytowany przez Fox (2024-02-18 20:12:11)
Wrzuciłem jako smult10.
Edit: @Laoo: możeby tak wzmianka o akceleracji na Lynxie?
Ostatnio edytowany przez Fox (2024-02-19 08:02:48)
Hm... chyba to nie jest w zakresie tego artykułu. Na Lynksie po prostu wpisuje się wartości do rejestrów w odpowiedniej kolejności i po zapisaniu ostatniej + kilka cykli można z innych rejestrów przeczytać wynik. To nie ma związku z 6502 nawet do tego stopnia, że arytmometr mieści się w drugim czipie, w Suzy, czyli tym, który robi za blitter.
No i gratuluję najszybszego algorytmu 8x8!
https://github.com/TobyLobster/multiply … re-support
Aaa... tego punktu nie doczytałem. No to faktycznie. Można tam dodać.
Bardzo fajny artykuł. Chciałbym, żeby mądre głowy napisały podobny o dzieleniu i innych operacjach.
Ale Panowie. Tak trochę na marginesie.
Szanujmy się.
To jest "Porównanie różnych algorytmów mnożenia na 6502"!!!
Jak widzę ten obecny tytuł wątku to oczy krwawią!
A mnie się taki tytuł podoba i związku z tym czekam na adekwatny o dzieleniu: "Porównanie różnych metod dywagacji na 6502" innych działaniach: addycji i subSRAcji. ;-)
dzielenie? to inna bajka, nie spotkałem się z podobnymi do mnożenia metodami przyspieszającymi dzielenie, rozpętlenie pętli co najwyżej
@Tebe Przecież dzielenie to mnożenie przez odwrotność. W arytmetyce modularnej to nawet działa. Nawet sam dawałeś przykład kodu parę lat temu, a ja dopisałem do tego trochę teorii.
W silniku portalowym Numena projekcja perspektywiczna jest realizowana przez wyznaczenie 40/Z i potem mnożenie.
Mnie też kłuje ta "multiplikacja", ale popieram "metody", bo są tam różne implementacje tego samego algorytmu.
xp := cx - newX div newZ;
https://codebase64.org/doku.php?id=base … it_product
wymaga poprawek, bo wynik dzielenia nie jest dokładny
https://www.bbcelite.com/6502sp/main/su … /ll28.html
https://gmplib.org/~tege/divcnst-pldi94.pdf
Ostatnio edytowany przez tebe (2024-02-23 13:05:34)
Oficjalnie posypuję głowę popiołem i przepraszam wszystkich urażonych ;) Ten anglicyzm wkradł się pewnie dlatego że wątek założyłem od razu po przeczytaniu artykułu.
Moje smult10 zostało zoptymalizowane o dwa cykle przy pomocy 256-bajtowej tablicy. Widzę też możliwość optymalizacji:
txa
eor #$80
tax
przy pomocy nielegala:
txa
sbx #$80
Strony 1
Zaloguj się lub zarejestruj by napisać odpowiedź
[ Wygenerowano w 0.078 sekund, wykonano 9 zapytań ]