Cтраница 2
Общая область памяти, которая необходима для операции, равна 5 словам. В команде STM / записывается только символический адрес самого левого байта памяти STORE 1, начиная с которого располагаются пересылаемые данные. [16]
Входящее в состав программного обеспечения банка данных программное обеспечение организации и ведения общесистемных массивов связи дает возможность загружать в базу данных информацию подсистем и получать информацию в удобном для обработки виде. С помощью системы управления базами данных, языков управления и описания данных осуществляется пересылка данных из базы данных одной подсистемы в другую без перестройки программ организации пересылаемых данных. [17]
Оператор STRING является, по существу, оператором MOVE, в котором содержимое пересылаемого-идентификатора передается в принимающий-идентификатор, как при буквенно-цифровом перемещении. При этом имеет место политерная передача без редактирования. Значения пересылаемых данных никогда не изменяются. В принимающем данном изменяются значения лишь тех позиций литер, в которые помещаются пересылаемые литеры. [18]
Для минимизации времени ответа на запрос необходим предварительный анализ потоков запросов. При обработке потоков запросов время ответа на отдельный запрос складывается из времени его исполнения, времени ожидания в очереди на обработку и времени пересылки из одной станции баз данных в другую. В этой связи при минимизации времени ответа на запрос необходимо учитывать рабочую нагрузку станций, участвующих в обработке запросов, и объемы пересылаемых данных, которыми обмениваются станции в процессе выполнения запроса. [19]
Как правило, байтовая команда не затрагивает содержимое другого байта того слова, половина которого является ее приемником. Единственным исключением является команда MOVB с регистром в качестве приемника. Не забывайте, что байтовая команда может адресоваться только к младшему байту регистра. Она пересылает данные в младший байт регистра и одновременно устанавливает каждый разряд старшего байта равным значению седьмого разряда. То есть при занесении в регистр команда MOVB распространяет знаковый разряд младшего байта на все слово. Если пересылаемые данные рассматривались как целые числа со знаком, то содержимое регистра будет правильным при обращениях к нему и как к байту, и как к слову. [20]
Рассмотренные шесть категорий ( буквенная, буквенно-цифровая, буквенно-цифровая редактируемая, числовая редактируемая, числовая целая и числовая нецелая) допускают не только простые перемещения числового в числовое или нечислового в нечисловое. Например, числовое целое можно поместить в числовое редактируемое, превратив его тем самым в строку литер, удобную для выдачи. При этом значение 890 могло бы стать, например, таким: 890.00. Однако обратное преобразование невозможно, так как в КОБОЛе предусмотрена только вставка и нет удаления специальных литер. Многие комбинации перемещений не допускаются. Необходимость помнить, какие из комбинаций допустимы, а какие нет, часто вызывает у программиста головную боль. На рис. 3.4 представлена таблица допустимых в КОБОЛе перемещений. Пустые позиции в таблице означают, что соответствующее перемещение запрещено. Позиции только цифры и только буквы означают, что соответствующее перемещение допустимо только для пересылаемых данных, состоящих именно из этих литер. Трудно дать какие-либо простые правила для запоминания допустимых в КОБОЛе перемещений, но во всех компиляторах предусматриваются встроенные средства контроля для обнаружения запрещенных перемещений и предостережения программиста от попыток использовать недопустимые перемещения данных. [21]