QuickBASIC - QuickBASIC

QuickBASIC
Начальный экран
Начальный экран
Разработчики)Microsoft
изначальный выпуск1985; 35 лет назад (1985)
Стабильный выпуск
7 / 1990; 30 лет назад (1990)
Операционная системаMS-DOS, Классическая Mac OS
Платформаx86, Motorola 68000
ТипMicrosoft BASIC
ЛицензияПроприетарный
Интернет сайтwww.microsoft.de Отредактируйте это в Викиданных

Microsoft QuickBASIC (также QB) является Интегрированная среда разработки (или IDE) и компилятор для БАЗОВЫЙ язык программирования это было разработано Microsoft. QuickBASIC работает в основном на ДОС, хотя существовала и недолговечная версия для классическая Mac OS. Это слабо основано на GW-BASIC но добавляет определяемые пользователем типы, улучшенные структуры программирования, лучшую поддержку графики и дисков, а также компилятор в дополнение к переводчик. Microsoft продавала QuickBASIC как вводный уровень для своей системы профессиональной разработки BASIC.[1] Microsoft продала две другие подобные IDE для C и Pascal, а именно: QuickC и QuickPascal.

История

Microsoft выпустила первую версию QuickBASIC 18 августа 1985 года на одном 5,25-дюймовом 360 КБ дискета. QuickBASIC версии 2.0 и выше содержал Интегрированная среда разработки (IDE), позволяя пользователям редактировать прямо в экранном текстовом редакторе.

Хотя QuickBASIC все еще поддерживается, номера строк стали необязательными. Переходы программы также работали с именованными метками. В более поздних версиях также были добавлены управляющие структуры, такие как многострочный условные утверждения и петлевые блоки.

"PC BASIC Compiler" от Microsoft был включен для компиляции программ в исполняемые файлы DOS. Начиная с версии 4.0, редактор включал интерпретатор, который позволял программисту запускать программу, не выходя из редактора. Интерпретатор использовался для отладки программы перед созданием исполняемого файла. К сожалению, между интерпретатором и компилятором были некоторые тонкие различия, а это означало, что большие программы, которые правильно выполнялись в интерпретаторе, могли завершиться ошибкой после компиляции или вообще не компилироваться из-за различий в процедурах управления памятью.[2]

Последней версией QuickBASIC была версия 4.5 (1988 г.), хотя разработка Система профессиональной разработки Microsoft BASIC (PDS) продолжалась до последнего выпуска версии 7.1 в октябре 1990 года.[3] В то же время упаковка QuickBASIC была незаметно изменена, так что на дисках использовалось то же сжатие, что и для BASIC PDS 7.1.[4] Версия среды IDE Basic PDS 7.x называлась QuickBASIC Extended (QBX) и работала только в DOS, в отличие от остальной части Basic PDS 7.x, которая также работала в OS / 2. Преемником QuickBASIC и Basic PDS был Visual Basic версия 1.0 для MS-DOS, поставляемая в стандартной и профессиональной версиях. Более поздние версии Visual Basic не включали версии DOS, поскольку Microsoft сосредоточилась на приложениях Windows.

Подмножество QuickBASIC 4.5, названное QBasic, был включен в MS-DOS 5 и более поздних версий, заменив GW-BASIC включен в предыдущие версии MS-DOS. По сравнению с QuickBASIC, QBasic ограничен только интерпретатором, не имеет нескольких функций, может обрабатывать только программы ограниченного размера и не поддерживает отдельные программные модули. Поскольку в нем отсутствует компилятор, его нельзя использовать для создания исполняемых файлов, хотя исходный код его программы все еще может быть скомпилирован компилятором QuickBASIC 4.5, PDS 7.x или VBDOS 1.0, если он доступен.

QuickBASIC 1.00 для Apple Macintosh операционная система была запущена в 1988 году. Она официально поддерживалась на машинах, работающих под управлением Система 6 с как минимум 1 МБ ОЗУ.[5] QuickBASIC также можно запускать на Система 7, пока 32-битная адресация была отключена; это было невозможно на Motorola 68040 машины на базе Macintosh.

Пример синтаксиса

Привет мир, самая короткая версия:

?"Привет мир"

Привет мир, Расширенная версия:

CLSРАСПЕЧАТАТЬ"Привет мир"КОНЕЦ

99 бутылок пива:

ПОЗВОЛЯТЬБУТЫЛКИ=99:ПОЗВОЛЯТЬБУТЫЛКИ $="99":ПОЗВОЛЯТЬБУТЫЛКА $="бутылки"ДЛЯА=1К99РАСПЕЧАТАТЬБУТЫЛКИ $;БУТЫЛКА $;"пива на стене",;БУТЫЛКИ $;БУТЫЛКА $;"пива".ПОЗВОЛЯТЬБУТЫЛКИ=БУТЫЛКИ-1ЕСЛИБУТЫЛКИ>0ТОГДАПОЗВОЛЯТЬБУТЫЛКИ $=LTRIM $(STR $(БУТЫЛКИ)):ПОЗВОЛЯТЬPRONOUN $="один"ЕСЛИБУТЫЛКИ=0ТОГДАПОЗВОЛЯТЬБУТЫЛКИ $="больше не надо":ПОЗВОЛЯТЬPRONOUN $="Это"ЕСЛИБУТЫЛКИ<>1ТОГДАПОЗВОЛЯТЬБУТЫЛКА $="бутылки"ЕСЛИБУТЫЛКИ=1ТОГДАПОЗВОЛЯТЬБУТЫЛКА $="бутылка"РАСПЕЧАТАТЬ"Взять";PRONOUN $;"вниз и передать его";БУТЫЛКИ $;БУТЫЛКА $;"пива на стене".РАСПЕЧАТАТЬ:СЛЕДУЮЩИЙАРАСПЕЧАТАТЬ«Больше никаких бутылок пива на стене, никаких пивных бутылок».РАСПЕЧАТАТЬ«Сходи в магазин и купи еще, 99 бутылок пива на стене».

Пример графики:

ЭКРАН13Тусклыйа(3976)ТАК КАКЦЕЛОЕ,б(3976)ТАК КАКЦЕЛОЕ,c(3976)ТАК КАКЦЕЛОЕТусклыйd(3976)ТАК КАКЦЕЛОЕ,е(3976)ТАК КАКЦЕЛОЕCol%=16:col1%=16:col2%=16:col3%=16:col4%=16col5%=16:col6%=16:col7%=16:флаг=1:flag1=1flag2=1:flag3=1:flag4=1:flag5=1:flag6=1:flag7=1ДЕЛАТЬПОЛУЧИТЬ(1,38)-(318,62),аПОЛОЖИЛ(2,38),а,PSETЛИНИЯ(1,38)-(1,62),Col%ЕСЛИфлаг=1ТОГДАCol%=Col%+1:ЕСЛИCol%=32ТОГДАфлаг=2ЕСЛИфлаг=2ТОГДАCol%=Col%-1:ЕСЛИCol%=16ТОГДАфлаг=1ПОЛУЧИТЬ(2,63)-(319,87),бПОЛОЖИЛ(1,63),б,PSETЛИНИЯ(319,63)-(319,87),col1%ЕСЛИflag1=1ТОГДАcol1%=col1%+1:ЕСЛИcol1%=32ТОГДАflag1=2ЕСЛИflag1=2ТОГДАcol1%=col1%-1:ЕСЛИcol1%=16ТОГДАflag1=1ПОЛУЧИТЬ(1,88)-(318,112),cПОЛОЖИЛ(2,88),c,PSETЛИНИЯ(1,88)-(1,112),col2%ЕСЛИflag2=1ТОГДАcol2%=col2%+1:ЕСЛИcol2%=32ТОГДАflag2=2ЕСЛИflag2=2ТОГДАcol2%=col2%-1:ЕСЛИcol2%=16ТОГДАflag2=1ПОЛУЧИТЬ(2,113)-(319,137),dПОЛОЖИЛ(1,113),d,PSETЛИНИЯ(319,113)-(319,137),col3%ЕСЛИflag3=1ТОГДАcol3%=col3%+1:ЕСЛИcol3%=32ТОГДАflag3=2ЕСЛИflag3=2ТОГДАcol3%=col3%-1:ЕСЛИcol3%=16ТОГДАflag3=1ПОЛУЧИТЬ(1,138)-(318,162),еПОЛОЖИЛ(2,138),е,PSETЛИНИЯ(1,138)-(1,162),col4%ЕСЛИflag4=1ТОГДАcol4%=col4%+1:ЕСЛИcol4%=32ТОГДАflag4=2ЕСЛИflag4=2ТОГДАcol4%=col4%-1:ЕСЛИcol4%=16ТОГДАflag4=1ПЕТЛЯДО ТЕХ ПОРLEN(INKEY $)

Пузырьковая сортировка:

Образец REM пузырьковой сортировкиN=10ТусклыйА(N)ТАК КАКЦЕЛОЕДЛЯL=1КNА(L)=INT(RND*10+1)СЛЕДУЮЩИЙДЛЯИкс=1КNДЛЯY=1КN-1ЕСЛИА(Икс)<А(Y)ТОГДАСВОПА(Икс),А(Y)СЛЕДУЮЩИЙСЛЕДУЮЩИЙДЛЯL=1КNРАСПЕЧАТАТЬА(L)СЛЕДУЮЩИЙКОНЕЦ

Текущее использование

QuickBASIC имеет неофициальное сообщество программистов-любителей, которые используют компилятор для написания видеоигры, GUI и коммунальные услуги.[6][7][8] Сообщество посвятило несколько веб-сайтов, доски объявлений и интернет-журналы к языку.[9][10]

Сегодня программисты иногда используют DOS эмуляторы, такие как DOSBox, чтобы запустить QuickBASIC на Linux и на современных аппаратное обеспечение персонального компьютера который больше не поддерживает компилятор.[11][12] Альтернативы этому включают FreeBASIC и QB64, но они еще не могут бежать все Программы QBasic / QuickBASIC.[13]

С 2008 года набор TCP / IP подпрограммы для QuickBASIC 4.x и 7.1 возродили интерес к программному обеспечению. В частности, старинный компьютер Сообщество любителей смогло написать программное обеспечение для старых компьютеров, работающих под DOS, что позволяет этим машинам получать доступ к другим компьютерам через LAN или в Интернете. Это позволило системам даже старым, 8088 выполнять новые функции, например действовать в качестве веб сервер или используя IRC.[14]

Преемники

Microsoft Visual Basic был преемником QuickBASIC. Другие компиляторы, например PowerBASIC и FreeBASIC, имеют разную степень совместимости. QB64, а мультиплатформенность Переводчик QuickBASIC в C ++, сохраняет почти 100% совместимость и компилируется для Windows, Linux и macOS.[15]

Смотрите также

использованная литература

  1. ^ В ранней документации Microsoft это имя использовалось исключительно как «QuickBASIC», хотя в более поздних ссылках на веб-сайте Microsoft также используется «QuickBasic».
  2. ^ База знаний Microsoft 45850: Управление памятью в компиляторах QuickBasic и Basic
  3. ^ QuickBASIC 4.5 поставлялся в комплекте из пяти 5,25-дюймовых DSDD-дискет по 360 КБ или трех 3,5-дюймовых DSDD-дискет по 720 КБ. Трехдисковая версия также может быть установлена ​​с DSHD-дисков 1,2 МБ 5,25 дюйма или 1,44 МБ 3,5 дюйма. Для экономии средств файлы были сжаты, и более поздние версии поставлялись всего на четырех 5,25-дюймовых или двух 3,5-дюймовых дисках.
  4. ^ Статья 65291 базы знаний Майкрософт
  5. ^ Системные требования QuickBASIC для Macintosh
  6. ^ "Каталог игр QBASIC". 2008-11-29. Архивировано из оригинал 4 сентября 2014 г.. Получено 2008-12-28.
  7. ^ "Обзоры GUI". 2008-12-19. Получено 2008-12-28.
  8. ^ "Блог (BASIC) GUI". 2011-02-06. Получено 2011-02-06.
  9. ^ "Новости Qbasic / Quickbasic". 2008-12-26. Получено 2008-12-28.
  10. ^ «QB Express». Сайт Пита QBASIC / QuickBasic. 2008 г.. Получено 2008-12-28.
  11. ^ Пит Трбович (31 марта 2007 г.). «КАК играть со старыми программами QBasic в Linux». Получено 2008-12-28.
  12. ^ Киётэ Вольф (2008-05-10). "Киетэ Волк на разные темы". QB Express. Получено 2008-12-28.
  13. ^ Например, FreeBASIC еще не поддерживает обратный вызов QBasic «ON PLAY» для фоновой музыки или использование PEEK и POKE к Порты ввода / вывода.
  14. ^ Майк Чемберс (2008-07-12). "rubbermallet.org: где QuickBASIC становится намного мощнее". Получено 2008-12-28.
  15. ^ Виртанен, Э. К. (26 мая 2008 г.). "Интервью с Галеоном". Архивировано 6 марта 2016 года.. Получено 2008-07-14.CS1 maint: неподходящий URL (ссылка на сайт)

внешние ссылки