Cтраница 1
Переменные целого типа могут быть описаны так, что будет указан диапазон их допустимых значений для того, чтобы транслятор с языка Паскаль и исполнительная система не допускали присваивания этим переменным недопустимых ( например, слишком больших) значений. Это тоже представляется весьма удобным, хотя естественно, что за такой сервис приходится расплачиваться ростом накладных расходов на этапе выполнения. [1]
В операторе вычислим переменные целого типа воспринимаются как ошибка. Поэтому в тех случаях, когда параметром формулы является целочисленная переменная, необходимо переменной действительного типа предварительно присвоить значение параметра, а уже затем подставить ее в формулу. [2]
В качестве индексов могут быть и переменные целого типа. В этом случае их значения должны быть определены предшествующими операторами или введены данным оператором. Например, при выполнении оператора READ ( 1, 28) IX ( I), J, Y ( J) вводятся четыре числа, причем 1 - е и 3 - е определяют индексы I и J элементов массивов X и Y, а 2 - е и 4 - е - значения этих элементов. Последний пример иллюстрирует также возможность включения в список имен различного типа. [3]
В подпрограмме анализа и обработки ошибок используются переменные целого типа ERR и ERL. При выявлении ошибки переменная ERR принимает значение, равное коду ошибки, а переменная ERL - значение, равное номеру строки, при выполнении операторов которой произошла ошибка. [4]
В основной программе имя функции FACT и результат С описаны как переменные целого типа, так как подпрограмма-функция описана как целая. В основной программе и подпрограмме используется одна и та же переменная N и одни и те же метки 1, 2, 3, 4, что допустимо, так как переменные и метки сохраняют свои значения только внутри той программной единицы, в которой они используются. [5]
А, В - вещественные переменные ( без индексов) или переменные целого типа, а х, у-числа того же типа, что и переменные. [6]
В основной программе имя функции FACT и результат С Описаны как переменные целого типа, так как подпрограмма-функция описана как целая. В основной программе и подпрограмме используется одна и та же переменная N и одни и те же метки 1, 2, 3, 4, что допустимо, так как переменные и метки сохраняют свои значения только внутри той программной единицы, в которой они используются. [7]
Вторая версия функции имеет параметры nStartChar и nEndChar, которые являются ссылками на переменные целого типа, принимающие позиции первого выделенного и первого невыделенного символов соответственно. [8]
При этом допускается в качестве верхних границ изменения индексов использовать наряду с целыми константами также переменные целого типа, которые должны в этом случае включаться в список формальных аргументов. [9]
В описаниях массивов в FUNCTION и SUBROUTINE размерности могут быть указаны в виде арифметических выражений, содержащих переменные целого типа. Эти переменные должны быть указаны либо в COMMON-блоке, либо как формальные параметры. Индекс элемента массива может иметь вид арифметического выражения целого типа. [10]
Параметр ( индекс) цикла I - переменная целого типа параметры rtii, m2, т % - константы или переменные целого типа. Индекс и параметры должны быть всегда положительными. [11]
Описать входящие в некоторую программу идентификаторы: А, В, С, D, F, К, X, Y, Z, L, M, N, если известно, что А, В, F, X относятся к переменным двойной точности; К, Z обозначают строковые переменные; С, D - векторы с компонентами с1 ( с2, сз и dt, d2, ds соответственно, действительного типа; М - массив из 100 символьных строк; X - квадратная матрица из 36 целых значений; L; N - переменные целого типа. [12]
Следующая группа встроенных процедур связана с управлением переменными-локерами. В качестве локеров используются переменные целого типа с разновидностью, достаточной для помещения в переменной адреса. Переменные-локеры не должны использоваться нигде, кроме процедур управления локированием. Сначала переменная должна быть объявлена ( инициализирована) локером. Подпроцесс может захватить локер: тогда другой подпроцесс, встретивший процедуру, предписывающую занять локер, захваченный другим подпроцессом, будет ожидать его освобождения. Переменную-локер можно разрушить, после этого захватить ее будет невозможно. Различаются два вида локеров: простые и вкладывающиеся. Вкладывающийся локер может быть захвачен повторно; простой локер можно захватить только один раз. [13]
В реальных установках обычно используются короткие логические шкалы-длиной 1 - 2 байта. Поэтому для их хранения вполне достаточно места, занимаемого в памяти простыми арифметическими переменными. Для хранения логических шкал здесь используются двухбайтовые переменные целого типа. [14]
Смешивание в одном выражении величин разных типов разрешено, но не рекомендуется, так как это приводит к построению неэффективной объектной программы. При различной длине компонентов длина ( точность) результата определяется максимальной из длин компонентов. Поэтому составляемая программа будет эффективнее, если не перемешиваются переменные разных типов. Так, запись выражения в виде X 5.0 является предпочтительней, чем Х 5, так как в последнем случае транслятор перед вычислением суммы напишет команды, преобразующие целое число 5 в форму вещественного числа 5.0. Это преобразование необходимо, поскольку переменная X-вещественного типа. Напомним, что переменные целого типа начинаются с букв I, J, К, L, M и N. Таким образом, если типы смешанные, то производится преобразование величин. Преобразования существенно замедляют выполнение объектной программы, поэтому не рекомендуется использовать выражения, содержащие величины разных типов. [15]