Руководство программиста для начинающих 1969 г.

Приложение - краткое описание функций и операторов, реализуемых данной версией языка БЕЙСИК.


ПРИЛОЖЕНИЕ А.

Краткое описание функций и операторов, реализуемых
данной версией языка БЕЙСИК

ФУНКЦИИ

Функции — это зашитые в БЕЙСИК — систему подпрограммы,
которые получая на входе одни значения, называемые аргумен-
тами, возвращают другие значения —- результаты.

Функции используются в выражении простым включением в
него имени функции с последующими аргументами.

Если в одном выражении используются и функции, и опе-
рации, то функции будут вычислены перед выполнением любых
операций. Однако, этот порядок можно изменить, применяя скобки.

Принятые обозначения:

X, Y — аргументы функций;

А, В — операнды функций.

Все функции языка Бейсик сведены в следующую таблицу:

Имя
функции

Тип
аргумента

Действие *»
(возвращаемое значение)

1

2

3

ABS

Число

Абсолютное значение

ACS

Число

Арккосинус в радианах, число должно быть в интервале
от — 1 до 1

ASN

Число

Арксинус а радианах, число должно быть в интервале
от — I до 1

ATN

Число

Арктангенс в радианах

ATTR

Два число-
вых аргумен-
та X и Y,
заключенных
в скобки

Число, двоичный код которого представляет собой атрибуты
Y-ой позиции Х-ой строки экраиа. Бит 7 (старшяй) равен
1 для мерцающего поля, и 0 для немерцающего. Биты с
5 по 3 — цвет фона. Биты с 2 по 0 — цвет закрашивания.
0<=Х<=23 и 0<=Y<=31.

BIN

Это не обычная функция. За BIN записывается после-
довательность нулей и единиц, представляющая собой дво-
ичное представление числа, которое записывается в память

CHR$

Число

Символ, чей код представим числом X, округленным к

ближайшему целому.

CODE

Строка
символов

Код первого символа в строке X (или 0,если строку пустая)

COS

Число в
радианах

Косинус X

EXP

Число

F, в степени X

FN

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

IN

Число

Осуществляется ввод на уровне микропроцессора из порта
X (0<;=Х<—FFFFH). Загружается пара регистров ВС
и выполняется команда ассемблера IN А, (С).

INKEY$

Нет

Чтение с клавиатуры. Возвращает символ, введенный с кла-
виатуры (в режиме |L] или [С]) .если было действительное
нажатие клавиши, или пустую строку в противном случае.

INT

Число

Округление к ближайшему меньшему целому

LEN

Строка
символов

Длина строки

LN

Число

Натуральный логарифм, Х>-0.

NOT

Число

0, если ХоО; 1, если Х=0. Операция име.эт четвертый
приоритет.

1

2

з

OR

Оба операн
да числа

1

Логическая операция

1, если В<>0

A OR В-

А, если В=0
Операция имеет второй приоритет.

РЕЕК

Число

Значение байга в памяти по адресу X, округленному к
ближайшему целому

PI

Нет

Число ПИ (3.14159265...)

POINT 1

Два числовых
аргумента X
и Y, заклю-
ченных в
скобки

1, если точка экрана с координатами (X,Y) закрашена.
0, если эта точка имеет цвет фона.
0<=Х<=255 и 0<=Y<=175.

RND

Her

Очередное псевдослучайное число из последовательности,
получаемой возведением в 75 степень модуля числа 65537,
вычитанием 1 и делением иа 65536. Число лежит в интер-
вале 0<=Y<=1.

S(,Rfh.N$

Два числовых
аргумента X
и Y, заклю-
ченных в
скобки;

Символ (обычный или инверсный), который появляется
на экране в строке X, позиии Y. Дает пустую строку, если
символ ие опознан.

SON

Число

-1,:если Х<0

0, если X—0

1, если Х> 0

SIN

Число в
радианах

Синус X

SQR

Число

Корень квадратный. Ошибка, если Х<0.

STR$

Число

Строка символов, которая должна быть отображена," "
если X выводится

USR

Число

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

USR

Строка
символов

Адрес группы байтов, задающих определённый пользова-
телем символ для закрепления его за X.

VAL

Строка
символов

Вычисляет X как числовое выражение. Выдает сообщение
об ошибке, если X содержит синтаксическую ошибку или
дает строковое (не числовое) значение.

VAL$

Строка
символов

Вычисляет X как строковое выражение. Выдает сообщение
об ошибке, если X содержит синтаксическую ошибку или
дает не строковое (числовое) значение.

ОПЕРАТОРЫ

Принятые обозначения:
А — одна буква;
V — переменная;
X, Y, Z — числовые выражения;

М, N — числовые выражения, которые округляются к ближай-
шему целому;
Е — некоторое выражение;
F — выражение, имеющее строковое значение;
S — последовательность операторов, разделенных двоеточием
«:»;

С — последовательность символов управления цветом. Каждый
заканчивается запятой или точкой с запятоц. Цветовой
символ имеет форму операндов: PAPER, INK, FLASH,
BRIGHT, INVERSE или OVER.
Текст произвольного выражения может располагаться в любом
месте строки (за исключением номера строки, который должен
размещаться в начале строки).

Все операторы, кроме INPUT, DEF и DATA могут исполь-
зоваться и как команды и в программах.

Команда или строка программы может содержать несколько
операторов, разделенных двоеточием «:».

Нет ограничений на положение оператора в строке, хотя есть
некоторые ограничения в IF и REM.

Все операторы языка БЕЙСИК сведены в следующую таблицу:

Оператор

Действие оператора

1

2

ВЕЕР X, Y

Воспроизводит звук длительностью X сек. и высотой Y полу-
тонов вверх от основного тона ДО (или вниз, если Y отрица-
тельное)

BORDER М

Устанавливает цвет рамки (бордюра) экрана. 0<—М<=7

BRIGHT М

Устанавливает яркость выводимого символа:

0 — для обычной яркости;

1 — для повышенной яркости;

8 — сохраняет существующую яркость.

CAT

Без MICRODRIVE не работает

CIRCLE X,Y,Z

Изображает дугу или окружность с центром в точке с коорди-
натами (X.Y) и радиусом Z.

CLEAR

Уничтожает все переменные и очищает занимаемую ими память
Выполняет RESTORE и CLS, устанавливает PLOT позицию
в нижнюю левую точку экрана и очищает GO SUB стек.

CLEAR N

Подобно CLEAR, но дополнительно изменяет системную пере-
менную RAMTOP на 'N' и задает новый GO SUB стек.

CLOSE*

Без MICRODRIVE ие работает

CLS

(CLEAR SCREEN) очищает файл экрана

CONTINUE

Продолжает выполнение программы, начатой ранее и остановлен-
ной с сообщением, отличным от 0. Если было сообщение 9 или L
то выполнение продолжается со следующего оператора. В других
случаях с того оператора, где случилась ошибка.

COPY

11ересылает копию 22 строк экрана на принтер, если он подключен

DATA EI, E2, E3„.

Часть списка данных Располагается только в программе.

DEF

FNA(Al,...,AK)=E

Определяемая пользователем функция Должна располагаться
в программе. А,А1 и т.д. единственные буквы или буквы и $ для
строковых аргументов, значений. Если нет аргументов, исполь-
зуется форма DEF FNA( ).

DELETE F

Без MICRODRIVE не работает

DIM

A (NI,N2,...,NK)

Уничтожает массив с именем 'А' и устанавливает числовой
массив 'А' с 'К' измерениями и присваивает всем его элементам
значение 0.

DIM

A$ (N1.N2.....NK)

Уничтожает массив или строку с именем ' ' и устаиавлн
вает символьный массив с 'К' измерениями и присваивает всем
его элементам значение « ». Массив не определен до его опи-
сания в операторе DIM.

DRAW X, Y

То же самое, что и DRAW X, Y, 0. Чертит прямую линию

DRAW X,Y,Z

Изображает линию от текущей графической позиции в точку
приращениями X,Y по дуге в Z радиан.

ERASE

Без MICRODRIVE не работает

1

2

FLASH N

Определяет, будет ли символ мерцающим или с постоянным
свечением. N=0 для постоянного свечения, N=1 для мерцания
N—8 — для сохранения предыдущего состояния.

FOR А=-Х ТО Y

FOR А=Х ТО Y STEP 1

FOR А=Х
ТО Y STEP Z

Уничтожает скалярную переменную 'А' и устанавливает управ
ляющую переменную 'X', предел 'Y', шаг приращения 'Z',
зацикливает адрес, указанный и утверждении после FOR оде
ратора. Проверяет, если начальное значение больше (если
STEP>=0) или меньше (если STEP<0), чем предел, то про-
исходит переход к утверждению NEXT А.

GO SUB N

Проталкивает строку с оператором GO SUB в стек для исполь-
зования затем как GO ТО N.

G6 ТО N

Продолжает выполнение программы со строки. 'N', если 'N'
опущено, то с первой строки после этой.

IFX THEN S

Если 'X' истинно (не равно 0), то выполняется 'S', 'S' вклю-
чает все операторы до конца строки.

INK N

Устанавливает цвет закрашивания (т.е. цвет, которым будут
изображаться символы иа цвете фона). 'N' в интервале от 0 до 7
указывает цвет. N=8 — оставить цвет без изменения, N=9 —
увеличение контраста.

INPUT...

/

- 4 '*'

'...' есть последовательность вводимых символов, разделяемых
как в операторе PRINT запятыми, точками с запятой или
апострофами. Вводимыми символами могут быть:

а) некоторый PRINT — символ, начинающийся не с буквы;

б) имя переменной;

в) строка имен переменных строкового типа.

PRINT — символы в случае а) представляются так же, как и
в операторе PRINT, за исключением того, что они все выводятся
в нижнюю часть экрана. В случае б) компьютер остаиавли-
иается и ждет ввода некоторого иыражеиия с клавиатуры, зна-
чение которого будет присвоено переменной. Ввод осуществля-
ете» обычным образом, а синтаксические ошибки выдаются
мерцающим знаком [?]. Для строкового выражения вводной
буфер устанавливается для размещения двух таких строк. Если
первый вводимый символ STOP, то программа останавливается
Случай в) подобен случаю б) с той лишь разницей, что вводимая
информация представляет собой строковый литерал неограни-
ченной длины, и STOP в этом случае ие сработает. Для останова
надо нажать клавишу 'курсор вниз'.

INVERSE N

Символ управления инверсией выводимого сямвола. Если N—0,
символ выводится в обычном виде с прорисовкой цветом закра-
шивания (INK) иа цвете фона (PAPER) Если N=1, то цветовое
решение изображения символа меняется на обратное.

LET V=E

Присваивает значение 'Е' переменной 'V'. Ключевое слово
LET не может быть опущено. Скалярная переменная ие опре-
делена, пока не встретится в операторах LET, READ или INPUT.

Если индексируемая строковая переменная или сечеиие стро-
кового массива (подстрока), то присваивание осуществляется
с усечением справа или дополнением пробелами до фиксирован-
ной длины. "

1

2

LIST

To же, что и LISTO.

LIST N

Записывает текст программы в верхнюю часть экрана, начиная
с первой строки, меньшей, чем 'N', и делает 'N' текущей строкой.

LLIST

То же, что и LLISTO. ЙНВ&гт

LLIST N

Подобно LIST, но вывод осуществляется на принтер

LOAD F

Загружает программу и переменные. Р

LOAD F DATA ( )

Загружает числовой массив

LOAD F DATA $ ( )

Загружает строковый массив.

LOAD F CODE M,Is

Загружает старшие 'N' байтов, начиная с адреса 'М'.

LOAD F CODE M

Загружает байты, начиная с адреса 'М'.

LOAD F CODE

Загружает байты по адресу, с которого они были
записаны на ленту.

LOAD F
SCREEN$

Аналогично LOAD F CODE 16384, 6912. Очищает файл экрана
и загружает его с кассетного магнитофона.

LPRINT

Подобно PRINT, но использует принтер.

MERGE F

Подобно LOAD F, но ие затирает всю старую программу в
памяти, а заменяет только те строки и переменные, у которых
совпадают номера или имена с такими же иа лейте

MERGE F1.F2

Без MICRODRIVE ие работает Я!

NEW

Запускает по новой систему программирования БЕЙСИК, унич-
тожая старую программу и переменные и используемую память

NEXT A

а) находит управляющую переменную 'А';

б) прибавляет к ней значение STEP;

в) если STEP>=0, а значение 'А' стало больше значения
'предел', или STEPcO, а значение 'А' меньше, чем значение
'предел', то происходит переход к оператору цикла.

OPEN#

Без MICRODRIVE не работает

OUT M.N

Выводит байт 'N' в порт 'М'. Операции выполняется на уровне
микропроцессора (загружает в регистровую пару ВС адрес 'М',
а в регистр А — 'N' и выполняет команду ассемблера OUT
(С). А .

0<=М <=65535. — 255<=N<=255.

OVERN

Управляющий символ надпечатываиия по выведенной строке.
Если N—0, то выводимый символ затирает существующий в
данной позиции. Если N=1, то новый символ соединяется со ста-
рым, образуй закрашивающий цвет, при условии, что старый
символ имел указание цветв, отличное от старого, или цвет
фона, если оба указывают на один и тот же цвет (либо фона,
либо закрашивания).

PAPER N

Подобен INK, но управляет цветом фона.

I

2

PAUSE N

Останавливает выполнение программы и задерживает изображе
ние на экране на 'N' кадров (50 кадров в сек. — частота
кадровой развертки) или до нажатия любой клавиши.
0<= N<=65535. При N=0 время задержки не учитывается
и продолжается до первого нажатия клавиши.

PLOT C; M,N

Выводит точку закрашивающего цвета (обработанная OVER и
INVERSE) с координатами (ABS (М), ABS(N)), смещает гра
фическую позицию.

Если цветовой символ 'С' ие специфицирован иначе, то цвет
закрашивания в позиции, где расположена эта точка, изме-
няется на текущий сплошной закрашивающий цвет, и другие
указания (цвет фона, мерцание, яркость) остаются без изме-
нения.

0<=ABS(M) <=255
0<=ABS(N) <=175

POKE M,N

Записывает значение 'N' в байт памяти по адресу 'М'.
0<=М <=65535, — 255 <=N <=255

PRINT.

'...' последовательность PRINT — символов, разделенных запя
тыми, точками с запятой или апострофами, которые выводятся
в экранный файл для отображения на экране телевизора. Точка
с запятой сама действия не вызывает, а используется для
разграничения символов. Запятая порождает управляющий
символ «запятая>, а апостроф порождает символ ENTER
В конце оператора PRINT, если он не заканчивается точкой
с запятой, запятой илн апострофом, автоматически выводится
символ ENTER PRINT — символом может быть:

а) пустая строка;

б) числовое выражение.

Если значение выражения отрицательно, то выводится знак
минус. Если Х<=10**( 5) или Х>=10**13, вывод осущест-
вляется в показательной форме. Мантисса представляется 8-мью
цифрами (с нормализацией) и десятичной точкой (отсутствует
только тогда, когда в мантиссе одна цифра) после первой
цифры. Показатель степени записывается после буквы 'Е' с
последующим знаком и двумя цифрами порядка. Иначе X выво-
дится как обычное десятичное число с 8-мью значащими циф-
рами;

в) строковое выражение.

В строке возможны пробелы до и после символов.
Управляющие символы вызывают определяемое ими действие.
Не отображаемые на экране символы выводятся как '7';

г) AT M,N

Вывод в позицию 'N' строки 'М';

д) TAB N

Перемещает позицию вывода в столбец N текущей строки;

е) цветовой символ в форме PAPER, INK, FLASH,
BRIGHT, INVERSE или OVER оператора.

Hn

RANDOMIZE

To же, что и RANDOMIZE 0

1

' ' 2

RANDOMIZE N

Устанавливает системную переменную SEED, используемую
для вычисления очередного значения функции RND. Если
N< >0, то SEED принимает значение 'N'. Если N=0, то
SEED принимает значение другой системной переменной
FRAMES, подсчитывающей кадры, отображаемые на экране,
что обеспечивает вполне случайное число. N должно лежать
в интервале от 0 до 65535.

READ V1,V2,...,VK

Присваивает переменным VI,...VK одной за другой значения,
последовательно представленные в списке DATA.

REM... ^

Вставка комментариев. Не выполняется. '...' может быть по-
следовательностью символов (исключая ВК).

RESTORE

То же самое, что н RESTORE О

RESTORE N

я

Перезаписывает указатель данных в первый оператор DATA
в строке меньшей, чем N. Следующий оператор READ начнет
считывание отсюда.

RETURN

Возврат из подпрограммы, ссылается на оператор GO SUB
в стеке и передает управление на строку после него.

RUN ■

То же самое, что н RUN О.

RUN N

Запуск выполнения БЕЙСИК-программы. Выполняет CLEAR,
а затем GO ТО N.

SAVE F

Вывод на ленту программ н данных.

SAVE F LINE M

Записывает на ленту программу и переменные таким образом,
что при загрузке программа автоматически выполняется со стро-
ки 'М'.

SAVE F DATA ( )

Запись на ленту числового массива.

SAVE F DATA $ ( )

Запись на ленту строкового массива

SAVE F CODE M,N

Запись на лепту 'N' байтов, начиная с адреса 'М'.

SAVE F SCREEN$

Аналогично SAVE F CODE 16384, 6912

STOP

Останавливает выполнение программы. Продолжение
(CONTINUE) будет осуществляться со следующего оператора.

VERIFY

Го же, что н LOAD, за исключением того, что данные не
загружаются в ОЗУ, а сравниваются с находящимися там
кодами.




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

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



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

Похожие статьи:
News - Karbo came back and wrote new music, Freeman is in Ukraine now, in Odessa (left there before the Maidan, to the sea, for health reasons), sculpts games for mobile phones, Mythos codes firmware for BMW on outsourcing and is engaged.
Проходилка - Волшебник страны Оз
Доска почета - Конкурс на самую лучшую минидемку (1024 байта).
Ликбез - полный диассемблер ПЗУ (часть 23).
Anigdot №44 - Продаю и собираю на заказ телефоны с АОНом!

В этот день...   18 февраля