Форум программистов, компьютерный форум, киберфорум
Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.60/47: Рейтинг темы: голосов - 47, средняя оценка - 4.60
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30

Вопрос про разные реализации бэйсиков

14.08.2009, 14:54. Показов 9875. Ответов 49
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Мы затеялинаписание самодельного интерпретатора бэйсика. На текущий момент какие-то несложные примеры уже работают, теоретическая база по принципам работы интерпретатора понятны, а потому для дальнейшей работы хотелось бы начать следовать синтаксису какого-то из существующих бэйсиков. Или по возможности близко подойти к этому

А потому вопрос, чем прициапиально отличаются разные реализации бэйсика и какой из них самый простой. На текущий момент решили работать без поддержки функций, а потому хотелось бы понять, насколько реально работать на бейсике при таком ограничении (или может такие реализации есть и на них работают).
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
14.08.2009, 14:54
Ответы с готовыми решениями:

Гиперссылки в ComboBox: вопрос реализации
привет всем) мне нужно из вылазиющих строчек в ComboBox сделать Гиперссылки на другую форму. (чтобы при нажатии на одно из слов в списке...

Вопрос по реализации блок-схем в VBA
Помогите пожалуйста реализовать блок -схему на VBA

Разные реализации одного интерфейса
Есть в javax.swing два класса, которые одновременно очень похожи, но в то же время и сильно различаются - это JList и JTable. Понадобилось...

49
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
24.08.2009, 18:50  [ТС]
Студворк — интернет-сервис помощи студентам
И ещё:

3. Есть A$="5", что надо написать, чтобы получить C=5?
0
 Аватар для kazak
3606 / 2746 / 356
Регистрация: 11.03.2009
Сообщений: 6,317
24.08.2009, 19:00
C = VAL(A$)
STR$ и VAL две противоположные функции, есть еще CHR$(INT) (по моему так пишется) возвращает ASCII символ по его коду.
1
Временно недоступен
 Аватар для #pragma
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
08.09.2009, 19:00
Ещё есть вопрос знатокам: как в QBASIC вычисляются логические выражения? Можно ли делать сложные условия,например
PureBasic
1
(a+b)<(d*f)|| c
Или просто
PureBasic
1
(a+b) < (d*f) > c
То есть когда в логическом выражении участвуют несколко под-выражений?И есть ли вообще такой оператор,как || и &&?
0
 Аватар для RazorQ
591 / 357 / 16
Регистрация: 06.02.2009
Сообщений: 1,386
08.09.2009, 20:07
То есть когда в логическом выражении участвуют несколко под-выражений?И есть ли вообще такой оператор,как || и &&?
В Basic такого нет. Есть AND, OR и XOR.
1
 Аватар для Toxa33rus
3926 / 928 / 125
Регистрация: 16.04.2009
Сообщений: 1,991
08.09.2009, 21:09
Цитата Сообщение от #pragma Посмотреть сообщение
То есть когда в логическом выражении участвуют несколко под-выражений?
ДА! На сколько я понял вопрос, можно!
Эти варианты возможны:
a = 1 < 3 > 2 'ответ -1 или истина если объявить а как булево
a = true = true <> false 'ответ -1 или истина если объявить а как булево
a = (1 + 2) = 3 'ответ -1 или истина если объявить а как булево
2
Временно недоступен
 Аватар для #pragma
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
30.09.2009, 03:01
Ещё вопрос есть такой-поглядел по книжкам-недостаточно информации.Написано,что
In most languages, arrays start at the value 0, and count up. In basic, it's possible to index arrays so that they start at any value, and finish at any other value.
PureBasic
1
 DIM deltas(-5 TO 5)
You can change the default lower bound with the OPTION BASE statement.
Только вот непонятно,с такой опцией можно задавать многомерные массивы? В смысле такого рода:
PureBasic
1
DIM deltas(-5 TO 5,2 TO 6,-15 TO 20)
То есть ,если вообще такое возможно,интерпретатор в этом случае контролирует каждую размерность?

Не по теме:

К виндовому компу нет доступа,вот и парюсь,а wine не держу :)

0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
30.09.2009, 09:49  [ТС]
На 100% не уверен, но подозреваю следующее. Кто знает точно, подтвердите или опровергните

Если в качестве размерности указан диапазон типа (10 TO 20), то здесь это дело никак не меняется и независимо ни от чего делается так, как написано. Если в качестве размерности только одно число типа (10), то оно означает количество элементов, а нижняя граница диапазона устанавливается на значение по умолчанию. Это значение в момент старта программы равно 1, но оператором OPTION BASE можно текущее значение поменять

PureBasic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
DIM A(10) ' трактуется как A(1 TO 10), т.к. по на старте значение нижнего индекса по умолчанию равно 1
DIM AA(10,10)  ' трактуется как AA(1 TO 10, 1 TO 10)
DIM AAA(2 TO 5) ' независимо ни от чего трактуется как массив из 4 элементов, а индекс самого первого элемента равен 2
DIM AAAA(10, 2 TO 5) ' трактуется как AAA(1 TO 10, 2 TO 5)
 
OPTION BASE 5 ' меняем умолчание
 
DIM B(10) ' трактуется как B(5 TO 14), т.к. нижний индекс по умолчанию поменяли, но 10 трактуется как количество элементов
DIM BB(10,10) ' трактуется как DIM BB(5 TO 14, 5 TO 14)
DIM BBB(2 TO 5) ' независимо ни от чего трактуется как BBB(2 TO 5)
DIM BBBB(10, 2 TO 5) ' трактуется как BBBB(5 TO 14, 2 TO 5)
 
OPTION BASE 3
' и так далее
Итого получается, что на внутреннем представлении массива у тебя есть две характеристики у размерности: стартовый индекс и количество элементов. Вся остальная трактовка сосредоточена строго в синтаксическом разборе. OPTION BASE так же разбирается строго внутри синтаксического разбора и в промежуточном представлении никак не отражается. Т.е. конструкция OPTION это по сути run-time настройка интерпретатора, а не конструкция языка
1
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
01.10.2009, 17:21  [ТС]
Если я правильно понимаю, то BASE ключевым словом не является. Т.е. переменная с таким именем допустима
1
Временно недоступен
 Аватар для #pragma
957 / 228 / 14
Регистрация: 12.04.2009
Сообщений: 926
21.10.2009, 02:52
Кто-нибудь знает,если,например,нужно нарисовать что-то,пользуясь LINE,CIRCLE и т.д.,то пользователь обязан использовать SCREEN сначала? Если нет,то какие значения у режима для рисования по умолчанию?
Я прочитал такое:
Code
1
Если оператор SCREEN не указан, то подразумевается текстовый режим.
То есть если используется любая попытка работы с графикой без использования SCREEN,то пользовател должен получить сообщение об ошибке?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21285 / 8310 / 637
Регистрация: 30.03.2009
Сообщений: 22,671
Записей в блоге: 30
21.10.2009, 09:25  [ТС]
Исторически было множество разных реализаций бэйсиков. В том числе и на всяческих микрокомпутерах. На последних как правило не было деления на текстовый и графический режим - машина всегда работала только в одном режиме, часть адресов занимала видеопамять. На таких машинах SCREEN'а не было. На "нормальных" машинах было деление на графический и текстовый режим (так устроена аппаратура). В твоей реализации, на мой взгляд SCREEN обязателен. При этом фактически ты должен завести новое окно и всю графику валить в него. При этом вся текстовая информация идёт в стандартный поток вывода (а не в графический экран) - те, кто разбирается, поправьте, если ошибаюсь
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.10.2009, 09:25

моя первая плата, хедеры - вопрос про eagle или про пайку
До сих пор я паял платы на однослойных платах для прототипирования - примерно вот таких http://www.ebay.som/itm/221207693405 Один из...

Вопрос про обратную связь, и про схемотехнику полумоста
Добрый день) Я сейчас делаю схему от уважаемого rost c форума http://www.psb-kots.ru/forum/ , и мне непонятны некоторые моменты, а тот...

Интересуют разные реализации сервер-клиент
Привет. Занялся изучениям простенького клиент-сервера. Изучил самый простой на мой взгляд способ реализации. Сервер ...

вопрос про Sape, про поиск площадок
Делаю поиск площалок. В каждом пункте результатов поиска есть кнопки BL и GBL. Что они значат и что делают (или что должны делать) -...

вопрос по реализации на C++
Условие: собственно сам вопрос: каким образом записать информацию о двух сотрудниках в одной функции, что бы после можно было...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
50
Ответ Создать тему
Новые блоги и статьи
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru