You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+5-4Lines changed: 5 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -96,17 +96,18 @@ VARIA: .WORD 0 ; A%
96
96
Так же, как и в оригинале Бейсик Вильнюс:
97
97
- Один оператор на строку.
98
98
- Имена переменных опознаются по двум первым буквам + тип.
99
-
- Булевого типа нет, вместо него используется целый тип. Результат логических операторов (`=`, `<>`, `>`, `<` и т.п.) это либо -1 ("истина") либо 0 ("ложь").
99
+
- Булевого типа нет, вместо него используется целый тип. Результат логических операторов (`=`, `<>`, `>`, `<` и т.п.) это либо `-1` ("истина") либо `0` ("ложь").
100
100
101
101
Отличия от оригинала:
102
102
- Ключевые слова нужно писать полностью, сокращения НЕ допускаются.
103
-
- Для величин/переменных вещественного типа есть только тип Single (32 бита, 7 десятичных цифр). Числа двойной точности (например, `1234#` или `235.988D-7`) в тексте программы НЕ распознаются. Нет функции `CDBL`. Значение `PI` используется в точности Single. Все функции с вещественным результатом также отдают тип Single.
104
-
- Номера строк НЕ являются обязательными, они нужны только в случаях, когда на строку нужно сослаться в `GOTO`/`GOSUB`/`ON` и других операторах; исключение: в строке с `FOR` номер нужно указывать.
103
+
- Для величин/переменных вещественного типа есть только тип "одинарной точности" (Single, 32 бита, 7 десятичных цифр). Числа двойной точности (например, `1234#` или `235.988D-7`) в тексте программы НЕ распознаются. Нет функции `CDBL`. Значение `PI` используется в точности Single. Все функции с вещественным результатом также отдают тип Single.
104
+
- Номера строк НЕ являются обязательными, они нужны только в случаях, когда на строку нужно сослаться в `GOTO`/`GOSUB`/`ON` и других операторах.
105
105
- Под оператором `IF` в `THEN`/`ELSE` НЕ допускается ставить операторы `FOR`/`NEXT`/`DIM`/`DATA`
106
106
- Аргумент функций `CSRLIN` и `POS` необязательный, но если есть, то вычисляется (если он не константный), но результат вычисления не используется.
107
107
-`ON .. GOTO/GOSUB`: отрицательное значение выражения под `ON` не приводит к ошибке, просто переходим на строку, следующую после этого оператора.
108
108
- Добавлена функция `IIF` с тремя аргументами: `X=IIF(<ЛОГ.ВЫРАЖЕНИЕ>,<АРИФМ.ВЫРАЖЕНИЕ>,<АРИФМ.ВЫРАЖЕНИЕ>)`. Вычисляется первый аргумент; если он ненулевой (т.е. TRUE), то результатом будет значение второго выражения, иначе (для FALSE) - значение третьего выражения. Вычисляется только то выражение, результат которого будет использоваться. Тип результата зависит от типов второго и третьего аргументов: если они оба Integer, то и результат Integer; если хотя бы один из них Single, то и результат Single.
109
-
- Команды/операторы, которые не реализованы и НЕ БУДУТ реализованы в будущем:
109
+
-`CALL <МЕТКА>` генерирует вызов подпрограммы в машинных кодах с указанной меткой. Предполагается, что эти подпрограммы будут оформляться в виде отдельного модуля на MACRO/BKTurbo8 и подключаться к программе на этапе линковки.
110
+
- Команды/операторы, которые НЕ реализованы и НЕ БУДУТ реализованы в будущем:
110
111
-`RUN`, `CONT`
111
112
-`KEY` (переназначение функциональных клавиш)
112
113
-`LOAD`, `SAVE`, `CLOAD`, `CSAVE` (загрузка и сохранение текста программы)
0 commit comments