BasicMicro80DirOps

Материал из MK90.ORG wiki
Версия от 16:24, 8 февраля 2018; Id (обсуждение | вклад) (Новая страница: «=== Директивы === New Стирает текст программы, подготавливаясь таким образом ко вводу ново…»)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к:навигация, поиск

Директивы

New

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

Run [N]

Запускает программу со строки с номером N, или с наименьшим номером, если N опущено. Перед запуском всем переменным присваивается значение 0 или "".

LIST [N]

Выводит на дисплей текст программы, начиная со строки N, или с начала, если N опущено.

CONT

Продолжает выполнение программы с того места, где она была прервана оператором STOP или УС+С. В случае невозможности дальнейшего продолжения выполнения программы на экран выводится сообщение об ошибке.

MSAVE [имя]

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

MLOAD [имя] 

Загружает программу с магнитной ленты. Если имя программы указано, происходит поиск программы с таким именем, если нет - загружается первая программа, при сохранении которой имя не было указано.

Операторы

REM 

Комментарий к программе, весь текст игнорируется интерпретатором.

DIM 

Объявляет один или несколько массивов заданной размерности. Если число элементов массива не превышает 10, его можно не описывать. В противном случае надо перечислить через запятую имена массивов и размерности, например: DIM A(30), B(15,15), C2(3,3,3).

DATA

Блок данных для чтения оператором READ. Программа может содержать произвольное количество как операторов DATA, так и операторов READ. Данные указываются в виде символьных или числовых констант, перечисленных через запятую, например: DATA 12,865,"ТРАНЗИСТОР",33,"АНАНАС"

READ NAME[,NAME[,...]]

Читает очередное значение из оператора DATA и присваивает переменной. Каждое присвоение сдвигает указатель чтения оператора DATA на одну позицию.

RESTORE

Вызывает перемещение указателя чтения READ на самое первое значение в первом операторе DATA. Обеспечивает повторное чтение данных в программе.

INPUT ["приглашение";]NAME[,NAME[,...]]

Обеспечивает ввод с клавиатуры значений и присвоение их переменным. При достижении этого оператора работа интерпретатора приостанавливается, на экран выводится опциональный текст "приглашение", затем обязательный символ знака вопроса '?'. Оператор должен ввести одно или, если это требуется, несколько значений через запятую, после чего нажать ВК (допускается редактирование ввода). В случае несовпадения числа или типа введенных значений списку оператора, выполнение приостанавливается с выводом сообщения об ошибке.

PRINT EXPR[,EXPR[,...]]

Вывод одного или нескольких значений выражений. Если в качестве разделителя использована запятая ',', под каждое значение отводится 14 позиций, если точка с запятой ';', то ровно столько, сколько надо. Если оператор PRINT закончился разделителем - следующий оператор PRINT продолжит печать на той же строке, в противном случае - начнет со следующей. На вывод числа отводится 6 позиций (вне зависимости от представления - в виде целого, дробного с десятичной точкой или экспоненциального).

CUR X,Y

Перемещение курсора в позицию X-ой колонки (0-63) и Y-й строки (0-31). Следующий оператор вывода начнет печатать именно в эту позицию.

GOTO N

Осуществляет безусловный переход к выполнению операторов в строке N.

GOSUB N

Передача управления строке с номером N. Выполнение продолжается до оператора RETURN, который возвращает выполнение и передает его оператору, следовавшему сразу за N.

ON X GOTO N1[, N2[, N3...]]]
ON X GOSUB N1[, N2[, N3...]]]

В зависимости от значения вычисленного выражения X, передает управление строкам N1, N2, N3... При вычислении выражения отбрасывается дробная часть числа, полученное значение используется как порядковый номер в списке строк перехода. Значение 1 соответствует N1, значение 2 - N2 и так далее. Если вычисленное значение не соответствует ни одному из вариантов, управление передается оператору, следующему сразу за ON X GOTO / ON X GOSUB.

STOP

Прекращает выполнение программы и переводит интерпретатор в непосредственный режим, выводится сообщение "СТОП в XX", где XX - номер строки. После завершения анализа состояния программы можно продолжить её выполнение оператором CONT.

FOR X=EXPR1 TO EXPR2 STEP EXPR3
NEXT X

Все операторы, расположенные между FOR и NEXT выполняются циклически, при этом X - переменная цикла, принимающая в первой итерации значение EXPR1, а в каждой последующей изменяющееся на EXPR3. Цикл завершается, когда переменная X достигает конечного значения EXPR2. Проверка производится оператором NEXT, поэтому тело цикла выполняется хотя бы один раз.

IF X THEN Y

Условный оператор, обеспечивает ветвление. Если вычисленное значение выражения X истинно, выполняется оператор Y, в противном случае управление передается на следующую строку. Выражение считается истинным, если его значение не равно нулю и ложным, если равно нулю.

CLS

Очистка экрана.

PLOT X, Y, Z

Рисует или гасит точку в псевдографическом режиме, начало координат расположено в левом нижнем углу. Диапазон X - 0..127, диапазон Y - 0..63. Z может быть равно либо 1 (засветить точку), либо 0 (погасить точку).

LINE X, Y
POKE X, Y
OUT X, Y
CLEAR X

Очистка значений переменных. Если параметр X не указан, всем переменным присваивается 0 и "", если указывается - размер буфера символьных переменных изменяется на X байт (по умолчанию 50 байт).