[#15]
Re: [asm] gry w asemblerze ze źródłami
@RomanWorkshop,
post #6
Przełożyłem na asembler 68000 obiecany algorytm konwersji. Na procesorach 8-bitowych (6502, AVR) jest on jedynym, szybkim sposobem na zamianę 32-bitów na postać dziesiętną ASCII. Niestety na procesorze 68000 ani rozmiar algorytmu, ani jego szybkość nie są lepsze, niż w tradycyjnym sposobie konwersji. Poniżej porównanie:
Konwersja 8-bitów do systemu DEC-ASCIIZ:
ConBD: 34 bajty, 636-948 cykli
Con8D: 50 bajtów, 1264-1352 cykli
Konwersja 16-bitów do systemu DEC-ASCIIZ:
ConWD: 40 bajtów, 1026-1650 cykli
Con16D: 52 bajty, 3672-4046 cykli
Konwersja 32-bitów do systemu DEC-ASCIIZ:
ConLD: 79 bajtów, 910-2962 cykli
Con32D: 54 bajty, 14338-15900 cykli
Najmniejsza liczba cykli jest potrzebna przy konwersji danych o zerowej wartości ($00, $0000, $00000000),
a największa przy konwersji danych o maksymalnej wartości ($FF, $FFFF, $FFFFFFFF).