Российские универсальные энциклопедии
на главную страницу

   
источник статьи:
Большая Советская
Энциклопедия


Российские универсальные энциклопедии
Брокгауз-Ефрон и Большая Советская Энциклопедия
объединенный словник





Ассоциативное программирование, совокупность способов решения информационно-логических задач, основанных на программной реализации ассоциативных связей между данными, хранящимися в запоминающих устройствах (ЗУ) цифровых вычислительных машин (ЦВМ); раздел программирования для ЦВМ в иностранной литературе известен под названием: списковая обработка данных, узловой способ организации данных, способ цепной адресации, метод управляющих слов. А. п. применяют при логической обработке информации о различных объектах, состав и количество которых меняются в процессе решения, когда заранее невозможно определить объёмы данных различных видов и произвести точное распределение объёма ЗУ машины.

  Для задач, решаемых с помощью А. п., характерно большое число данных и частое применение процедур поиска или классификации объектов по их признакам, включения и исключения объектов из различных г рупп (списков) обрабатываемой информации.

  Списками в А. п. называются любые группы данных, объединённых по каким-либо признакам. В ЗУ ЦВМ организуются либо последовательные списки — путём расположения данных в ячейках с последовательно возрастающими адресами, либо цепные списки — объединением данных при помощи адресатов связи. Адрес связи хранится совместно с членом списка и указывает расположение последующего члена данного списка. При этом члены списков могут располагаться произвольно в ЗУ, а некоторые из них могут указывать ответвления к т. н. подспискам. Совокупность списка с ответвляющимися подсписками называется списковой структурой.

  Основные средства А. п.: использование адресов связи для построения списков различных видов, объединяющих объекты с общими признаками; использование списковых структур для представления иерархических систем организации данных; использование т. н. продвигаемых списков для временного запоминания д анных в определённом порядке и восстановления их в обратном порядке; организация памяти в виде цепного списка ячеек, обеспечивающая гибкость и полноту использования всего объёма памяти и исключающая необходимость в её детальном предварительном распределении.

  Идея цепной адресации списков принадлежит американским учёным Ньюэллу, Саймону и Шоу, ими же подробно разработана методика построения и преобразования цепных списков. Обычно при обработке данных о некоторой совокупности объектов эти данные распределяются между различными списками, причём данные об одном и том же объекте могут находиться одновременно в нескольких списках. Для того чтобы многократно не повторять в разных списках всю информацию о каком-либо объекте, в ЗУ машины выделяется определённая область, в которой последовательными участками, т. н. записями, размещается вся информация об объектах, причём каждому объекту соответствует отдельная позиция (одна запись) со своим адресом. При построении каждого цепного списка программистом заранее в ыделяется одна ячейка, называется фиксатором списка и содержащая адрес первого члена в списке, число членов в списке и другие данные о списке. Достоинство цепного способа организации списков — удобство включения новых и исключения ненужных членов в любом месте списка без перемещения всех остальных членов. Модификациями цепного способа построения списков являются гнездовой и узловой способы.

  При гнездовом способе члены одного списка располагаются подряд в последовательных ячейках ЗУ. При этом в списковых словах указываются только адреса записей объектов, являющихся членами данного списка, и некоторые дополнит. признаки. Так как состав списков переменный, данный вариант реализуется не в виде сплошных последовательностей ячеек, относящихся к одному списку, а в виде гнёзд членов одного списка. Внутри гнезда члены размещаются подряд, а связь между гнёздами осуществляется адресами связи.

  Узловой способ построения списков служит для образования многосписковых структур. В узловых списках от каждого члена списка могут быть сделаны переходы не только к одному следующему члену, но и ко многим другим членам, т. е. каждый член — узел пересечения многих списков. При этом все списковые слова, представляющие один и тот же объект в разных списках, располагаются в ЗУ машины подряд.

  При А. п. удобно пользоваться некоторыми специальными алгоритмическими языками (например, LISP-1,5, IPL-V) либо специальными разделами универсальных алгоритмических языков (таких, как PL-1, АЛГЭМ, АЛГОЛ-КОБОЛ). Иногда А. п. осуществляют в коде конкретной машины, пользуясь некоторыми специальными приёмами.

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

 

  Лит.: Китов А. И., Программирование информационно-логических задач, М., 1967; Newell A., Tonge F.M., An introduction to Information Processing Language V., «Association for computing machinery communications», 1960, v. 3, №4: McCar-t_h у J., Recursive functions of symbolic expressions and their computation by machine, pt I, там же; Воbrow D. G., Raphael B., A comparison of listprocessing computer languages, там же, 1964, v. 7, № 4.

  А. И. Китов.








ЭнциклопедиЯ

© gatchina3000.ru, 2001-2012
при использовании материалов сайта, гиперссылка обязательна