|
|
|
Вопрос про разные реализации бэйсиков14.08.2009, 14:54. Показов 9508. Ответов 49
Метки нет (Все метки)
Мы затеялинаписание самодельного интерпретатора бэйсика. На текущий момент какие-то несложные примеры уже работают, теоретическая база по принципам работы интерпретатора понятны, а потому для дальнейшей работы хотелось бы начать следовать синтаксису какого-то из существующих бэйсиков. Или по возможности близко подойти к этому
А потому вопрос, чем прициапиально отличаются разные реализации бэйсика и какой из них самый простой. На текущий момент решили работать без поддержки функций, а потому хотелось бы понять, насколько реально работать на бейсике при таком ограничении (или может такие реализации есть и на них работают).
0
|
|
| 14.08.2009, 14:54 | |
|
Ответы с готовыми решениями:
49
Гиперссылки в ComboBox: вопрос реализации Вопрос по реализации блок-схем в VBA Разные реализации одного интерфейса |
|
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
||||
| 14.08.2009, 15:07 | ||||
|
если пользовательских, то в QBasic можно без них и обойтись Visual Basic же объектно-ориентированный язык, поэтому в нем по умолчанию используются функции и процедуры
1
|
||||
|
|
||||
| 14.08.2009, 15:18 [ТС] | ||||
|
И ещё вопрос - понятие процедуры оно такое же, как на пискале и си? Т.е. есть некая область, внутри которой живут локльные переменные и параметры, всё это дело может вызываться рекурсивно. Каких-то своих особенностей нет?
0
|
||||
|
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
||||||||||
| 14.08.2009, 15:28 | ||||||||||
1
|
||||||||||
|
|
|
| 14.08.2009, 16:09 [ТС] | |
|
Теперь вопрос по условным выражениям.
На Си код строится так, что условное выражение вычисляется до тех пор, пока не станет известен результат. Т.е. в условии "if (func1()==5 && func2()==10)" если func1 вернуло значение, отличное от 5, то func2 вызываться не будет, потому как уже известно. что результат условия есть false. В бэйсике то же самое?
0
|
|
|
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
|
| 14.08.2009, 16:41 | |
|
0
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
||
| 14.08.2009, 17:09 | ||
Добавлено через 31 секунду Хотя смотря какой Basic наверное ![]() Добавлено через 1 минуту 59 секунд Рекурсивно вызываться может.
0
|
||
|
19318 / 2625 / 84
Регистрация: 17.02.2009
Сообщений: 30,364
|
|
| 14.08.2009, 17:15 | |
|
QBASIC — диалект языка программирования Бейсик (BASIC), разработанный компанией Microsoft, а также среда разработки, позволяющая писать, запускать и отлаживать программы на этом языке.
QBASIC удобен для выполнения несложных вычислений и для прямой работы с портами. Сегодня этот язык используется для обучения программированию Qbasic является интерпретатором, т.е. программы, написанные на этом языке могут выполняться только внутри его интегрированной среды. QBASIC, в отличии от более ранних версий языка Basic, поддерживает современные средства модульного программирования. Это свойства поднимает его до современных языков программирования. К достоинствам этого языка также следует отнести то, что: содержит хороший экранный редактор не ограничивает длину программы отменяет необходимость нумерации строк предлагает операторы, позволяющие организовывать структуры внутри программ. поддерживает программные процедуры, вызываемые из основной программы. позволяет использовать локальные переменные.
0
|
|
|
|
||
| 14.08.2009, 20:52 [ТС] | ||
|
Значит будем сотреть на qbasic, пока без процедур
Кстати, из этой статьи (правда она больше на словесный понос похожа, чем на статью) мне показалось, что там всё-таки компилятор А qbasic сейчас бесплатный? Добавлено через 2 минуты 0 секунд Вот типа того
1
|
||
|
Просто прогер
1292 / 1079 / 13
Регистрация: 13.03.2009
Сообщений: 2,502
|
|
| 14.08.2009, 21:10 | |
|
0
|
|
|
|
|
| 14.08.2009, 21:11 [ТС] | |
|
Я так понимаю, что признаком кона оператора ялвяется прекод строки. Т.е. один оператор нельзя размазывать на несколько строк?
Можно писать вот так (т.е. набор операторов через двоеточие это некий аналог лексического блока на си и паскале?)? IF условие THEN statemen1 : statement 2 ELSE statement3 : statement 4 IF размазывать на несколько строк можно?
0
|
|
|
|
|
| 19.08.2009, 23:20 [ТС] | |
|
А есть где-нибудь краткий справочник по Q-Basic? Интересует синтаксис и краткое описание базовых конструкций и концепций. Или где его можно скачать (если он сейчас бесплатный)
Ну и ряд вопросов
0
|
|
|
7176 / 3234 / 82
Регистрация: 17.06.2009
Сообщений: 14,164
|
||
| 19.08.2009, 23:31 | ||
Добавлено через 2 минуты 40 секунд 2Evg: Я понимаю что у людей которые что-то пишут напрочь отключается мозг ![]() поэтому выложу тебе сюда: Учебники по QBasic http://quitbasic.narod.ru/qbhelp.html http://en.wikibooks.org/wiki/QBasic Добавлено через 2 минуты 9 секунд И вообще завязывай писать Basic - за тебя уже его написали http://ru.wikipedia.org/wiki/Rapid-Q_basic Rapid-Q является BASIC языком программирования. Основные конструкции языка поддерживаются многими платформами — Win32, GNU/Linux, Unix (Solaris и HP-UX поддерживаются).
1
|
||
|
|
|
| 19.08.2009, 23:41 [ТС] | |
|
odip, попробую пояснить развёрнуто. Мне не нужны учебники, в которых что-то понаписано, но ответов на некоторые вопросы скорее всего не найду. Такое скорее решается методом тыка, либо кто-то сможет дать конкретный ответ на конкретный вопрос. ТО, что он входит в состав MS-DOS означает, что под виндой без бубна он не запустится? И есть отдельная поставка только qbasic'а?
То, что за меня написали бэйсик, это конечно хорошо. ТОлько за меня написали и программы "hello world" на всех языках программирования. Написали браузеры, графические редакторы и т.п. Т.е. по такой логике кроме искусственного интеллекта писать больше и нечего. К тому же пишу не я, а #pragma. Человек нашёл для себя интересное задание в качестве живой программы для тренировки, а я ему помогаю, чем могу
0
|
|
|
640KB мне хватило на всё.
119 / 50 / 3
Регистрация: 07.06.2009
Сообщений: 442
|
|||
| 20.08.2009, 00:15 | |||
|
1. А захрена?
2. QBasic был в MS-DOS 6 (уже сказали) 3. QuikcBASIC не требует регистраций, так что работать будет ![]() 4. Из разновидностей и различий знал только отличие у Turbo и Quick передачи параметров в функцию - с массивами как-то различается. Но это для Вас вроде не актуально. 5. Самый простой BASIC, думаю был у MK-85 Посмотрите на Вики, там есть упоминания о стандартах, если сможете найти наверное будет оптимально для вас. Добавлено через 8 минут 4 секунды +1 Редактор аналогичен EDIT (есть вроде в XP). Как, мне разобраться с переписыванием программы Можно ли сделать из персонального компьютера автоматического робота? Как произвести запись в системный реестр Windows
1
|
|||
|
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
|
||
| 20.08.2009, 10:57 | ||
|
0
|
||
|
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
|
|
| 20.08.2009, 11:14 | |
|
Просто скачать. Можно даже никуда специально не копировать, просто распаковать в любую папку и запускать оттуда сей файлик (qbasic.exe). Можно распаковать в папку \windows\command\ (если я не путаю там лежит все, что осталось от доса) и запускать через start->run->"написать qbasic".
0
|
|
|
|
|
| 20.08.2009, 11:54 [ТС] | |
|
Ладно, домой приду - попробую
0
|
|
| 20.08.2009, 11:54 | |
|
Помогаю со студенческими работами здесь
20
моя первая плата, хедеры - вопрос про eagle или про пайку Вопрос про обратную связь, и про схемотехнику полумоста Интересуют разные реализации сервер-клиент вопрос про Sape, про поиск площадок вопрос по реализации на C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|