Comment on page
Дополнительные команды
В компилятор встроено несколько дополнительных команд, которые позволяют упростить некоторые конструкции.
Inc($IntVariable, $Value)
=
$IntVariable += $Value
Второй параметр по умолчанию равен
1
.Inc(1@)
=
1@ += 1
Начиная с версии 3.06 можно использовать оператор инкремента
++
. Он пишется после имени переменной и увеличивает ее значение на 1
.$var++
=
$var += 1
Dec($IntVariable, $Value)
=
$IntVariable -= $Value
Второй параметр по умолчанию равен
1
.Dec(1@)
=
1@ -= 1
Начиная с версии 3.06 можно использовать оператор декремента
--
. Он пишется после имени переменной и уменьшает ее значение на 1
.$var--
=
$var -= 1
Mul($IntVariable, $Value)
=
$IntVariable = $IntVariable * $Value
Второй параметр по умолчанию равен
2
.Mul(1@)
=
1@ = 1@ * 2
Div($IntVariable, $Value)
=
$IntVariable = $IntVariable / $Value
Второй параметр по умолчанию равен
2
.Div(1@)
=
1@ = 1@ / 2
Эта функция задает адрес для глобальной переменной, по которому она будет хранить свое значение. Значения переменных хранятся в начале файла
main.scm
. Применять эту команду следует только к переменным с текстовым именем (например,
$text
). Для переменных с числовым именем (т.н. DMA
-переменные) их адрес определяется самим этим числом. Например, переменная $40
хранит свое значение по смещению 160
(40*4).Первый параметр должен быть глобальной переменной, второй - целым числом больше либо равным нулю.
Alloc($MyVar, 40) - переменная $MyVar будет скомпилирована как $40
См. также
help\examples\alloc.txt
Умножает переменную на саму себя
sqr($var)
=
$var *= $var
Эта функция возвращает случайное число в заданном интервале:
$rnd = random(1, $high)
Может использоваться как для целых, так и для дробных чисел. Конечный опкод зависит от типа переменной, в которую записывается результат (
$rnd
).Last modified 3yr ago