ПрагмаСофтСтудия 2.1

Общие сведения о переменных

 

 

Общая информация

Переменная - это прежде всего небольшой фрагмент памяти, так называемая, ячейка памяти. Она обладает некоторым размером. Он указывает, какое количество байт переменная занимает в памяти, или, говоря иначе, сколько байт требуется для хранения её состояния. Неотъемлемой характеристикой любой переменной является её тип. Это условность. Тип определяет наше отношение к переменной, то, как мы сами воспринимаем и интерпретируем информацию, которую она хранит. За каждой переменной в САПР может быть закреплён один из пяти типов: bool, int, uint, float, string. Расскажем подробнее о каждом из них.

bool

Если мы говорим, что переменная может хранить только два состояния, так называемые, истина и ложь, то имеем в виду булеву переменную. В САПР её тип имеет обозначение bool и может принимать значение true или false. С помощью переменных этого типа удобно хранить состояние включённости чего-либо, определять произошло ли некоторое событие, достигнут ли желаемый результат или показатель и т.д.

В создаваемом с помощью функции кодогенерации программном коде этот тип приравнен к типу int и занимает в памяти 32 бита. В принципе, для хранения значения типа bool было бы достаточно одного байта, но современные процессоры устроены так, что зачастую операции с 32 битами совершаются быстрее, чем с байтами. При этом размер оперативной памяти в современной аппаратуре уже не является узким местом.

int

Вероятнее всего, тип int станет основным типом, с которым вам придётся работать. Он предназначен для хранения целых чисел со знаком, т.е. тех, которыми мы оперируем в нашей повседневной жизни. В программе и генерируемом программном коде тип int занимает 32 бита и может принимать значение от -2147483648 до 2147483647.

uint

Порой необходимо хранить значения не имеющие знака, например, количество чего-либо. В подобных случаях используют переменные с типом uint. Также причиной выбора этого типа может быть его удвоенный по отношению к типу int диапазон положительных значений. В САПР и создаваемом программном коде тип uint занимает 32 бита и имеет диапазон значений от 0 до 4294967295.

float

Если ваша величина может принимать не целые значения, то вам необходимо использовать тип float. Он позволяет хранить вещественные числа или, так называемые, значения с плавающей точкой. В САПР и создаваемом с помощью функции кодогенерации программном коде тип float занимает в памяти 32 бита. Диапазон возможных значений зависит от конечной реализации, например, от -3.402823466e+38 до 3.402823466e+38.

string

Для возможности хранения текстовых строк был введён тип string. В программе и создаваемом программном коде тип представляет собой последовательность строчных символов. Символы в памяти располагаются плотно друг за другом. За последним символом всегда размещается дополнительный со значением 0 (ноль). Он обозначает конец строки и не доступен для пользователя.

Все строки в САПР состоят из unicode символов. Это даёт возможность хранить в строке текст на любом языке. В случае генерации программного кода вид символов, из которых будут состоять строки, определяется настройками генератора.

Большинство переменных САПР под своим именем могут скрывать не одну, а множество ячеек памяти. О таких переменных говорят, что они являются массивами. А количество ячеек в массиве называется размерностью массива переменной или, просто, размерностью переменной. Все ячейки массива одной переменой имеют одинаковый размер и тип, соответствующий типу этой переменной. В памяти они располагаются последовательно друг за другом.

Максимальная размерность переменной ограничена и по умолчанию составляет 1000. Это значение можно изменить в настройках профиля текущего загруженного проекта. За это отвечает поле Максимальная размерность, которое находится на странице Общее в группе Идентификаторы.

 

Имена и описание

Все переменные в программе имеют имена. Имена переменных не должны начинаться с цифры и могут содержать только знаки подчёркивания, цифры и символы латинского алфавита.

_0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ

Впрочем, средства создания переменных в программе следят за этим и не дадут вам ошибиться.

Для большинства переменных в САПР по вашему желанию может задаваться описание. Оно способно содержать любые строчные символы на любом языке, быть многострочным и в деревьях рабочих окон отображается в виде одиночной строки в дополнительном правом столбце.

 

Обозначение в деревьях

Давайте рассмотрим, как обозначаются переменные в деревьях рабочих окон программы.

-

Первой размещается графическая пиктограмма. Цвет повёрнутого прямоугольника на ней определяет, является ли эта переменная входной , выходной или локальной . Идущая следом латинская буква подсказывает тип переменной и соответствует его первой букве. То есть буква 'b' указывает на тип bool, буква 'i' на тип int и т.д..

-

Метка выбора может быть установлена или снята нажатием на неё левой клавиши мыши или нажатием клавиши Space (Пробел) на клавиатуре при условии, что элемент выделен. Состояние означает, что переменная активна, она участвует в работе, и может быть указана в формуле. Состояние активности равносильно отсутствию переменной, она не оказывает никакого влияния на работу проекта и тестовых сценариев.

-

Далее следует имя переменной, оно же - её уникальный идентификатор. Используется для доступа к значению переменной в формулах.

-

Поле размерности переменной. В квадратных скобках указывается количество элементов в массиве переменной. Поле может отсутствовать. Это означает, что размерность переменной равна 1.

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

Обязательная инициализация переменных - это один из основных принципов САПР. Он позволяет исключить распространённую ошибку в программировании связанную с использованием в формулах не инициализированных переменных.

Инициализирующих значений может быть указано несколько, например, так.

В данном случае первому элементу массива переменной val присвоится строка "One", второму элементу - строка "Two", третьему - строка "Three". Если количество значений после знака равно указано меньше, чем размерность переменной, то последнее значение будет присвоено всем оставшимся элементам массива.

В выражении выше значение 4.5 будет присвоено не только второму, но также третьему и четвёртому элементу массива переменной angle.

САПР для переменной в элементе дерева указывает не более 5 инициализирующих значений.

Для того, чтобы увидеть оставшиеся значения, выделите элемент дерева, который соответствует переменной. В окне Свойства выделите поле Значения по умолчанию или Начальные значения и нажмите на кнопку , расположенную в его правой части. Откроется окно.

Нас интересует список обозначенный стрелкой. В его левом столбце находятся номера элементов массива переменной. В правом столбце указаны значения по умолчанию, соответствующие этим элементам.

 

Минимальные и максимальные значения

Для входных и локальных переменных проекта кроме значений по умолчанию задаются максимальные и минимальные значения. Эти свойства переменных не оказывают практически никакого влияния на работу проекта в САПР. Они оставлены для будущего развития программы и позволят создать дополнительный уровень верификации проекта.

 

 

Авионика и Софт

forum.aviosoft.ru

 

сборка: 706