Программирование на Бейсик 48/128 для ZX-Spectrum 1993 г.

SPECTRUM-бейсик - программирование. Набор программы. Запуск программы. Редактирование программы.


ПРОГРАММИРОВАНИЕ

До сих пор, знакомясь с работой операторов Spectrum-Бейсика,
мы вводили их в непосредственном режиме, то есть наше требова-
ние что-либо сделать компьютер выполнял сразу же после нажатия
клавиши Enter. Для выполнения в этом режиме следующего опера-
тора нужно опять набирать ключевое слово, параметры и опять
нажимать Enter. Если бы компьютер мог работать только так, то он
ничем принципиально не отличался бы от простейшего калькуля-
тора, на котором каждое действие задается и выполняется отдель-
но.

Именно способность работать по программе, то есть выполнять
один за другим операторы, расположенные в заданной после-
довательности, делает компьютер компьютером. Эта последователь-
ность операторов и называется компьютерной программой.

Простейший способ заставить компьютер выполнить несколько
операторов подряд без остановки — это после набора оператора
поставить двоеточие, затем ввести следующий, а закончить после-
довательность нажатием клавиши Enter:

PRINT "A";: PRINT "В";: PRINT "C";[Enter]

ABC

Однако приведенная строка — еще не программа. Spectrum не
может запомнить эту последовательность операторов и выполнить
вновь. Да и не все операторы Бейсика можно записать вот так, в
одну строчку. Не говоря уж о том, что читать такую последователь-
ность не очень удобно.

Программа составляется из множества строк, в каждой из которых
записан один или несколько операторов. Строкам присваиваются
«адреса» — номера от 1 до 9999. При запуске программы строки
выполняются одна за другой в порядке возрастания номеров.

Так, приведенная последовательность операторов PRINT в виде
программы запишется следующим образом:

10 PRINT "А";

20 PRINT "В";

30 PRINT "С";

Набор программы

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

Запуск программы

RUN

Запускается программа опе-
ратором RUN, вводимым в не-
посредственном режиме. После
выполнения нашей первой
программы на экране увидим

ABC

и знакомое нам сообщение
О ОК, 30:1. Смысл его тот же,
только цифры другие. Надеем-
ся, понятные — работа законче-
на на первом операторе строки
с номером 30.

RUN без параметров запускает программу с первой строки (со
строки с наименьшим номером). Можно «стартовать» и с любой
другой, указав ее номер. Например, оператор RUN 20 запустит
программу с 20-й строки, и на экране появится лишь часть текста:

ВС

Редактирование программы

LIST

При выполнении программы существенным является лишь по-
рядок следования номеров строк. Поэтому для удобства последую-
щего изменения программы (непример, добавления новых строк)
нумерацию производят через 5 или, чаще, через 10 номеров.
Вставляются строки в программу просто: набирается строка с
номером большим, чем номер строки, после которой нужно сделать
вставку, но меньшим, чем номер последующей, и нажимается
Enter. Введем строки
15 PRINT"*";
25 PRINT "*";

и наша первая программа приобретет следующий вид:

10 PRINT "А";
15 PRINT"*";
20 PRINT "В";
25> PRINT "*";
30 PRINT "С";

После ее выполнения (RUN) на экране появится
А*В*С

Допустим, нам потребовалось изменить содержание какой-ни-
будь строки программы (а этим только и приходится заниматься
при ее отладке). Указать Бейсику строку, которая требует ре-
дакции, можно, перемещая с помощью курсорных клавиш CS/6 и

CS/7 значок >, расположенный в тексте программы на основном
экране между строкой и ее номером. Этот значок называется
указателем текущей строки и, пока его «не трогают», указывает на
последнюю введенную строку (в нашем случае на строку 25).
Установим указатель на 30-ю строку и нажмем клавиши CS/1
(Edit). Строка скопируется на служебный экран, туда, где она
ранее набиралась и где ее теперь можно редактировать. Как это
делается, мы уже описывали (см. стр. 9). Заменим, например, в
этой строке букву С на D.

Когда все необходимые изменения в строке произведены, на-
жмем Enter. Отредактированная строка перепишется на прежнее
место (если, конечно, не был изменен ее номер).

Пока строка находится на редакции (Enter не нажата), можно
еще отказаться от внесенных в нее изменений. Нужно нажать CS/1
(Edit), и на редактирование будет вызвана строка, в которой в
данный момент расположен указатель текущей строки. Обратите
внимание на то, что указатель текущей строки можно перемещать
и во время редактирования строк.

Для удаления строки из программы
совсем необязательно вызывать ее на
редакцию и стирать весь ее текст. До-
статочно ввести ее номер без каких-
либо операторов. Введем, к примеру,

10

- и из программы исчезнет 10-я
строка — и номера не останется. Про-
падет с экрана и указатель текущей
строки (возвращается он с помощью
клавиш CS/6 и CS/7).

И еще одна существенная, но про-
стая операция, которую необходимо
освоить для успешной отладки про-
граммы — вывод листинга, то есть
распечатка на экране фрагментов
программы. Это просто необходимо,
если программа состоит из многих де-
сятков, а то и сотен строк, которые,
естественно, невозможно увидеть на
экране сразу все. Начать вывод лис-
тинга с первой строки программы
можно с помощью оператора LIST. По-
сле его выполнения компьютер пред-
ставит на экране первую страницу
листинга. Если на ней поместилась не
вся программа, то он спросит: scroll?
(прокрутить?). Для продолжения про-
смотра («прокрутки» экрана) нажима-
ется любая клавиша, кроме Space и
CS/Space. После нажатия на эти кла-
виши вывод листинга прекращается.

Можно попросить компьютер вывести листинг программы, на-
чиная с любой строки, указав ее номер после ключевого слова,
например:

LIST 20

Причем на упомянутую строку автоматически будет установлен
указатель текущей строки. Таким образом, команда LIST позволяет
быстро «перебрасывать» указатель в любое место программы.

Вполне может быть, что номер требуемой строки забылся. Не
стоит расстраиваться. Если мы и ошибемся, LIST найдет строку с
ближайшим большим номером и начнет вывод листинга с нее.




СОДЕРЖАНИЕ:


  Оставте Ваш отзыв:

  НИК/ИМЯ
  ПОЧТА (шифруется)
  КОД



Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Что-где-почем - Чеpкасской гpуппой BIS пpедлагается к pаспpостpанению новая диззиподобная игpа Crime Santa Claus Deja Vu...
С миру по биту - ответ представителя фирмы КОНДОР (разработчик компьютера Profi) на письма читателей, а так же продолжение темы "Как написать МЕГАДЕМО".
Обзор ассемблеров - Edas 3.3, Assembler for Scorpion, XAS, ZX-ASM, Alasm 2.8, Master Assembler v.1.1, TASM 4.1.
Авторы - авторы газеты.
Enlight'97 - Отчет Gendalf о Enlight'97.

В этот день...   19 апреля