Инструменты пользователя

Инструменты сайта


ob:o7:example:math

Это старая версия документа!


Математические выражения

Если микроконтроллер не имеет аппаратной поддержки вычисления чисел с плавающей точкой, то для компиляции доступна только целочисленная арифметика. Она состоит из таких операций как сложение (+), вычитание (-), деление на цело (DIV) и получение остатка от деления на цело (MOD).

MODULE ExamplesMath;

	VAR a, b, r: INTEGER;

BEGIN

	a := 37;
	b := 10;
	r := a + b; (* r = 47 *)
	r := a - b; (* r = 27 *)
	r := a DIV b; (* r = 3 *)
	r := a MOD b; (* r = 7 *)

END ExamplesMath.

Если микроконтроллер имеет модуль FPU, то будут доступны привычные операции над действительными числами REAL. В выражениях присвоения к переменным типа REAL константы должны указываться с точкой, обозначающей наличие десятичных разрядов.

MODULE ExamplesMath2;

	VAR a, b, r: REAL;

BEGIN

	a := 33.3;
	b := 22.0;
	r := a + b; (* r = 55.3 *)
	r := a - b; (* r = 11.299999999999997 *)
	r := a * b; (* r = 732.5999999999999 *)
	r := a / b; (* r = 1.5136363636363634 *)

END ExamplesMath2.
ob/o7/example/math.1636742358.txt.gz · Последнее изменение: 2021/11/12 21:39 — iadenisov