Jump to content

Майкрософт БЕЙСИК

(Перенаправлено с Microsoft Extended BASIC-80 )
Майкрософт БЕЙСИК
Разработано Майкрософт
Разработчик Майкрософт
Впервые появился 1975 (см. Альтаир БЕЙСИК )
Стабильная версия

Microsoft BASIC — это базовый программный продукт компании Microsoft , который превратился в линейку интерпретаторов и компиляторов BASIC , адаптированных для множества различных микрокомпьютеров . Впервые он появился в 1975 году как Altair BASIC , который был первой версией BASIC, опубликованной Microsoft, а также первым языком программирования высокого уровня, доступным для микрокомпьютера Altair 8800 .

Во время повального увлечения домашними компьютерами в конце 1970-х и начале 1980-х годов BASIC был перенесен на многие модели домашних компьютеров и поставлялся с ними. Небольшие изменения, направленные на добавление поддержки функций, специфичных для машины, особенно графики, привели к появлению множества связанных проектов, таких как Commodore BASIC и Atari Microsoft BASIC .

Когда первые домашние компьютеры уступили место более новым разработкам, таким как персональный компьютер IBM и Macintosh , BASIC больше не использовался так широко, хотя и сохранил много последователей. Выпуск Visual Basic возобновил его популярность, и он по-прежнему широко используется на платформах Microsoft Windows в своем последнем воплощении — Visual Basic .NET .

Altair BASIC и первые микрокомпьютеры

[ редактировать ]
Компьютер Altair 8800 в сборе с популярным телетайпом модели 33 ASR (автоматическая отправка и получение) в качестве терминала, считывателем бумажной ленты и перфоратором бумажной ленты.

Интерпретатор Altair BASIC , был разработан основателями Microsoft Полом Алленом и Биллом Гейтсом с использованием самописного эмулятора Intel 8080 работающего на PDP-10 миникомпьютере . [1] Диалект MS создан по образцу Digital Equipment Corporation от BASIC-PLUS на PDP-11 , который Гейтс использовал в средней школе . [2] Первые версии поддерживали только целочисленную математику, но Монте Давидофф убедил их, что арифметика с плавающей запятой возможна, и написал библиотеку, которая стала Microsoft Binary Format .

Altair BASIC поставлялся на бумажной ленте и в оригинальной версии занимал 4 КБ памяти. Были доступны следующие функции и операторы:

LIST, NEW, PRINT, INPUT, IF...THEN, FOR...NEXT, SQR, RND, SIN, LET, USR, DATA, READ, REM, CLEAR, STOP, TAB, RESTORE, ABS, END, INT, RETURN, STEP, GOTO, и GOSUB.

В 4K BASIC не было строковых переменных, а единственным поддерживаемым числовым типом была 32-битная плавающая запятая одинарной точности. Имена переменных состояли из одной буквы (A–Z) или одной буквы, за которой следовала одна цифра (0–9), что позволяло использовать до 286 числовых переменных.

Для машин с большим объемом памяти в версию 8 КБ добавлено 31 дополнительный оператор и поддержка строковых переменных и связанных с ними операций, таких как MID$ и конкатенация строк . Строковые переменные обозначались суффиксом $, который остался в более поздних версиях языка. Позже Microsoft выпустила 12K Extended BASIC, который включал 64-битные переменные двойной точности. IF... THEN... ELSE структуры, определяемые пользователем функции, более сложные команды редактирования программ и описательные сообщения об ошибках, а не номера ошибок. Числовые переменные теперь имели три основных типа: % обозначал 16-битные целые числа, # обозначал 64-битные двойные числа и ! обозначал 32-битные синглы, но это был формат по умолчанию, поэтому ! редко встречается в программах.

Расширенная версия размером 8 КБ затем была обобщена в BASIC-80 (8080/85, Z80 ) и портирована на BASIC-68 ( 6800 ), BASIC-69 ( 6809 ) и 6502 -BASIC. 6502 имел несколько менее плотный ассемблерный код , и его размер увеличился до чуть менее 8 КБ для версии с одинарной точностью или до 9 КБ для версии, использующей промежуточный 40-битный формат с плавающей запятой вместо исходной 32-битной версии. Этот новый 40-битный формат стал наиболее распространенным, поскольку использовался на большинстве машин на базе 6502 той эпохи. Он также был портирован на 16-битный BASIC-86 ( 8086/88 ).

Последней основной версией BASIC-80 была версия 5.x, появившаяся в 1981 году и в которой была добавлена ​​поддержка 40-символьных имен переменных. WHILE... WEND циклы, динамическое распределение строк и ряд других функций. В BASIC 5.x удалена возможность сокращения строк программы.

Основной набор команд и синтаксис одинаковы во всех реализациях Microsoft BASIC, и, вообще говоря, программу можно запускать в любой версии, если она не использует аппаратные функции или числа двойной точности (не поддерживаются в некоторых реализациях).

Лицензии производителям домашних компьютеров

[ редактировать ]

После первоначального успеха Altair BASIC, Microsoft BASIC стал основой прибыльного бизнеса по лицензированию программного обеспечения, который был портирован на большинство многочисленных домашних и других персональных компьютеров 1970-х и особенно 1980-х годов и постепенно расширялся. В отличие от оригинального Altair BASIC, большинство BASIC для домашних компьютеров постоянно находятся в ПЗУ и, таким образом, доступны на машинах при включении питания в виде характеристики « READY«.подсказка. Таким образом, Microsoft и другие варианты BASIC составляют значительную и видимую часть пользовательского интерфейса многих элементарных операционных систем домашних компьютеров .

К 1981 году Microsoft BASIC стал настолько популярен, что даже компании, у которых уже был BASIC, лицензировали этот язык, например IBM для своего персонального компьютера . [3] и Atari , которая продавала как Atari Microsoft BASIC , так и собственный Atari BASIC . [4] из IBM Дон Эстридж сказал: «У Microsoft BASIC были сотни тысяч пользователей по всему миру. Как вы собираетесь с этим спорить?» [3] Microsoft лицензировала аналогичные версии компаниям, конкурировавшим друг с другом. после лицензирования IBM Advanced BASIC Например, (BASICA) для IBM, Microsoft лицензировала совместимый GW-BASIC производителям клонов ПК и продавала копии розничным покупателям. [5] Компания также лицензировала Applesoft -совместимый BASIC для VTech для своего Laser 128 клона . [6]

Расширенный БЕЙСИК-80

[ редактировать ]

Известные варианты:

  • NCR Basic Plus 6 , выпущенный в первом квартале 1977 года для NCR 7200 model VI . терминала ввода данных [7] Адаптацию Microsoft Extended BASIC-80 осуществил Марк Макдональд в 1976/1977 году.

Диск БЕЙСИК-80

[ редактировать ]

MBASIC доступен для CP/M-80 и ISIS-II . Также доступно для TEKDOS .

MBASIC — это урезанная версия BASIC-80, имеющая только аппаратно-нейтральные функции. Однако из-за популярности CP/M подавляющее большинство машин Z80 работало под управлением MBASIC, а не версии, адаптированной для конкретного оборудования (TRS-80 BASIC был одним из немногих исключений). Карта CP/M от Microsoft для Apple II включала модифицированную версию MBASIC, в которую вошли некоторые графические команды Applesoft BASIC, такие как HPLOT, но полный набор команд не поддерживается.

Автономный диск BASIC-80

[ редактировать ]

Первой реализацией, в которой использовался 8-битный вариант таблицы размещения файлов (FAT), была адаптация BASIC. [номер 1] для Intel 8080 на базе NCR 7200 , [номер 1] 7520 , [номер 1] или 7530 [номер 1] терминал ввода данных с 8-дюймовыми дискетами 1977/1978 года.

БЕЙСИК-компилятор

[ редактировать ]

Microsoft предложила компилятор BASIC для BASIC-80 под CP/M к 1980 году или раньше. Исполняемый файл компилятора назывался BASCOM или BASCOM32. [8]

TRS-80 Уровень II/III БАЗОВЫЙ

[ редактировать ]

Компьютер TRS-80 изначально предлагался как адаптация Tiny BASIC Ли-Чен Вана ( Level I BASIC ); в течение нескольких месяцев он был заменен портом BASIC-80, который включал в себя часть набора команд BASIC уровня I, особенно команды для настройки графических символов. BASIC уровня II содержал некоторые функции расширенного BASIC, хотя из-за необходимости включать команды уровня I, такие как SET и PSETдругие функции, такие как описательные сообщения об ошибках, по-прежнему пришлось исключить; впоследствии они были добавлены в TRS-80 Disk BASIC.

Модель TRS-80 Model 4 имела более новый дисковый BASIC, в котором использовалось ядро ​​BASIC-80 5.x, которое включало поддержку 40-символьных имен переменных. Таким образом, возможность сокращать строки программы (без пробелов между ключевыми словами и аргументами) больше не была возможна, как это было на уровне II. Больше не было необходимости резервировать строковое пространство. Новые функции включали определяемые пользователем функции ( DEF FN) и доступ к системным функциям TRSDOS 6 через SYSTEM ключевое слово. Модифицированная версия, опубликованная позже поставщиком ОС Logical Systems, в обновлении LS-DOS версии 6.3, добавила однобуквенный доступ к функциям управления BASIC (например, LIST и EDIT) и прямой доступ к вызовам супервизора LS-DOS. Среда редактирования программы по-прежнему была линейно-ориентированной. Возможность сортировки массивов, доступная на уровне II ( CMD"O") не было в наличии; программистам и пользователям приходилось разрабатывать собственные обходные пути.

БЕЙСИК-86

[ редактировать ]

Первая реализация в качестве автономной дисковой языковой системы была для платы ЦП Seattle Computer Products S-100 с шиной 8086 в 1979 году. В ней использовалась 8-битная файловая система FAT.

Microsoft также предложила версию Standalone BASIC-86 для SBC-86/12 для одноплатной компьютерной платформы Intel 8086 в 1980 году.

Техасские инструменты БЕЙСИК

[ редактировать ]

Это версия BASIC, используемая на домашнем компьютере TI-99/4A . Хотя он очень похож на Microsoft BASIC, он не был написан Microsoft, как широко ходили слухи. По словам инженера TI Х. Шуурмана, «с ними (в лице Боба Гринберга из Microsoft) был заключен контракт на разработку BASIC для SR-70 (который также иногда называют 99/7), но BASIC для 99 /4 был разработан собственными силами». TI-99/4 BASIC основан на Dartmouth BASIC и соответствует американскому национальному стандарту минимального BASIC (ANSI X3.60-1978).

6502 БАЗОВЫЙ

[ редактировать ]

Microsoft перенесла BASIC-80 на 6502 летом 1976 года; в основном это был прямой порт версии BASIC-80 для 8K и включал в себя те же запросы, запрашивающие размер памяти и то, хочет ли пользователь включить или отключить функции с плавающей запятой (когда они активны, используются дополнительные 135 байт памяти). Первыми машинами, использовавшими 6502 BASIC, были Ohio Scientific Model 500 и KIM-1, выпущенные в 1977 году. [9] 6502 BASIC включал в себя некоторые функции Extended BASIC, такие как определяемые пользователем функции и описательные сообщения об ошибках, но не включал другие функции, такие как переменные двойной точности и PRINT USING заявление. В качестве компенсации за отсутствие переменных двойной точности Microsoft включила поддержку 40-битных чисел с плавающей запятой вместо 32-битных чисел с плавающей запятой в BASIC-80, а распределение строк было динамическим (таким образом, пользователю не нужно было резервировать строковое пространство, как в BASIC-80). Однако поставщики по-прежнему могут запрашивать BASIC с 32-битной плавающей запятой для немного меньшего объема памяти ; Например, Disk BASIC для 8-битной версии Atari использовал 32-битную версию с плавающей запятой, а не 40-битную. [ нужна ссылка ]

Стандартные функции версии Microsoft 6502 BASIC 9K включали:

  • GET оператор для обнаружения нажатия клавиши.
  • Сжатие строк – строки программы не требуют никаких пробелов, кроме как между номером строки и оператором.
  • Поддерживаются только типы переменных: символьная строка, одинарная точность с плавающей запятой и 16-битное целое число со знаком (экономит место в массивах, в противном случае бесполезно и медленнее, чем с плавающей запятой, поскольку все вычисления в любом случае выполняются с плавающей запятой).
  • Можно использовать длинные имена переменных, но значимы только первые два символа.
  • Динамическое распределение строк.

В 6502 BASIC не было стандартизированного набора команд для вывода на диск и принтер; их добавлял поставщик, и они сильно различались в зависимости от реализации.

Более поздние реализации 6502 Basic (1983–) содержали множество улучшений, специфичных для конкретного поставщика; например, более поздние версии Commodore BASIC имели следующее:

  • Дисковые команды ( DIRECTORY, DSAVE, DLOAD, BACKUP, HEADER, SCRATCH, COLLECT, DVERIFY, COPY, DELETE, RENAME, и т. д.)
  • Графические команды ( CIRCLE, DRAW, BOX, COLOR (фона, границы и т. д.), PAINT, SCALE)
  • Копирование графического блока и логическая работа с существующим графическим экраном ( SSHAPE и GSHAPE с OR, AND, XOR, и т. д.)
  • Определение спрайтов, команды отображения и анимации на C128, даже сохранение спрайтов в двоичные файлы.
  • Звуковые команды ( VOL, SOUND), позже в C=128 Музыкальные команды (программирование фильтров ADSR и SID ( ENVELOPE и FILTER), PLAY, TEMPO команды)
  • Признаки более структурированного программирования: IFTHENELSE, DOLOOPWHILE/ UNTILEXIT.
  • Расширенные команды ввода-вывода для специальных функций: JOY, функциональные клавиши
  • Команды отладки: STOP, CONT, TRON, TROFF, RESUME
  • Расширенная обработка экрана персонажа: WINDOW
  • Поддержка упрощения разработки программ: RENUMBER, NEW, MONITOR, RREG

БЕЙСИК-68 и БЕЙСИК-69

[ редактировать ]

В каталогах Microsoft 1980-х годов также указывается наличие BASIC-68 и BASIC-69 для микропроцессоров Motorola 6800 и 6809 соответственно, работающих под управлением операционных систем FLEX , а также упоминаются OEM-версии для Perkin-Elmer , Ohio Nuclear , Pertec и Societe Occitane d. «Электронные системы. [10] Похоже, что это также является основой Microsoft/Epson BASIC в портативном компьютере Epson HX-20 , который имеет два процессора Hitachi 6301, которые по сути представляют собой «улучшенную» версию 6801. Большинство основных функций BASIC — 68 и BASIC-69 были скопированы непосредственно из BASIC-80. [ оригинальное исследование? ]

Лицензия на BASIC-69 также была передана компании Tandy, где он сформировал ядро ​​Color BASIC на цветном компьютере TRS-80 . [ нужна ссылка ] Не путать с BASIC09 , совершенно другим BASIC, созданным Microware в качестве основного языка для своей OS-9 , другой ОС, доступной на цветном компьютере (Microware также написала версию 2.0 Extended Color BASIC, когда Microsoft отказалась это сделать). Microsoft BASIC также был включен в компьютеры Dragon 32/64, которые производились в Уэльсе и пользовались некоторым ограниченным успехом на рынке домашних компьютеров Великобритании в начале 1980-х годов. Компьютеры Dragon были в некоторой степени совместимы с Tandy TRS-80, поскольку были построены на очень похожем оборудовании.

на базе ПЗУ Microsoft выпустила MSX BASIC для использования в домашних компьютерах MSX , в которых использовался процессор Z80. Эта версия поддерживала графическую и звуковую системы компьютеров MSX; некоторые варианты также имели поддержку дисководов.

Современные потомки

[ редактировать ]

Никакая разновидность Microsoft BASIC ( BASICA , GW-BASIC , QuickBasic , QBasic ) в настоящее время не распространяется с Microsoft Windows или DOS . Однако версии, которые по-прежнему будут работать на современных машинах, можно загрузить с различных сайтов Интернета или найти на старых дисках DOS.

Последним воплощением Microsoft BASIC является Visual Basic .NET , который включает в себя некоторые функции C++ и C# и может использоваться для разработки веб-форм, форм Windows, консольных и серверных приложений. Большинство примеров кода .NET представлены на VB.NET, а также на C#, и VB.NET по-прежнему пользуется популярностью у бывших программистов Visual Basic .

В октябре 2008 года Microsoft выпустила Small Basic . [11] В языке всего 14 ключевых слов. [12] Малая базовая версия 1.0 (12 июня 2011 г.) [13] был выпущен вместе с обновленным веб-сайтом Microsoft MSDN, который включал полную учебную программу для учителей, [14] руководство по началу работы, [15] и несколько электронных книг. [16] Small Basic существует, чтобы помочь учащимся в возрасте восьми лет. [17] изучите основы компьютерного программирования, а затем перейдете на Visual Basic с помощью загружаемого программного обеспечения Visual Studio Express , где они смогут продолжить закладывать основы, изучая Visual C# , VB.NET и Visual C++ . [18]

Варианты и производные Microsoft BASIC

[ редактировать ]

См. также

[ редактировать ]

Примечания

[ редактировать ]
  1. ^ Перейти обратно: а б с д Источники различаются относительно первого терминала ввода данных NCR, интегрирующего поддержку файловой системы FAT . По словам Стивена Мэйнса и Пола Эндрюса, «Гейтс», в конце 1977 года разрабатывалась NCR 8200 на дискетах , которую ошибочно классифицировали как обновление NCR 7200 , выпущенное в 1975–1911 годах и построенное на базе Intel 8080. 8-битный процессор, но был только на кассете. Однако NCR Century 8200 представлял собой 16-битный миникомпьютер, к которому можно было подключить несколько терминалов ввода данных. Марк Макдональд даже вспомнил о NCR 8500 , мэйнфрейме серии Criterion, который тоже можно исключить. Другие источники указывают, что фактической целевой платформой была либо сама NCR 7200, либо ее преемница. Серия NCR 7500 была выпущена в 1978 году на основе аналогичного оборудования 8080, но теперь включает модели NCR 7520 и 7530 с 8-дюймовыми дискетами. NCR Basic +6 , предшественник или адаптация Microsoft Standalone Disk BASIC-80, был доступен для них как минимум с 1979 года. Один источник утверждает, что специальный вариант модели NCR 7200 с двумя 8-дюймовыми дискетами и Microsoft BASIC существовал и был импортирован NCR. Сидней меньше всего в Австралию.
  1. ^ Мартин С. Фридсон, Как стать миллиардером: проверенные стратегии титанов богатства , Джон Уайли и сыновья, 1999 г. ISBN   0-471-33202-X страницы 116-120
  2. ^ Манес, Стивен (1993). Ворота . Даблдэй. п. 61. ИСБН  9780385420754 .
  3. ^ Перейти обратно: а б Карран, Лоуренс Дж.; Шуфорд, Ричард С. (ноябрь 1983 г.). «Эстридж от IBM» . БАЙТ . стр. 88–97 . Проверено 19 марта 2016 г.
  4. ^ Черри, Чарльз (июнь 1987 г.). «Базовое золотое дно» . Антик . Проверено 4 августа 2019 г.
  5. ^ «Компьютерный репетитор» . ПК . 13 января 1987 г. п. 325 . Проверено 18 января 2015 г.
  6. ^ Гревстад, Эрик (декабрь 1986 г.). «Лазер 128 / Доступная совместимость» . inСидр . п. 58 . Проверено 29 июня 2014 г.
  7. ^ «NCR Mini, Micro среди дебютов, сделанных на конференц-зале NRMA» . Компьютерный мир . 17 января 1977 г. Проверено 4 июня 2014 г. (Упоминается кассетная модель NCR 7200 VI на базе 8080 с NCR Basic Plus 6 (Extended BASIC), которая должна быть поставлена ​​в первом квартале 1977 года. NCR 7200 модель I и модель IV уже были выпущены в 1975-11 годах, но так и не поступили. с БЕЙСИКОМ.)
  8. ^ Компилятор Microsoft BASIC 1980
  9. ^ Перейти обратно: а б Стейл, Майкл (30 сентября 2008 г.). «Личные пасхальные яйца Билла Гейтса в 8-битном Бейсике» . pagetable.com . Проверено 4 февраля 2015 г.
  10. ^ «Каталог программного обеспечения MICROSOFT» , c1980, Музей истории компьютеров.
  11. ^ Небольшой базовый блог: Привет, мир
  12. ^ Каковы 14 ключевых слов Small Basic?
  13. ^ Small Basic 1.0 уже здесь!
  14. ^ Небольшая базовая учебная программа
  15. ^ Руководство по началу работы с Small Basic
  16. ^ Маленькие базовые электронные книги
  17. ^ Small Basic - Отзывы учеников начальной и средней школы
  18. ^ Окончание Small Basic
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: caa63ece572f8cd2850537993e63f4d6__1722578100
URL1:https://arc.ask3.ru/arc/aa/ca/d6/caa63ece572f8cd2850537993e63f4d6.html
Заголовок, (Title) документа по адресу, URL1:
Microsoft BASIC - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)