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

Длина - операнд

Cтраница 3


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

В командах форматов RR, RX и RS модифицируемый байт содержит регистры, в командах формата SI этот байт задает непосредственный операнд Ь, а в командах формата SS указывает длину операндов.  [32]

В табл. 2 приведены тип и длина значения выражения, полученного в результате выполнения операций сложения, вычитания, умножения, деления и возведения в степень, в зависимости от типа и длины операндов.  [33]

Команда N использует полное слово памяти в качестве маски для того, чтобы изменить значения битов, содержащихся в общем регистре. Длина операндов ограничивается 32 битами. Маска должна находиться в области памяти, расположенной на границе слова, а первый операнд должен - указывать исходное поле в общем регистре непосредственно или символически.  [34]

Адреса самых левых байтов первого и второго операндов находятся в битах 8 - 31 общих регистров, заданных полями R) и J. Длины операндов в байтах содержатся в битах 8 - 31 общих регистров с номерами Ri 1 и R2 I. Биты 0 - 7 регистра R2 1 содержат символ-заполнитель, а содержимое битов 0 - 7 регистров Ri, Ri 1 и R2 игнорируется.  [35]

36 Значения битов формата команды. [36]

Оба опе-рвида определяются в основной памяти как поля переменной длины. Длины операндов определяются полями L команды. Если заданы два поля длины, то код длины ( 0 - 15) определяет длину операндов от 1 до 16 байт. В формате с 8-разрядным полем L длина указывается только для поля первого операнда, который, таким образом, может занимать от 1 до 256 байт.  [37]

Для сравнения целых значений в упакованном десятичном формате имеется одна команда формата SS. Длины операндов LI и L2 могут быть разными, но не могут превосходить 16 каждая.  [38]

Логические операции в PL / I являются обобщением алголь-ных: их операндами могут быть не только элементарные логические значения ТВ и О В, но и их совокупности-битовые строки. Если длины операндов не совпадают, то более короткая строка дополняется справа нулями. Результат логической операции, определяемый побитно, имеет атрибут BIT. Если один из операндов VARYING, то и результат имеет атрибут VARYING.  [39]

При этом длина операндов задается в явном виде в поле длины такой машинной команды.  [40]

Команды формата SS определяют операции типа память - память над полями переменной длины. LZ указывают длины операндов, участвующих в операциях десятичной арифметики. Результат помещается на место первого операнда.  [41]

В таблице использованы следующие сокращения для обозначения типа: I-целый; R-вещественный; С-комплексный. В скобках указана длина операндов и длина значения выражения в байтах.  [42]

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

Работа команды завершается нормально, если результат помещается в поде первого операнда. Очевидна, что если длины операндов одинаковые, то второй операнд без изменения Помещается на место первого операнда. Если длина первого операнда больше длины второго операнда, то в старшие разряды первого операнда засылаются нули. Если второй операнд не помещается в ноле первого операнда, то старшие разряды второго операнда теряются, при этом фиксируется десятичное переполнение и может произойти прерывание программы, если 37 - й разряд Слова состояния программы равен единице, В результате выполнения команды ZAP второй операнд не изменяется. Изменяется только первый операнд.  [44]

Работа команды завершается нормально, если результат помещается в поле первого операнда. Очевидно, что если длины операндов одинаковые, то второй операнд без изменения помещается на место первого операнда. Если длина первого операнда больше длины второго операнда, то в старшие разряды первого операнда засылаются нули. Если второй операнд не помещается в поле первого операнда, то старшие разряды второго операнда теряются, при этом фиксируется десятичное переполнение и может произойти прерывание программы, если 37 - й разряд слова состояния программы равен единице. В результате выполнения команды ZAP второй операнд не изменяется. Изменяется только первый операнд.  [45]



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