После сообщения о готовности программы выполнить программу пользователя можно подать следующую команду:
где RUN-ключевое слово «выполнить» (клавиша F2).
На экране монитора должно появиться (если программа не имеет ошибок) сообщение об окончании выполнения с указанием номера строки.
3.7. Отладка и редактирование программы
Рассмотренная программа является довольно простой. Однако при вводе любой программы пользователь может допустить ошибки.
Искусство выявления ошибок в программе называется отладкой, а внесение изменений в программу — редактированием.
С помощью клавиши “←” (Backspace) можно устранить неверные символы.
Для редактирования и отладки имеется ряд команд, набираемых с клавиатуры.
Следует помнить, что после любого исправления в строке программы надо обязательно нажимать ENTER.
3.8. Основные команды языка gw-basic
После набора команды на клавиатуре надо обязательно нажимать ENTER.
Команда LIST. Программа, набранная пользователем на экране монитора, называется листингом. Для просмотра листинга на экране имеется команда LIST (клавиша F1). Ее структура может быть разной:
how to write program in gw basic | 10 class computer GW BASIC practical
LIST – выводится вся программа;
LIST – HCj – выводится программа с 1-ой строки по HCj строку;
LIST HCi – HCj – выводится программа c HCi – строки по HCj;
LIST HCi – – выводится программа c HCi – строки до конца;
LIST HCi – выводится одна строка HCi.
Команда DELETE. Команда для удаления строки (строк). Эта программа имеет аналогичные вышерассмотренной команде структуры:
DELETE – HCj – удалить строку с первой строки по HCj строку;
DELETE HCi – HCj – удаление строк с номерами от HCi по HCj;
DELETE HCi – – удаление строк с HCi до конца программы;
DELETE HCi – удаление строк с номером HCi.
Одну строку в программе можно удалить другим способом : набрать номер строки и нажать ENTER:
Выход из GB.
Команда NEW. – Эта команда удаляет всю программу из памяти компьютера.
Команда CLS. – Очищает экран.
Команда FILES. – Вызывает на экран содержимое текущего диска.
Команда FILES “”. – Вызывает на экран содержимое заданного диска.
Команда LOAD (клавиша F3). – Служит для загрузки файла в память компьютера.
Команда SAVE (клавиша F4). – Сохраняет в памяти компьютера написанную программу. Есть две разновидности команды:
Например: SAVE “SET.BAS”
Эта команда сохраняет программу в промежуточных кодах и не может быть загружена в текстовом редакторе.
Опция “a”, указанная в команде, сохраняет программу в текстовом режиме. Программа может быть загружена в любом текстовом редакторе.
Команда CONT (клавиша F5). – Эта команда является сокращением от “continue” и означает – продолжить. Дело в том, что в программе с целью отладки можно использовать несколько операторов STOP. Для продолжения выполнения после остановки используется CONT.
Присвоить имена переменным, указанным в табл.3.1.
CATRUN.BAS — GW-BASIC, cat animation
- Записать операторы присваивания, реализующие зависимости, приведенные в табл.3.2.
- Составить простейшую программу для вычисления зависимостей п.2 и набрать ее на экране монитора с помощью клавиатуры.
- Получить листинг простейшей программы (без выполнения) на экране..
- Задаться самостоятельно значениями переменных в диапазоне [0,25 — 6,5] и ввести их в программу, используя, операторы присваивания.
- Перед оператором STOP набрать строку PRINT Y1, Y2.
- Выполнить программу.
- Убедившись в правильности выполнения программы по сообщению на экране, выполнить п.8.
- Получить листинг простейшей программы на принтере.
Таблица 3.1. Таблица переменных
| Вариант | Переменные |
| 1 | ![]() |
| 2 | ![]() |
| 3 | ![]() |
| 4 | ![]() |
| 5 | ![]() |
| 6 | ![]() |
| 7 | ![]() |
| 8 | ![]() |
| 9 | ![]() |
| 10 | ![]() |
Таблица 3.2. Список арифметических выражений
| Вариант | Арифметические выражения | |
| 1 | ![]() |
![]() |
| 2 | ![]() |
![]() |
| 3 | ![]() |
![]() |
| 4 | ![]() |
![]() |
| 5 | ![]() |
![]() |
| 6 | ![]() |
![]() |
| 7 | ![]() |
![]() |
| 8 | ![]() |
![]() |
| 9 | ![]() |
![]() |
| 10 | ![]() |
![]() |
Источник: studfile.net
Ретро-программирование: пишем простую игру на том самом GW-BASIC 1983 года

2021-06-29 в 12:00, admin , рубрики:

Image by : Opensource.com
Не так давно корпорация Microsoft открыла исходный код GW-BASIC. И на волне этого инфоповода автор решил скачать его, установить на FreeDOS и написать на этом языке знаменитую игру с угадыванием чисел. Казалось бы, всё просто. Но не совсем… Об этом его статья.
В детстве я почитал за абсолютную истину, что вообще любой «персональный компьютер» от TRS-80 до Commodore и Apple позволяет писать свои собственные программы на BASIC. Меня также подкупил тот факт, что его название расшифровывалось, как Beginner’s All-purpose Symbolic Instruction Code — универсальный код символических инструкций для начинающих. В нашей семье был клон Apple II под названием Franklin ACE 1000. На его борту работал интерпретатор AppleSoft BASIC. Естественно, я хотел научиться программировать на BASIC и начал с чтения соответствующих книг и журналов.
Позже наша семья перешла на IBM PC с DOS. На этой машине была установлена собственная версия DOS под названием BASICA. Более поздние версии DOS уже выходили с обновленным интерпретатором GW-BASIC.
BASIC стал моим счастливым билетом в мир программирования. Со временем я изучил другие языки программирования. Я не писал код на BASIC много лет, но всегда с теплотой вспоминал BASIC и GW-BASIC.
Microsoft открыла исходный код GW-BASIC
В прошлом году Microsoft удивила всех (включая меня), когда открыла исходный код GW-BASIC. После размещения на GitHub MS-DOS 1.25 и 2.0 с открытым исходным кодом компания получила множество сообщений с просьбой выложить исходники Microsoft BASIC.
Как указано в readme репозитория, исходный код написан на ассемблере (это 100% ассемблер) для процессоров Intel 8088. Дата выпуска исходников — 10 февраля 1983 года. Код находится в открытом доступе в образовательных и ознакомительных целях.
Вы можете найти исходный код GW-BASIC на GitHub. И да, Microsoft действительно выпустила его под лицензией MIT.
Open source энтузиасты всё-таки умудрились подготовить код для сборки с обновленными ассемблерами. В связи с этим появились такие проекты, как TK Chia’s GitHub (обновление GW-BASIC для сборки с JWASM и другими ассемблерами). В репозитории TK Chia лежит несколько исходников и бинарников. В примечаниях к последней версии (октябрь 2020 г.) говорится, что это «предварительный» двоичный файл GW-BASIC, пересобранный в 2020 году.
Поддержка ввода-вывода через последовательный порт отсутствует. Вход для светового пера, вход для джойстика и выход принтера (параллельный порт) нуждаются в дополнительном тестировании. Но если вам не нужны эти дополнительные функции в GW-BASIC, вы сможете использовать эту сборку.
Я пользуюсь FreeDOS 1.3 RC4. На неё и буду устанавливать GW-BASIC. Это достаточно просто: нужно загрузить архив gwbas-20201025.zip из GW-BASIC TK Chia за октябрь 2020 года и распаковать его в своей системе FreeDOS. Для распаковки бинарный архив по умолчанию использует путь DEVELGWBASIC.
Начало работы с GW-BASIC
Чтобы стартовать GW-BASIC, запустите файл GWBASIC.EXE из командной строки DOS. Обратите внимание, что DOS нечувствителен к регистру, поэтому вам не нужно вводить команды заглавными буквами. Кроме того, DOS будет запускать любые программы EXE, COM или BAT автоматически, поэтому вам также не нужно указывать расширение файла. Зайдите в DEVELGWBASIC и введите GWBASIC.

Оболочка GW-BASIC
GW-BASIC — это интерпретируемый язык программирования. Среда GW-BASIC — это «оболочка», которая анализирует каждую строку в вашей программе BASIC при запуске кода. Он работает немного медленнее, чем компилируемые языки (например, C). Зато это упрощает процесс кодирования-отладки. Вы можете тестировать свой код, просто вводя его в интерпретатор.
Каждая строка в программе GW-BASIC должна начинаться с номера этой строки. GW-BASIC использует номера строк, чтобы убедиться, что он выполняет операторы вашей программы в правильном порядке. Благодаря такой фиче вы можете, например, позже «вставить» новый оператор между двумя другими операторами (допустим, с номерами строк m и n, где m < n), присвоив ему номер строки (k >m, k < n). По этой причине в те времена большинство BASIC-программистов писали номера строк, кратные десяти: 10, 20, 30 и так далее.
Если вы подзабыли или не знали GW-BASIC раньше, можете прочитать онлайн-справочник. Например, вот полезная ссылка, которая, похоже, является копией оригинального Руководства пользователя Microsoft GW-BASIC.
Первая программа
Начнём с простой программы для распечатки списка случайных чисел. Оператор FOR создает цикл для диапазона чисел, а RND (1) печатает случайное значение от 0 до 1.

Пишем первую программу
Вы видите эти выделенные слова внизу экрана? Эти команды вы можете запускать с помощью клавиш «F» (или функциональных клавиш) на клавиатуре. Например, F1 вставит слово LIST в интерпретатор GW-BASIC. «Стрелка влево» указывает на то, что дополнительно будет «нажата» клавиша Enter. Поэтому F2 введёт команду RUN и немедленно выполнит её.
Но вернёмся к программе. Запустим её несколько раз, чтобы посмотреть, что произойдет.

Оба списка «случайных чисел» одинаковы
Интересно, что список случайных чисел не меняется каждый раз, когда мы запускаем программу. Это происходит потому, что генератор случайных чисел GW-BASIC отталкивается от одного и того же начального числа (сбрасывается) каждый раз, когда вы перезапускаете программу. Такова его особенность.
Чтобы каждый раз генерировать новые случайные числа, нам нужно «засеивать» генератор случайных чисел новыми начальными значениями. Один из способов сделать это — предложить пользователю ввести собственное начальное число, а затем использовать это значение с инструкцией RANDOMIZE. Мы можем вставить эти два оператора в начало программы, используя номера строк 1 и 2. GW-BASIC автоматически добавит эти операторы перед строкой 10.

Обновим наш код
Скармливая генератору случайных чисел новое начальное число, мы получаем новый список случайных чисел каждый раз, когда запускаем нашу программу.

Теперь списки случайных числе отличаются
Пишем игру «Угадай число»
Чтобы попрактиковаться в процессе изучения нового языка программирования, я люблю писать несколько простеньких программ. Среди них — простая игра «Угадай число», в которой компьютер «загадывает» число от 1 до 100 и просит меня отгадать его. Программа зацикливается, пока я не назову это число. Давайте напишем эту игру на GW-BASIC.
Для начала введу команду NEW, чтобы GW-BASIC забыл предыдущую программу и запустил новую. Моя программа «Угадай число» сначала должна предложить пользователю ввести начальное число для засева рандомного генератора. После этого он сгенерирует случайное число от 1 до 100. На самом деле, сначала функция RND (1) сгенерирует случайное значение от 0 до 1 (точнее, до 0,9999…).
Поэтому нужно умножить RND (1) на 100, чтобы получить значение от 0 до 99,9999…. И уже потом я округлю это число до целого (удалю всё после запятой). А добавление к нему единицы даст число от 1 до 100.
Далее организую простой цикл, в котором пользователю предлагается сделать предположение о числе. Если число слишком мало или слишком велико, программа даст пользователю знать об этом. Благодаря такой подсказке пользователь сможет корректировать своё предположение. Цикл крутится до тех пор, пока ответ пользователя не совпадёт со случайным числом, которое загадал компьютер.

Пишем игру «Угадай число»
GW-Basic 3.23

Одна из ранних версий популярного языка программирования Basic.
GW-BASIC обладал минимальной поддержкой структурного программирования, что имело значение для организации хорошей структурности программ. Так все операторы IF/THEN/ELSE должны быть написаны на одной строке, а операторы WHILE/WEND могут группировать несколько строк кода, переменные часто типизировались посредством конечного символа переменной (A$ — строка, A% — целое число и т. д. ), необъявленным переменны можно было установить значения по умолчанию при помощи команд DEFINT, DEFSTR.
Но так как большинство программистов, использовавших GW-BASIC, не имели соответствующих навыков программирования, они часто не заботились о структурировании и использовали оператор GOTO, что приводило к трудному пониманию программы.
Более подробно:
http://progopedia.ru/dialect/gw-basic/
Похожие разделы
- Академическая и специальная литература
- Информатика и вычислительная техника
- Информатика (программирование)
- Программирование на BASIC / Visual Basic / VBA
- Прикладная литература
- Компьютерная литература
- Microsoft Office
- Visual Basic for Applications (VBA)
- Прикладная литература
- Компьютерная литература
- Visual Basic
Смотрите также
Алгоритм 2, Arctic Technology (пробная версия)
- формат exe
- размер 5.96 МБ
- добавлен 01 октября 2009 г.
Программа Алгоритм 2 — среда разработки программ, где программировать вообще не нужно! Создание программы превращается в пошаговый помощник, а там, где нужно вручную написать код, то для этого есть встроенный язык, похожий на Visual Basic, только на русском языке. Ограничение в «Пробной версии» — нельзя создать exe-файл. Очень полезная программа для обучения программированию и программированию для тех, кто не знает языков программирования.rn.
FastAVR 4.3.0
- формат exe, chm, pdf
- размер 4.71 МБ
- добавлен 05 июля 2010 г.
Компилятор для микроконтроллеров AVR от MicroDESIGN. Синтаксис Basic подобного языка. Очень удобный и продуманный интерфейс. Встроенны «помощники»: «терминал», калькулятор таймеров, знакогенератор для ЖК и другое. Отличительная особенность: генерирует стандартный ассемблер AVR. Можно посмотреть сгенерированный код. Архив содержит в себе дистрибутив, примеры, фаил справки в форматах PDF и CHM.
Лекарство прилагается.
HTML-Kit 1.292
- формат exe
- размер 3.09 МБ
- добавлен 08 февраля 2011 г.
HTML-Kit — очень мощный редактор, который поможет создать и отредактировать веб-страницу, проанализировать код страницы на наличие ошибок, просмотреть ее или выложить на сайт. Главная особенность — подсветка синтаксиса HTML, XHTML, XML, CSS, XSLT, JavaScript, VBScript, PHP, ASP, Java, Perl, Питона, C/C ++, Visual Basic, Pascal/Delphi, Lisp, SQL, INI/Conf и прочие языки программирования.rn
PascalABC.NET (версия 1.3, сборка 362 от 19.12.2009)
- формат exe
- размер 38.75 МБ
- добавлен 06 января 2010 г.
Новейшая среда программирования, разработанная в России. Соединяет простоту Паскаля и мощь платформы .NET. Содержит: Система программирования PascalABC.NET Задачник PT4 Платформа Microsoft .NET Framework v2.0 SP2 WindowsInstaller KB893803 (обновление Windows Installer до версии 3.1) Russian Language Pack for .NET v2.0 (русификация сообщений о ошибках времени выполнения) Framework Class Library Help (документация для всплывающей подсказки) Вот ч.
PowerBasic for Windows 7.02
- формат exe, txt
- размер 3.9 МБ
- добавлен 14 мая 2009 г.
PowerBasic for Windows 7.02 PowerBasic вернулся. Вернулся и стал под Windows. В отличие от других Basic’ов он компилирует код и создает маленький исполняемый файл (без всяких дополнительных DLL). Если надо, вы сможете создавать программы с графическим интерфейсом (окна меню и т. д. ). Код оптимизирован. Множество команд и возможность использовать функции Win API. Инструкция по установке в архивеrn
PureBasic 4.40.x32 portable
- формат exe
- размер 12.26 МБ
- добавлен 16 декабря 2009 г.
PureBasic — язык программирования высокого уровня, основаный на синтаксисе стандартного БЕЙСИКА. Язык разрабатывается более 10 лет и постоянно совершенствуется. Кроссплатформенность важная особенность PureBasic, на данный момент поддеживаются операционные системы: Windows, Linux, MacOS и AmigaOS. Несмотря на простой для новичка синтаксис, возможности PureBasic безграничны. PureBasic поддерживает: процедуры, указатели, структуры, динамические спи.
QBasic 1.0
- формат exe
- размер 1.01 МБ
- добавлен 10 ноября 2011 г.
Диалект языка программирования Бейсик (BASIC), разработанный компанией Microsoft, а также среда разработки, позволяющая писать, запускать и отлаживать программы на этом языке.rn
SharpDevelop 4.0 Portable
- формат exe, html, rtf, txt
- размер 15.27 МБ
- добавлен 29 января 2011 г.
SharpDevelop 4.0 — свободная среда разработки для C#, C++, F#, Python, Ruby, ILAsm, Visual Basic .NET и Boo. Обычно используется теми, кто не хочет пользоваться Visual Studio .NET. Существует также форк на Mono/Gtk+ — MonoDevelop. (Frameworks 2.0, 3.0, 3.5 and 4.0) Для полноценной работы необходимо установить .NET Framework 2.0 SDK .NET Framework 2.0 Software Development Kit (SDK) (x86), который можно скачать по адресу: Portable — работает.
TEA 28.1.3
- формат exe
- размер 5.65 МБ
- добавлен 07 февраля 2011 г.
TEA — текстовый редактор с десятками функций обработки и анализа текста. Подсветка синтаксиса (HTML, C, C++, Object Pascal (Delphi, Kylix), Java, JavaScript, Perl, SQL, Visual Basic Script и любых других), кодировки Windows CP 1251, DOS 866, KOI8-R, Unicode, Mac, ISO 8859-5, translit, автоопределение кодировок, закладки с сохранением имени файла и позиции в нем, утилиты для веб-дизайнеров, HEX-редактор, шифрация текста, файловый менеджер, подключ.
Visual Basic 2005 Express Edition
- формат exe
- размер 2.91 МБ
- добавлен 12 января 2010 г.
Источник: www.studmed.ru





























