Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
ASIC — это компилятор и интегрированная среда разработки для подмножества языка программирования BASIC. Он был выпущен для MS DOS и совместимых систем как shareware. Написанный Дэйвом Висти из 80/20 Software, ASIC был одним из немногих BASIC-компиляторов, которые можно было легально скачать с BBS. ASIC позволяет компилировать программы в исполняемые файлы EXE или COM. COM-файл для программы "Hello, world!" имеет размер 360 байт и поддерживает арифметику с плавающей точкой. Эти ограничения и породили шутливый девиз: "ASIC: Почти BASIC!"
ASIC is a compiler and integrated development environment for a subset of the BASIC programming language. It was released for MS DOS and compatible systems as shareware. Written by Dave Visti of 80/20 Software, it was one of the few BASIC compilers legally available for download from BBSes. ASIC allows compiling to an EXE or COM file. A COM file for Hello world program is 360 bytes. and floating point arithmetic. These shortcomings resulted in the tongue in cheek motto, "ASIC: It's almost BASIC!"
Особенности
ASIC значительно беднее по своим возможностям по сравнению с современными BASIC. Функции ASIC подобраны таким образом, чтобы программу можно было легко и напрямую компилировать в машинный код. Таким образом, многие языковые конструкции ASIC эквивалентны конструкциям языка ассемблера.
ASIC is strongly impoverished in comparison with its contemporary BASICs. The features of ASIC are selected to make a program be easily and directly compiled into machine language. Thus, many language constructs of ASIC are equivalent to constructs of assembly language.
Элементы программы
Ни идентификаторы, ни ключевые слова не зависят от регистра. Любые операторы DIM, если они присутствуют, должны располагаться перед всеми остальными операторами, за исключением операторов REM или пустых строк. Все операторы DATA должны быть помещены в начало программы, перед всеми другими типами операторов, за исключением операторов DIM, REM или пустых строк.
Neither indetifiers, nor keywords are case sensitive. Any DIM statements, if specified, must precede all other statements except REM statements or blank lines. All DATA statements must be placed at the beginning of the program, before all other statement types, except DIM, REM statements, or blank lines).
Выражения
ASIC не имеет оператора возведения в степень ^. ASIC не имеет логических операторов (AND, OR, NOT и т. д.).
ASIC does not have the exponentiation operator ^. ASIC does not have boolean operators (AND, OR, NOT etc. ).
Массивы
Размер массива, указанный в операторе DIM, должен быть целочисленной константой. Один оператор DIM позволяет объявить только один массив.
The size of array specified in the DIM statement must be a literal constant. A single DIM allows to declare only one array.
Вход и выход
Аргументы PRINT должны быть литералами или переменными. PRINT не допускает использование составных выражений в качестве аргументов, а также не допускает использование строк, объединенных с помощью ; или +. Если команда PRINT заканчивается символом ; или ,, то следующая команда PRINT продолжит вывод с позиции, в которой остановилась предыдущая, как если бы ее аргумент был добавлен к аргументу текущей команды PRINT. Оператор PRINT выводит целые числа шириной в шесть символов. Они выравниваются по правому краю (без завершающих пробелов). LOCATE строка, столбец – перемещает текстовый курсор в позицию (столбец, строка), где 0 ≤ столбец и 0 ≤ строка. Позиция (0, 0) – верхний левый угол.
PRINT's arguments must be a literal or variable. PRINT does not allow to use combined expressions as its arguments, nor does it allow to use strings concatenated with ; or +. If a PRINT command ends with ; or ,, then the next PRINT command will resume in the position where this one left off, just as though its argument were appended to the argument of the current PRINT command. The PRINT statement prints integer values six characters wide. They are aligned to the right (no trailing spaces). LOCATE row, column Moves the text cursor to the position (column, row), where 0 ≤ column and 0 ≤ row. The position (0, 0) is the upper left corner.
Графика
PSET (строка, столбец), цвет Включает пиксель заданного цвета в позиции (столбец, строка), где 0 ≤ столбец и 0 ≤ строка. Положение (0, 0) – верхний левый угол.
PSET (row,column),color Turns on the pixel of the color color at position (column, row), where 0 ≤column and 0 ≤ row. The position (0, 0) is the upper left corner.
Структуры управления
Булево условие может представлять собой только сравнение чисел или строк, но не сравнение составных выражений. Литерал не может быть левым операндом в операции сравнения (например, допустимо X = 2, но недопустимо 2 = X).
A boolean condition may be only a comparison of numbers or strings, but not a comparison of combined expressions. A literal cannot be the left operand of comparison (e. g. can be X = 2, not 2 = X).
Периодическая
В FOR после TO может следовать только числовое литеральное значение или переменная, но не составное выражение. Оператор STEP отсутствует в ASIC.
In FOR, after TO there may be only a number literal or variable but not a combined expression. The STEP clause does not exist in ASIC.
Разветвление
В операторе GOTO метка должна быть за которой следует двоеточие.
In a GOTO statement, the label must be followed by a colon.
Подпрограммы
В операторе GOSUB после метки обязательно должен стоять двоеточие.
In a GOSUB statement, the label must be followed by a colon.