Cтраница 4
Все переменные, элементы массивов, функции и подстроки, которые используются в выражении, должны быть определены. В арифметическом выражении не допускается использование переменных целого типа, определенных значением метки. [46]
При обработке предложения DC транслятор каждое число из списка констант переводит в двоичную систему ( точнее, в шестнадцатеричную), представляет его по указанному формату и машинное представление числа помещает в программу, выравнивая выработанное машинное слово или двойное слово на соответствующую целочисленную границу. Как обычно, если предложение DC снабжено меткой, то в качестве значения метки принимается адрес байта, с которого размещена первая из запасаемых констант. [47]
Дерево для интерпретации оператора перехода с условным именующим выражением.| Дерево для компиляции оператора перехода с условным именующим выражением. [48] |
Однако, как и в случае условного арифметического и условного логического выражения, эта запись неудобна для компиляции. Чтобы получить простой алгоритм трансляции именующих выражений, пригодный для компиляции, целесообразно ввести косвенные переменные, допустив присваивание им значений меток. [49]
Понятие ранга г в данном случае аналогично понятию метки, используемому в § 3.1 при рассмотрении симметрии информации: с увеличением ранга ( значения метки) плотность статей в изданиях ( истинность ЭСЕ) падает; различие в названиях обусловлено использованием ранговой, а не частотной формы распределения Ципфа. Возникшая аналогия между рангом и меткой вызвана, во-первых, установлением нами метки 1 для наиболее истинных ЭСЕ, и, во-вторых, убыванием числа ЭСЕ с ростом значений меток. Здесь г, - минимальный ранг г0 - максимальный, D - общее число изданий, включенных в распределение Бредфорда. [50]
Именно поэтому оператор присваивания второго вида получил название оператора присваивания метки. Заметим, что переменная т, получившая значение метки, не может быть использована, во-первых, как переменная, имеющая численное значение, до тех пор, пока она его не получит с помощью арифметического оператора присваивания или оператора ввода, и, во-вторых, в операторе перехода по предписанию до тех пор, пока она не получит значения метки с помощью оператора присваивания метки. [51]
Метка представляет собой идентификатор или целое число - номер строки программного кода. Метка всегда должна стоять в начале строки и отделяется от первого оператора строки двоеточием. Значение метки должно быть уникально внутри модуля. [52]
Граф из двух связных компонент. [53] |
Любой другой вершине Z, лежащей на кратчайшем пути, ставится в соответствие вторичная метка, являющаяся суммой вторичных меток всех вершин, достичь которых можно из Z за один шаг при движении по стрелке. На рис. 2.6, б показан подграф, представляющий собой все кратчайшие пути графа, изображенного на рис. 2.6 а, причем вершины помечены вторичными метками. Вычисленное для X значение метки 3 показывает, что между X и У существует три различных кратчайших пути. [54]