ГЛАВА 3. КОЛИЧЕСТВЕННАЯ ОЦЕНКА ИНФОРМАЦИИ 6 глава


Пример 5.2.Выразим число 1010, записанное в коде Грея, в обычном двоичном коде.

Первую единицу слева переписываем. Следующая цифра будет единицей, так как в этом разряде кода Грея стоит нуль и впереди только одна единица. Далее необходимо записать нуль, так как в следующем разряде исходного числа стоит единица и впереди снова имеется только одна единица. Поскольку перед последней цифрой числа в коде Грея стоят две единицы, то она должна остаться неизменной, т. е. нулем. Таким образом, числу 1010 в коде Грея соответствует обычное двоичное число 1100.

 

§ 5.2. ТЕХНИЧЕСКИЕ СРЕДСТВА ПРЕДСТАВЛЕНИЯ ИНФОРМАЦИИ В ЦИФРОВОЙ ФОРМЕ

 

Разновидности преобразователей. Устройства, позволяющие заменять непрерывную последовательность значений аналоговой величины конечным числом дискретных значений и представлять их в заданном коде, получили название аналого-кодовых преобразователей. Кодовые эквиваленты аналоговой величины могут быть представлены комбинациями состояний оптических, электромеханических, электронных и других элементов, а также параллельными или последовательными во времени комбинациями электрических импульсов.

В случае необходимости обработки информации посредством цифровых вычислительных машин, как правило, используются представления в двоичном коде.

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

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

В принципе возможно непосредственное преобразование различных физических величин в цифровую форму. Такие преобразователи называют кодовыми датчиками. Примером могут служить цифровые преобразователи угла поворота вала (фазовые преобразователи угла).

Однако в настоящее время более рационально преобразовывать различные по физической природе сигналы в электрические, а затем представлять их в цифровой форме посредством преобразователей напряжение — код. Под термином «аналого-цифровой преобразователь» (АЦП) в первую очередь подразумевают именно такой преобразователь (напряжение — код).

Кодовые датчики геометрических координат. В таких датчиках в процессе преобразования определяется, какому месту на заранее заданном геометрическом пространственном рисунке (кодирующей маске) соответствует данный входной сигнал.

Кодирующую маску выполняют в виде прямоугольной пластины или диска. В последнем случае знаки разрядов нанесены на концентрические дорожки, каждая из которых соответствует определенному разряду двоичного числа. Внешняя дорожка диска соответствует низшему разряду (рис. 5.2). Итак, каждому дискретному значению угла ставится в соответствие вполне определенная неповторяющаяся комбинация сегментов двух типов, соответствующих 1 и 0.

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

Для считывания с каждого из разрядов установлены чувствительные элементы: щетки, фотоэлементы, индуктивные катушки и т. д.

При опросе чувствительных элементов получаем комбинацию электрических сигналов, представляющую в выбранном коде число, соответствующее данному углу поворота. К сожалению, при использовании масок с обычным двоичным кодом в местах, где одновременно изменяется состояние нескольких чувствительных элементов, при считывании могут возникать значительные погрешности. Например, если чувствительные элементы располагаются на границе между числом 7 (0111) и 8 (1000), то преобразователь может выдать на выходе любое число от 0 до 15. Это, конечно, недопустимо.

Указанный недостаток может быть устранен как за счет увеличения числа чувствительных элементов (метод сдвоенных щеток, метод Баркера [26] ), так и путем использования масок с кодами, у которых при последовательном переходе от числа к числу изменяется только один разряд. Наиболее часто применяется код Грея. Кодирующая маска с кодом Грея изображена на рис. 5.3.

Нетрудно убедиться, что каждое последующее число отличается от предыдущего только в одном разряде, поэтому погрешность при считывании не может превосходить единицы младшего разряда независимо от того, в каком разряде имела место неопределенность.

Использование этого способа приводит к необходимости иметь дополнительный преобразователь для представления полученных в коде Грея чисел в обыкновенном двоичном коде.

Кодовый диск, чувствительные элементы и преобразователь кода конструктивно объединены в одном корпусе. Датчики отличаются высоким быстродействием и большой точностью. У лучших двухотсчетных фазовых преобразователей угла погрешность составляет доли секунды.

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

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

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

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

При заданном отнесенном к шкале шаге квантования преобразователя δ (%), число импульсов mх, представляющих одно значение кодируемой величины uх, может меняться в пределах

Если частота счетчика предельная fсч mах, то время, требующееся на один цикл преобразования, равно

где Δ — время считывания цифрового эквивалента и сброса счетчика.

Отметим, что для преобразователя последовательного счета со следящим принципом измерения такое время потребуется только в случае резкого изменения кодируемой величины на полный диапазон преобразования.

Современные серии элементов допускают построение счетчиков с максимальной тактовой частотой по счетному входу до 50 МГц. Параллельное считывание и сброс счетчика можно выполнить за время, значительно меньшее 1 мкс. Следовательно, при относительном шаге квантования 0,1 % преобразователи последовательного счета в состоянии обеспечить число преобразований порядка 5·104 в секунду. Точность преобразователя зависит от принципа работы его измерительной части.

Аналого-цифровые преобразователи последовательного счета выполняют на основе прямого, развертывающего или следящего измерительного преобразования.

Преобразователи с прямым измерительным преобразованием. Функциональная схема такого преобразователя приведена на рис. 5.4. Частота следования выходных импульсов управляемого генератора Ρ (uх→fx) линейно изменяется в зависимости от значения преобразуемого напряжения uх.

В каждом цикле преобразования сигнал с генератора эталонных временных интервалов (ГЭВИ) на определенное время Т открывает схему совпадения Ит, пропуская импульсы в счетчик Сч. Количество импульсов, зафиксированное счетчиком за время Т, пропорционально кодируемой величине uх. По окончании сигнала, воздействующего на схему Ит, ГЭВИ выдает импульсы на считывание цифрового эквивалента Ζ и установку всех разрядов счетчика в исходное состояние (сброс). Далее процесс повторяется.

Основная трудность при реализации такого преобразователя заключается в создании генератора Ρ с достаточно линейной зависимостью частоты следования выходных импульсов от преобразуемого напряжения. Трудно добиться и его стабильности, особенно при изменении напряжения питания и температуры. Тем не менее в последнее время разработан ряд высокостабильных преобразователей напряжение — частота, позволивших снизить погрешность до 0,01 %.

Преобразователи с развертывающим измерительным преобразованием. Функциональная схема преобразователя изображена на рис. 5.5.

В начале каждого цикла преобразования запускается генератор ГКН линейно изменяющегося компенсирующего напряжения uк. Одновременно сигнал с органа сравнения ОС открывает схему совпадения И, и импульсы высокостабильного генератора ГИ начинают поступать в счетчик Сч. В момент компенсации, когда преобразуемое напряжение uх сравнивается с компенсирующим напряжением uк, состояние органа сравнения изменяется и доступ импульсов в счетчик прекращается. С выхода счетчика снимается цифровой эквивалент Ζ, соответствующий uх.

Число импульсов, поступивших в счетчик, пропорционально преобразуемому напряжению uх. Временная диаграмма работы преобразователя приведена на рис. 5.6.

По окончании цикла развертки компенсирующего напряжения с блока синхронизации БС поступают импульсы на считывание цифрового эквивалента и сброс счетчика. Далее процесс повторяется.

Блок синхронизации позволяет «привязать» момент начала развертки компенсирующего напряжения к одному из импульсов ГИ, что повышает точность преобразования (рис. 5.7, а). Действительно (рис. 5.7,6), при отсутствии синхронизации погрешность дискретизации может оказаться вдвое больше:

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

Точность преобразования определяется характеристикой органа сравнения и линейностью компенсирующего напряжения. Обычно она достигает 0,1 %.

Более точными (до 0,005%) являются аналогичные преобразователи со ступенчато-линейным компенсирующим напряжением (рис. 5.8). Как правило, оно получается в результате суммирования коммутируемых по двоичному закону эталонных напряжений (или токов), амплитуды которых относятся друг к другу как целочисленные степени двух (1:2:4:8 и т. д.). Управление суммированием осуществляется импульсами, поступающими с двоичного счетчика, причем каждый раз, когда содержимое счетчика увеличивается на единицу, выходное напряжение возрастает на одну ступеньку [26].

Структурная схема преобразователя со ступенчато-линейным изменением компенсирующего напряжения показана на рис. 5.9. Импульсы от генератора ГИ поступают на триггеры TГ1 — TГ4, состояние которых определяет напряжение uк на выходе источника ступенчатого компенсирующего напряжения ИСКН. Кодируемое напряжение uх сравнивается со ступенчато-линейным uк. В каждый момент времени на счетчике в двоичном коде фиксируется число ступеней компенсирующего на пряжения, т. е. цифровой эквивалент. В момент компенсации, когда ιιx=ιικ, двоичное число на счетчике· является цифровым эквивалентом и для uх.

Равенство напряжений uх и uк отмечается органом сравнения ОС, который и посылает импульс на считывание цифрового эквивалента Ζ со счетчика. Временные диаграммы работы преобразователя представлены на рис. 5.8, где показаны напряжения в точках аг схемы рис. 5.9: интервал времени, пропорциональный uх, обозначен tx.

Преобразователи со следящим измерительным преобразованием. Преобразователь является цифровой следящей системой (рис. 5.10), в которой входное напряжение uх сравнивается органом сравнения ОС с напряжением uк, поступающим с источника линейно-ступенчатого компенсирующего напряжения ИСКН.

В зависимости от разности напряжений uх — uк происходит такое изменение кода в схеме управления источником, которое приводит к равенству этих напряжений в пределах заданной точности.

Орган сравнения воздействует на две схемы совпадения И, через которые импульсы генератора G поступают на входы реверсивного счетчика СТ: если , то

импульсы идут по каналу «+1», а если , то по каналу «-1». При равенстве напряжений обе схемы И закрыты и импульсы на счетчик не поступают.

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

Отработка цифровых эквивалентов некоторой изменяющейся аналоговой величины uх преобразователем со следящим уравновешиванием с момента его включения показана на рис. 5.11. Внизу записаны двоичные эквиваленты значений uх на каждом такте. В схеме они представлены состоянием триггеров двоичного реверсивного счетчика СТ.

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

Погрешность, как и в предыдущих схемах, зависит от стабильности органа сравнения и числа разрядов реверсивного двоичного счетчика. У лучших образцов она составляет 0,01—0,005 %.

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

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

Максимальное количество информации, которое можно получить в результате одной операции сравнения, равно 1 дв. ед. Для достижения этого значения каждую операцию сравнения необходимо проводить на таком уровне, чтобы вероятности обнаружения преобразуемой величины ниже и выше этого уровня были равны. Если вероятности всех значений преобразуемой величины одинаковы, то первую операцию сравнения при двоичном кодировании нужно провести на уровне ux max/2. Цифровые эквиваленты напряжения uх ниже этого уровня будут иметь в старшем разряде 0, а выше уровня — 1.

Следовательно, в результате операции сравнения будет определено значение старшего разряда цифрового эквивалента (0 или 1). Аналогично выбирают уровни сравнения для определения значений остальных разрядов. Каждый из них будет в 2 раза меньше предыдущего. Определение цифрового эквивалента производится поразрядно. При заданном относительном шаге квантования δx (%) число разрядов находим из соотношения

Значение i-го разряда определяют после проведения операции сравнения при поступлении с распределителя (i+1)-го импульса. На цикл преобразования, следовательно, требуется не менее (l+1) импульсов. Если используемые распределители работают по принципу пересчетных схем, то их предельную частоту снова обозначим через fсч mах. Тогда для аналого-цифровых преобразователей поразрядного уравновешивания максимально возможное число преобразований в секунду можно оценить по формуле

Приняв, как и ранее, δx = 0,1% и fсч mах = 5∙107, максимальную частоту преобразователя получим равной 4,5·106 Гц, что почти на два порядка превышает максимальную частоту преобразователей с линейно-ступенчатым компенсирующим напряжением.

Метод преобразования с поразрядным уравновешиванием может использоваться для получения цифровых эквивалентов uх в любой системе счисления. В частности, в цифровых измерительных приборах широко применяется поразрядная отработка цифрового эквивалента uх в десятичном и двоично-десятичном коде. Точность лучших преобразователей этого типа того же порядка, что и у преобразователей с линейно-ступенчатым уравновешиванием, т. е. до 0,005%. Конструктивно они несколько более сложны, но в ряде случаев незаменимы с точки зрения совмещения требований высокого быстродействия и высокой точности.

Типовая функциональная схема преобразователя поразрядного уравновешивания приведена на рис. 5.12. Уровни сравнения устанавливаются последовательным переключением триггеров двоичных разрядов, начиная со старшего Тгп. Эталонное напряжение каждого уровня создается путем суммирования токов, пропорциональных весам разрядов, на резисторе r(r«R). Напряжение питания поступает от источника Ε.

Первый импульс с кольцевого распределителя КР переводит триггер Тгп в состояние «1», а остальные через схемы ИЛИ устанавливает в «0». В замкнутом состоянии оказывается только ключ Кп. При этом компенсирующее напряжение ик1 пропорционально весу старшего разряда (uк1 = uп). Если uх<uк1, то в цифровом эквиваленте uх на месте старшего разряда должен стоять 0. В этом случае сигнал с органа сравнения ОС открывает элемент И и при поступлении второго импульса с распределителя триггер Тгп сбрасывается в 0. Тем же импульсом в состояние «1» переводится триггер Тгп-1. Уровень компенсирующего напряжения снижается вдвое (uк2 = uп-1= uп/2)· Если теперь их>uк2, то на месте этого разряда в цифровом эквиваленте uх должна стоять 1. Знак выходного напряжения органа сравнения изменяется на противоположный, и элементы И запираются. Поэтому третий импульс, переключающий триггер Тгп-2 на триггер Тгп-1, не воздействует и последний остается в состоянии «T». Компенсирующее напряжение возрастает на uп-2= uп2-2:

Если uх<uк3, то Тгп-2 очередным импульсом сбрасывается в состояние «0», если uх>uк3, то Tгп-2 остается в состоянии «1». Аналогично отрабатываются значения всех остальных разрядов, причем значение младшего разряда определяется при поступлении с распределителя (n+1)-ro импульса.

Цифровой эквивалент uх снимается в конце цикла преобразования. На рис. 5.13 показана последовательность определения двоичного цифрового эквивалента при поразрядном уравновешивании напряжения uх = 26 В.

Компенсирующие напряжения разрядов, вошедших в состав uх, изображены сплошными линиями и отмечены внизу знаком 1. Компенсирующие напряжения разрядов, не вошедших в состав uх, изображены пунктиром и отмечены внизу знаком 0. В результате уравновешивания получен двоичный эквивалент числа 26—011010.

Аналого-цифровые преобразователи считывания. АЦП считывания называют также преобразователями параллельного сравнения. В этих преобразователях для каждого уровня квантования предусматривается свое опорное напряжение uοi и свой орган сравнения ОСi (рис. 5.14). Опорные напряжения снимаются с последовательного резисторного делителя. Входное напряжение uх одновременно подается на все схемы сравнения. Часть схем, для которых выполняется условие ux>uoi, срабатывает, и мы получаем цифровой эквивалент uх в унитарном коде (с основанием m=1). Преобразование этого кода в двоичный осуществляется специальной логической схемой, которую называют дешифратором или кодирующей логикой.

Такая простая структура дает возможность обеспечить чрезвычайно высокое быстродействие. Преобразование выполняется за один цикл, длительность которого при современной технологии изготовления интегральных схем может быть сделана менее 50 нc. Таким образом, АЦП считывания являются самыми быстродействующими из известных.

Основным недостатком рассматриваемых преобразователей является их невысокая разрядность (6—8 разрядов). С каждым дополнительным разрядом сложность преобразователя практически удваивается, что ведет к увеличению потребляемой мощности и стоимости. Поэтому при большем числе разрядов используются преобразователи, у которых считывание осуществляется в несколько тактов, причем на каждом такте определяется несколько разрядов.

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

 

§ 5.3. КОДИРОВАНИЕ КАК СРЕДСТВО КРИПТОГРАФИЧЕСКОГО ЗАКРЫТИЯ ИНФОРМАЦИИ

 

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

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

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

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

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

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

Известно значительное число различных методов криптографического закрытия информации. Рассмотрим некоторые из них в порядке возрастания сложности и надежности закрытия.

Шифр простой подстановки. Буквы кодируемого сообщения прямо заменяются другими буквами того же или другого алфавита. Если сообщения составляются из k различных букв, то существует k! способов выражения сообщения k буквами этого алфавита, т. е. существует k! различных ключей.

Пример 5.3. Зашифруем сообщение CAREFULLY, используя в качестве ключа для шифрования английского текста буквы английского алфавита в соответствии с табл. 5.3.

Таблица 5.3

Подставляя новые буквы, получаем криптограмму KUCFHERRP.

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

Шифр Вижинера. Этот шифр является одним из наиболее распространенных. Степень надежности закрытия информации повышается за счет того, что метод шифрования предусматривает нарушение статистических закономерностей появления букв алфавита.

Каждая буква алфавита нумеруется. Например, буквам английского алфавита ставятся в соответствие цифры от О (А = 0) до 25 (Z = 25):

Ключ представляет собой некоторое слово или просто последовательность букв, которая подписывается с повторением под сообщением. Цифровой эквивалент каждой буквы криптограммы определяется в результате сложения с приведением по модулю 26 цифровых эквивалентов буквы сообщения и лежащей под ней буквы ключа.

Пример 5.4.Зашифруем сообщение CAREFULLY кодом Вижинера с ключом PIES.

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

Складывая верхние и нижние цифровые эквиваленты с приведением по модулю 26, получим следующую последовательность чисел: 17 8 21 22 20 2 15 3 13, что соответствует криптограмме R1VWUCPDN.

Шифр Вижинера обладает достаточно высокой надежностью закрытия только при использовании весьма длинных ключей, что сопряжено с определенными трудностями.

Шифр Вижинера с ключом, состоящим из одной буквы, известен как шифр Цезаря, а с неограниченным неповторяющимся ключом как шифр Вернама.

Шифрование гаммированием. В процессе шифрования цифровые эквиваленты знаков криптографически закрываемого сообщения складываются с псевдослучайной последовательностью чисел, именуемой гаммой, и приводятся по модулю k, где k — объем алфавита знаков. Таким образом, псевдослучайная последовательность выполняет здесь роль ключа.



Дата добавления: 2016-10-18; просмотров: 2224;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.029 сек.