Присваиваемое значение - Большая Энциклопедия Нефти и Газа, статья, страница 3
Скупой платит дважды, тупой платит трижды. Лох платит всю жизнь. Законы Мерфи (еще...)

Присваиваемое значение

Cтраница 3


Эти возможности предоставляют разработчику реализации широкий простор для оптимизации решаемых программой унификации задач, связанных с обновлением различных сред в стеках и организацией доступа к ним. Так, например, одно из решений, которое нужно принять при разработке программы унификации, касается двух возможностей: следует ли обновлять соответствующие ячейки переменных, как только на некотором шаге цикла будет обновлен список в, или же вместо этого следует хранить присваиваемые значения во временных регистрах. В первом случае при неудачном исходе унификации потребуется определить все эти ячейки и вернуть их в прежнее состояние, тогда как при успешном ее завершении ячейки будут находиться именно в том состоянии, которое нам нужно. Принятие такого рода решений еще больше усложняется при выполнении оптимизаций ( таких как ОПВ), направленных на экономию памяти, когда один фрейм записывается на месте другого. В деталях многие подобные соображения описываются в исследовательской литературе.  [31]

32 Усовершенствованный интерфейс первой программы. [32]

Изменение свойства осуществляется путем присваивания ему нового значения. Для этого используется оператор присваивания языка Паскаль, который состоит из двоеточия и знака равенства. Если присваиваемое значение является текстом, как в нашем случае, то оно должно быть обязательно заключено в кавычки.  [33]

Директивы включают или выключают проверку диапазона целочисленных значений и индексов. Если включена директива R, то все индексы массивов и строк и все присваивания скалярным переменным и переменным с ограниченным диапазоном значений проверяются на соответствие значения допустимому диапазону. Если требования диапазона нарушены или присваиваемое значение слишком велико, генерируется исключение ERangeError. Если оно не перехвачено, выполнение программы завершается.  [34]

Однако в Паскале присутствует такое явление, как совместимость типов. В соответствии с ним переменным одного типа можно присваивать значения, относящиеся к другому типу. При этом должно соблюдаться следующее правило: тип присваиваемого значения должен являться подмножеством возможных значений переменной. Например, переменной вещественного типа можно присвоить целочисленное значение, поскольку множество целых чисел является подмножеством вещественных чисел.  [35]

Переменные могут использоваться только после присваивания им значений. В этом операторе слева стоит имя переменной, а справа - присваиваемое значение или выражение.  [36]

Для арифметического присваивания ь список левой части могут входить переменные с различающимися атрибутами ( FIXED, FLOAT, COMPLEX); переменные могут иметь и разную точность. Значения индексов вычисляются до вычисления выражения правой части. Вычисленное значение правой части по очереди слева направо присваивается всем переменным левой части, и при этом выполняются необходимые - преобразования присваиваемого значения.  [37]

Во-вторых, может быть использовано для поиска ошибок. Предположим, требуется выяснить, когда некоторая переменная получает недопустимое значение. Естественно, неоценимой помощью будет знание того, что это просто не может произойти из-за наличия проверок на попадание в соответствующие диапазоны всех присваиваемых значений. Полнота набора осуществляемых проверок позволяет существенно сузить область поиска ошибки в программе. Однако уже незначительное уменьшение числа проводимых проверок ( например, на 2 %) приводит практически полностью к ликвидации названных выше преимуществ.  [38]

Дополнительным достоинством АПЛ является наличие операторов для всех матричных операций, употребляемых в преобразованиях изображения. Для графических целей особенно полезна полная свобода при работе с массивами. Связывание имен переменных и значений в АПЛ откладывается до первого употребления имени в инструкции присваивания. В этот момент происходит определение типа переменной по типу присваиваемого значения.  [39]

Синтаксически-ориентированный компилятор - это такой компилятор, стадия синтаксического анализа которого основывается непосредственно на формальной грамматике. Синтаксический анализатор такого компилятора осуществляет грамматический разбор исходной программы в единицах, соответствующих синтаксическим категориям, имеющимся в данной формальной грамматике. Семантический анализ также проводится в единицах, соответствующих синтаксическим категориям. Например, обычно синтаксический анализатор может распознавать оператор присваивания, строя дерево грамматического разбора для выражения, определяющего присваиваемое значение и переменную, которой оно присваивается. Семантическая программа осуществляет нужный семантический анализ для только что разобранной грамматической конструкции прежде, чем передать управление синтаксическому анализатору для продолжения грамматического разбора. Такая структура не очень отличается от описанной ранее, отличие состоит лишь в использовании формальной грамматики, определяющей организацию синтаксического и семантического анализа.  [40]

При этом никаких проблем, связанных с выполнением операции сложения, не возникает, поскольку все операции, определенные в языке Паскаль для операндов целого типа допускают также использование в качестве своих операндов объектов, имеющих типы, представляющие собой поддиапазоны целого типа. Поэтому результат выполнения функции succ ( i) при i 1999 будет определен, поскольку число 1999 имеет следующее за ним число в базовом целом типе. Конечно, если программист хочет отказаться от преимуществ, предоставляемых при использовании типа поддиапазон ( мы имеем в виду неявную проверку присваиваемых значений при выполнении оператора присваивания), то он может описать управляющую переменную цикла i как имеющую целый тип.  [41]

Этот элемент должен быть либо указателем на атом, либо указателем на другой список. Примитив АТОМ проверяет, является ли он указателем на атом. В оставшейся части строки описывается присваивание, которое будет выполняться только в том случае, если условие удовлетворено. Его первый аргумент - это переменная, значение которой изменяется, а второй аргумент - выражение, которое задает присваиваемое значение. RES - это локальная переменная, значением которой является указатель на список атомов, найденных к данному моменту. Поскольку в результате проверки было установлено, что список X начинается с атома, необходимо добавить данный атом к списку RES. Это делается с помощью примитива CONS. У функции CONS два аргумента: ( CAR X) - атом, который добавляется, и RES - список, в который он включается. CONS добавляет атом к списку RES и возвращает в качестве своего значения указатель на измененный список. SETQ присваивает указателю RES его новое значение.  [42]



Страницы:      1    2    3