ABC (kompilator): Różnice pomiędzy wersjami

Z Atariki
Przejdź do nawigacji Przejdź do wyszukiwania
mNie podano opisu zmian
m -stub
 
(Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika)
Linia 13: Linia 13:


== Odnośniki zewnętrzne ==
== Odnośniki zewnętrzne ==
* [https://seriouscomputerist.atariverse.com/media/pdf/manual/ABC%20BASIC%20Compiler%20-%20Manual.pdf A BASIC Compiler Reference Manual]
* [https://seriouscomputerist.atariverse.com/media/pdf/manual/ABC%20BASIC%20Compiler%20-%20Manual.pdf A BASIC Compiler Reference Manual] - instrukcja obsługi.
* [http://drac030.krap.pl/abc105p.arc ABC v.1.05] bez zabezpieczenia przed kopiowaniem.
* [http://drac030.krap.pl/abc105p.arc ABC v.1.05] bez zabezpieczenia przed kopiowaniem.


Linia 20: Linia 20:
* [[Turbo BASIC XL Compiler]]
* [[Turbo BASIC XL Compiler]]


{{stub}}
[[Kategoria:Oprogramowanie Atari 8-bit]]
[[Kategoria:Oprogramowanie Atari 8-bit]]
[[Kategoria:Języki programowania]]
[[Kategoria:Języki programowania]]
[[Kategoria:BASIC]]
[[Kategoria:BASIC]]

Aktualna wersja z 21 gru 2023, 17:50

Kompilator języka Atari BASIC wydany przez Monarch Data Systems. Ostatnia wersja to 1.05 z 1987 roku.

Nazwa

Oficjalne rozwinięcie skrótu "ABC" to A BASIC Compiler, a nie, jak mogłoby się wydawać, Atari BASIC Compiler, mimo że kompilator nie zna innego dialektu BASIC-a i akceptuje tylko pliki tokenizowane Atari BASIC.

Charakterystyka

ABC nie jest "prawdziwym" kompilatorem - program napisany w Atari BASIC nie jest przezeń tłumaczony bezpośrednio na kod maszynowy, ale na kod pośredni, który jest interpretowany przez zawsze dołączaną do programu bibliotekę (z tego powodu program skompilowany przez ABC nie bywa krótszy niż 4,5 KB). Mimo tego kompilaty działają od 4 do 12 razy szybciej niż oryginały interpretowane przez Atari BASIC.

Ograniczenia

Wszystkie obliczenia przeprowadzane w programie kompilator sprowadza do 24-bitowych liczb całkowitych ze znakiem (z zakresu od -8388608 do 8388607). Z tego powodu programy dokonujące obliczeń na ułamkach nie będą działać prawidłowo. Dodatkowo nie mamy też do dyspozycji bardziej zaawansowanych funkcji matematycznych, w tym trygonometrii, logarytmów itp., ale też potęgowania oraz funkcji RND(). Nie da się też wprost użyć stałych liczbowych powyżej 65535.

Sposoby obejścia tych i innych ograniczeń podaje instrukcja obsługi.

Odnośniki zewnętrzne

Zobacz też