Turbo BASIC XL
From Atariki
(Różnice między wersjami)
Wersja z dnia 06:07, 4 sty 2006 KMK (Dyskusja | wkład) (→Błędy w Turbo BASIC-u) ← Previous diff |
Wersja z dnia 06:10, 4 sty 2006 KMK (Dyskusja | wkład) (→Błędy w Turbo BASIC-u) Next diff → |
||
Linia 8: | Linia 8: | ||
* próba wykonania potęgowania z ujemnym wykładnikiem (np. '''? 10^-1''') powoduje komunikat '''ERROR- 11 OVERFLOW'''. | * próba wykonania potęgowania z ujemnym wykładnikiem (np. '''? 10^-1''') powoduje komunikat '''ERROR- 11 OVERFLOW'''. | ||
* kontrola składni nie przyjmuje słów kluczowych '''%GET''', '''%PUT''' i '''-MOVE''' jeśli są wpisane małymi literami. | * kontrola składni nie przyjmuje słów kluczowych '''%GET''', '''%PUT''' i '''-MOVE''' jeśli są wpisane małymi literami. | ||
+ | * kontrola składni przyjmuje zmienne tekstowe jako argumenty instrukcji '''GET''', chociaż ta może zapisywać wartości tylko do zmiennych numerycznych. | ||
* funkcja '''DEC''' źle działa, jeśli przekazana jej liczba szesnastkowa zawiera małe litery. | * funkcja '''DEC''' źle działa, jeśli przekazana jej liczba szesnastkowa zawiera małe litery. | ||
Wersja z dnia 06:10, 4 sty 2006
Odmiana języka BASIC dla komputera Atari XL/XE, stworzona przez Franka Ostrowskiego, wgrywana do pamięci RAM komputera. Charakteryzuje się dużą ilością rozszerzeń w stosunku do oryginalnego Atari BASIC-a, ma też kompilator Turbo BASIC XL Compiler.
Pierwszorzędną cechą Turbo BASIC-a XL jest jego szybkość, programy wykonywane są od trzech do pięciu razy szybciej niż w interpreterze Atari BASIC, co jest w sporej części wynikiem tego, iż Turbo BASIC ma własny, bardzo szybki pakiet procedur zmiennoprzecinkowych, który sprawdza się świetnie w większości zastosowań.
Błędy w Turbo BASIC-u
- uruchomienie programu: 10 TRAP 10:GET #1,A powoduje całkowite zapełnienie i "zawinięcie" się stosu procesora; instrukcja TRAP wprawdzie zdejmuje ze stosu pewną ilość danych, ale rzadko bywa to ilość właściwa. Ten sam błąd ma też Atari BASIC.
- porównanie dwóch funkcji CHR$ w jednym wyrażeniu jest zawsze prawdziwe, np. IF CHR$(1)=CHR$(2) THEN STOP spowoduje zatrzymanie programu. Ten sam błąd ma też Atari BASIC.
- próba wykonania potęgowania z ujemnym wykładnikiem (np. ? 10^-1) powoduje komunikat ERROR- 11 OVERFLOW.
- kontrola składni nie przyjmuje słów kluczowych %GET, %PUT i -MOVE jeśli są wpisane małymi literami.
- kontrola składni przyjmuje zmienne tekstowe jako argumenty instrukcji GET, chociaż ta może zapisywać wartości tylko do zmiennych numerycznych.
- funkcja DEC źle działa, jeśli przekazana jej liczba szesnastkowa zawiera małe litery.
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.