Sanny Builder
Search…
Дополнительные команды
В компилятор встроено несколько дополнительных команд, которые позволяют упростить некоторые конструкции.

INC

Прибавляет к значению переменной (первый параметр) число (второй параметр):
1
Inc($IntVariable, $Value)
2
=
3
$IntVariable += $Value
Copied!
Второй параметр по умолчанию равен 1.
Начиная с версии 3.06 можно использовать оператор инкремента ++. Он пишется после имени переменной и увеличивает ее значение на 1.
1
$var++
2
=
3
$var += 1
Copied!

DEC

Вычитает из значения переменной (первый параметр) число (второй параметр):
1
Dec($IntVariable, $Value)
2
=
3
$IntVariable -= $Value
Copied!
Второй параметр по умолчанию равен 1.
Начиная с версии 3.06 можно использовать оператор декремента --. Он пишется после имени переменной и уменьшает ее значение на 1.
1
$var--
2
=
3
$var -= 1
Copied!

MUL

Умножает значение переменной (первый параметр) на число (второй параметр):
1
Mul($IntVariable, $Value)
2
=
3
$IntVariable = $IntVariable * $Value
Copied!
Второй параметр по умолчанию равен 2.

DIV

Делит значение переменной (первый параметр) на число (второй параметр):
1
Div($IntVariable, $Value)
2
=
3
$IntVariable = $IntVariable / $Value
Copied!
Второй параметр по умолчанию равен 2.

ALLOC

Эта функция задает адрес для глобальной переменной, по которому она будет хранить свое значение. Значения переменных хранятся в начале файла main.scm.
Применять эту команду следует только к переменным с текстовым именем (например, $text). Для переменных с числовым именем (т.н. DMA-переменные) их адрес определяется самим этим числом. Например, переменная $40 хранит свое значение по смещению 160 (40*4).
Первый параметр должен быть глобальной переменной, второй - целым числом больше либо равным нулю.
1
Alloc($MyVar, 40) - переменная $MyVar будет скомпилирована как $40
Copied!
См. также help\examples\alloc.txt

SQR

Умножает переменную на саму себя
1
sqr($var)
2
=
3
$var *= $var
Copied!
Тип переменной должен быть объявлен.

RANDOM

Эта функция возвращает случайное число в заданном интервале:
1
$rnd = random(1, $high)
Copied!
Может использоваться как для целых, так и для дробных чисел. Конечный опкод зависит от типа переменной, в которую записывается результат ($rnd).
Last modified 1yr ago