Файл: Белоногов Г.Г. Автоматизированные информационные системы.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 11.04.2024

Просмотров: 151

Скачиваний: 3

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

лишь в том случае, если поиск ведется в оперативной

памяти).

Часть клеток матрицы информационной таблицы обычно бывает пустой. Это может происходить по двум причинам. Во-первых, объект и класс характеристик, указанный на входе таблицы, могут быть несовместимы. Это означает, что данному объекту несвойственна ха­ рактеристика, сформулированная в наименовании клас­ са. Во-вторых, могут отсутствовать сведения по ряду характеристик. Поэтому при записи информационных таблиц в памяти машины целесообразно применять спе­ циальные меры по экономии места. Одной из таких мер может быть введение логической шкалы перед каждой строкой или перед каждым столбцом матрицы (в зависи­ мости от того, в каком порядке проводилась ее линейная развертка). Логическая шкала содержит столько двоич­ ных знаков, сколько клеток в матрице информационной таблицы. Символом 0 в шкале обозначаются клетки ин­ формационной таблицы, которые соответствуют несовме­ стимым парам кодов объектов и характеристик. Осталь­ ные клетки матрицы обозначаются символом 1. После логической шкалы записывается массив отсылочных адресов к значениям характеристик, который содержит

столько позиций, сколько единиц имеется в логической шкале. Если сведения по какому-либо значению характе­ ристики отсутствуют, то вместо отсылочного адреса про­ ставляется нулевой код. В дальнейшем при пополнении сведений об объектах этот код может быть заменен на отсылочный адрес к значению характеристики. Буквенные коды значений характеристик, входящих в состав строки или столбца информационной таблицы, записываются в порядке их поступления. В начале каждого буквенного кода указывается количество ячеек памяти, занимаемое значением характеристики.

Порядок записи в памяти ЭВМ одной строки значе­ ний характеристик иллюстрирует табл. 12.3. В разделе а) таблицы приведены условные обозначения, в разделе

б ) — исходная

структура

строки,

а в разделах в), г),

д ) — основные

компоненты

строки

значений характери­

стик при ее записи

в

памяти ЭВМ (логическая

шкала,

отсылочные адреса

к

значениям

характеристик

и б у к ­

венные коды значений характеристик). В разделе б) на­ ряду с буквенными кодами значений характеристик (строки, обозначенные буквой z) для наглядности указа­

220


ны также номера столбцов у и количество ячеек п, зани­ маемое каждым значением характеристики. В разделе г) записаны отсылочные адреса к значениям характери­ стик, а после каждого адреса в скобках указан порядко­ вый номер символа 1 в логической шкале, которому этот адрес соответствует (в действительности порядковые но­ мера отсылочных адресов в памяти ЭВМ нигде не фик-

 

 

 

 

 

 

 

 

Т а б

и ц а

12.3

 

П р и м е р

записи в

пам ят и

машины

ст ро ка

 

ч ен ій

 

 

зн ал

 

2а)

Условные

 

х а ракт е рист ик

 

 

 

 

обозначения:

 

 

 

 

 

 

п — номера столбцов матрицы информационной таблицы;

 

у

 

 

 

 

 

характеристик;

 

 

 

— буквенные коды значений

 

 

ячей­

ках) ; — длина

буквенных

кодов

значений

характеристик (в

н — признак

несовместимости

 

объекта

и характеристики;

 

«—» — сведения

по характеристике отсутствуют.

объекту х;

б)

Исходная

структура

строки,

соответствующая

У

1

 

2

3

4

 

н

6

 

7

8

п

 

Zi,2

 

^г.з

 

H

H

Z

1

 

2

 

 

 

 

4

 

 

 

 

 

 

12

 

13

15

io

Z

9

 

10

11

 

14

У

 

 

 

 

^1,13

 

 

zi, 16

п

н

 

Н

н

12

 

Zi,l5

 

17

 

18

 

3

 

1

22

 

1

2

УZ

 

19

20

 

21

23

24

п

Zt.l7

 

н

2г,19

Н

 

^І,21

н

H

У

1

 

26

7

28

 

2

30

•31

32-

Z

25

 

27

 

29

п

 

н

н

 

Z t ,30

z

i , 31

У

33

 

34'

 

/

 

. . .

12

k ^3

 

 

 

 

k— 2

 

\

k

 

Н

 

 

 

 

 

 

 

Z

П ы

 

 

 

zi,h - t

^ i,h ~ 1

2 .

 

 

Ziі

 

 

п

 

 

2

 

1

 

 

1

 

2

221


в) Логическая шкала строки

11

1 1 0 1 0 0 0 0 0 1 1 1 1 1 1 0 1 0

 

 

 

 

1 0 1 0 1 1 0 1 1 1 1 1 0 1 . . .

1 . .

 

 

 

 

г) Отсылочные

адреса

 

 

к

значениям характеристик

 

 

 

 

 

 

0001 ( 1)

 

0002(2)

0000(3)

 

 

 

 

 

 

 

0000 (4)

 

0004(5)

0008(6)

 

 

 

 

 

 

 

ООП (7)

 

0000(8)

0012(9)

 

 

 

 

 

 

 

0013(10)

0015(11)

0016(12)

 

 

 

 

 

 

 

0023(13)

0000(14)

0000(15)

 

 

 

 

 

д) Буквенные

0000(16)

0000(17)

0025(18)

 

 

 

 

 

коды значений характеристик

 

 

 

 

 

Адрес ячейки

Значение характерис­

Адрес

Значение характери­

 

тики

 

ячейки

стики

 

 

 

0001

 

 

 

 

 

 

 

0015

 

 

 

 

19

0002

 

2і2

 

0016

Zz i

i, ,

0003

 

 

0017

0004

 

 

 

0018

 

 

 

 

, 9

0005

 

 

 

 

ä

 

 

0019

24,19

0006 .

 

Z

i

 

 

 

0020

 

 

 

 

 

0007

 

Z

i

s

 

 

0021

 

 

 

 

 

0008

 

Z

i

 

,

1 2

 

0022

 

 

 

 

 

0009

 

 

 

 

 

 

 

0023

 

 

 

 

 

0010

 

 

 

 

 

13

 

. 0024

Z

i

 

, 2

1

ООП

 

Z

t

,

 

 

0025

 

 

 

 

 

0012

 

Z

i

,

i b

 

0026

Z

i

, /

»

0013

 

 

 

 

 

 

 

0027

z

 

i

,

30

0014

 

2

l

,

IG

 

 

 

сируются). В одной ячейке размещается несколько от­ сылочных адресов. Массив буквенных кодов значений характеристик условно изображен в разделе д). Если какое-либо значение характеристики занимает более од­ ной ячейки памяти, то символ г повторяется несколько

раз (см. например, значения характеристик Zi,2 и 2г-,6 в разделах б) и д) табл. 12.3).

Значения характеристик в матрице информационной таблицы ищутся в следующем порядке. Сначала по но­ меру строки таблицы выбирается информация, соответ­ ствующая этой строке (логическая шкала, отсылочные адреса к значениям характеристик и массив буквенных кодов значений характеристик). Затем по номеру столб­ ца находится соответствующий разряд логической шка­ лы и его содержимое проверяется на наличие призна-

2 2 2

*


ка 0. Если такой признак имеется, то поиск прекра­ щается, так как объект и характеристика несовместимы. Если его нет, то суммируются единицы логической шка­ лы от ее начала до проверяемого разряда включительно. Найденная сумма далее интерпретируется как номер позиции в массиве адресов отсылки к значениям харак­ теристик и по ней выбирается отсылочный адрес. Если отсылочный адрес равен нулю, то процесс поиска пре­ кращается из-за отсутствия сведений по искомой харак­ теристике. Если не равен нулю, то он используется для обращения к буквенному коду искомого значения харак­ теристики.

Логическая шкала размещается в нескольких ячей­ ках памяти. Для ускорения процесса поиска в каждой ячейке отводится место для записи числа единиц во всех предшествующих ячейках шкалы и пересчет единиц ве­ дется только в пределах одной последней ячейки.

Рассмотренный способ представления матриц инфор­ мационных таблиц с помощью логических шкал и отсы­

лочных адресов к значениям

характеристик является

по существу модификацией

гнездового ассоциативно­

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

ния адресов

записи

необходимых

адресных отсылок

к значениям

характеристик.

информационных

Гнездовой

способ

представления

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

нием.

Тогда информационная таблица

может

быть

представлена в виде массива элементарных

сооб­

щений,

и добавление или изъятие строки

или столбца

сведется к добавлению или изъятию группы элементар­ ных сообщений. Более того, можно забыть о «табличном происхождении» массива элементарных сообщений и

223