Спаренные переместимые термы
Спаренные переместимые термы могут присутствовать в абсолютных выражениях, потому что в этом случае уничтожается эффект переместимости, т. е. значение, представляемое спаренными термами, остается постоянным, несмотря на перемещение программы. Пусть, например, в абсолютном выражении А является абсолютным термом, а X и Y — переместимыми термами с одним и тем же признаком переместимости. Если значение А равно 50, значение X равно 25, а значение Y равно 10, то значение выражения равно 65. При перемещении программы на величину 100 значения X и Y станут соответственно равными 125 и ПО, но значение выражения останется равным 65 .
Терм «значение счетчика адреса» может быть спаренным с любым другим переместимым термом из той секции, где используется значение счетчика адреса.
Использование имен из других исходных модулей, т. е. внешних имен, в абсолютных выражениях не допускается, так как каждое внешнее имя относится транслятором к отдельной секции и потому не может быть спаренным ни с каким другим именем.
Значением простого переместимого выражения является значение неспаренного переместимого терма, скорректированное значениями абсолютных и спаренных переместимых термов, входящих в выражение. Например, пусть имеется выражение Y— —X-fY+10. В этом выражении Y и X — переместимые термы с одним и тем же признаком переместимости. Если первоначальное значение Y равно 10,’а значение X равно 5, то значение выражения равно 25. При перемещении программы это значение изменяется. Если значение переместимости равно 100 , значение выражения будет равно 125. Заметим, что значение выражения Y—X, состоящего из спаренных термов, остается равным 5, несмотря на перемещение. Таким образом, новое значение выражения, равное 125, есть новое значение неспаренного переместимого терма Y, скорректированное абсолютными значениями Y—X и 10.