Свёрточный код

Поделись знанием:
(перенаправлено с «Свёрточные коды»)
Перейти к: навигация, поиск

Свёрточный код — это корректирующий ошибки код, в котором

(a) на каждом такте работы кодера <math>k</math> символов входной полубесконечной последовательности преобразуются в <math>n > k</math> символов выходной, и

(b) в преобразовании также участвуют <math>m</math> предыдущих символов;

(c) выполняется свойство линейности (если двум кодируемым последовательностям <math>\mathbf x</math> и <math>\mathbf y</math> соответствуют кодовые последовательности <math>\mathbf X</math> и <math>\mathbf Y</math>, то кодируемой последовательности <math>a\mathbf x+b\mathbf y</math> соответствует <math>a\mathbf X+b\mathbf Y</math>).

Свёрточный код является частным случаем древовидных и решетчатых кодов.





История возникновения

В 1955 году Л. М. Финком, который в то время являлся заведующим кафедрой Ленинградской академии связи, был предложен первый рекуррентный код.

В 1959 году западный специалист Хегельбергер (Hegelbeger), не имевший представления о работе советских ученых в области кодирования, «вновь открыл» рекуррентный код и назвал его своим именем.

Сам Финк в своей монографии [www.krelib.com/monografija/3084 «Теория передачи дискретных сообщений»] писал: «В этом коде последовательность кодовых символов не разделяется на отдельные кодовые комбинации. В поток информационных символов включаются корректирующие символы так, что между каждыми двумя информационными символами помещается один корректирующий. Обозначая информационные символы через <math>a_i</math>, а корректирущие через <math>b_i</math> получаем такую последовательность символов:

<math>a_1 b_1 \, a_2 b_2 \, a_3 b_3 \, \dots \, a_k b_k \, a_{k+1} b_{k+1} \, \dots</math>

Информационные символы определяются переданным сообщением, а корректирующие формируются по следующему правилу:

<math>b_i = \left(a_{k - s} + a_{k + s + 1}\right) \mod 2 </math> (1.1)

где <math>s</math> — произвольное целое число, называемое шагом кода (<math>s = 0, 1, 2 \dots</math>). Очевидно, что при ошибочном приеме некоторого корректирующего символа bi соотношение (1.1) в принятой последовательности не будет выполнено для <math>i = k</math>. В случае же ошибочного приема информационного символа <math>a_i</math> соотношение (1.1) не будет выполняться при двух значениях <math>k_i</math>, а именно при <math>k_1 = i - s - 1</math> и при <math>k_2 = i + s</math>. Отсюда легко вывести правило исправления ошибок при декодировании. В принятой кодовой последовательности для каждого <math>b_k</math> проверяется соотношение (1.1). Если оно не выполняется при двух значениях <math>k</math> (<math>k = k_1</math> и <math>k = k_2</math>), и при этом

<math>k_2 - k_1 = 2s + 1</math> (1.2)

то информационный элемент <math>a_{k_1 + s + 1}</math> должен быть заменен на противоположный.

Очевидно, что избыточность кода равна <math>1/2</math>. Он позволяет исправлять все ошибочно принятые символы, кроме некоторых неудачных сочетаний. Так, если <math>s = 0</math>, он обеспечивает правильное декодирование, когда между двумя ошибочно принятыми символами имеется не менее трех (а в некоторых случаях двух) правильно принятых символов (при этом учитываются как информационные, так и проверочные символы).»

Общая схема нерекурсивного кодера

Схема кодера нерекурсивного свёрточного кода представлена на Рис.1. Он состоит из <math>k</math> <math>q</math>-ичных регистров сдвига с длинами <math>m_1. m_2,...,m_k</math>. Некоторые (может и все) входы регистров и выходы некоторых ячеек памяти соединены с несколькими <math>n</math> сумматорами по модулю <math>q</math>. Число сумматоров больше числа регистров сдвига: <math>n>k</math>

На каждом такте работы кодера на его вход поступает <math>k</math> информационных символов, они вместе с хранящимися в регистрах сдвига символами поступают на входы тех сумматоров, с которыми имеется связь. Результатом сложения является <math>n</math> кодовых символов, готовых к передаче. Затем в каждом регистре сдвига происходит сдвиг: все ячейки сдвигаются вправо на один разряд, при этом крайние левые ячейки заполняются входными символами, а крайние правые стираются. После этого такт повторяется. Начальное состояние регистров заранее известно (обычно нулевое).

  • Суммарная длина <math>m = \sum_{i=1}^k m_i</math> всех регистров сдвига называется кодовым ограничением, а максимальная длина <math>w = \max\{m_1,...,m_k\}</math> — задержкой.
  • Значения регистров сдвига в каждый момент времени называется состоянием кодера.

Двоичные свёрточные кодеры

Для наглядности представления будем описывать свёрточное кодирование по действию соответствующего кодирующего устройства.

Свёрточный кодер — это устройство, принимающее на каждом такте работы в общем случае k входных информационных символов, и выдающее на выход каждого такта n выходных символов. Число <math>R = \frac{k}{n}</math> называют относительной скоростью кода. k — число информационных символов, n — число передаваемых в канал связи символов за один такт поступления на кодер информационного символа. Выходные символы рассматриваемого такта зависят от m информационных символов, поступающих на этом и предыдущих тактах, то есть выходные символы свёрточного кода однозначно определяются его входными символами и состоянием, которое зависит от m — k предыдущих информационных символов. Основными элементами свёрточного кода являются: регистр сдвига, сумматор по модулю 2, коммутатор.

Регистр сдвига (англ. Shift register) — это динамическое запоминающее устройство, хранящее двоичные символы 0 и 1. Память кода определяет число триггерных ячеек m в регистре сдвига. Когда на вход регистра сдвига поступает новый информационный символ, то символ, хранящийся в крайнем правом разряде, выводится из регистра и сбрасывается. Остальные символы перемещаются на один разряд вправо и, таким образом, освобождается крайний левый разряд куда будет поступать новый информационный символ.

Сумматор по модулю 2 осуществляет сложение поступающих на него символов 1 и 0. Правило сложения по модулю 2 таково: сумма двоичных символов равна 0, если число единиц среди поступающих на входы символов четно, и равно 1, если это число нечетно.

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

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

Параметры и характеристики свёрточных кодов

При свёрточном кодировании преобразование информационных последовательностей в выходные и кодовые происходит непрерывно. Кодер двоичного свёрточного кода содержит сдвигающий регистр из m разрядов и сумматоры по модулю 2 для образования кодовых символов в выходной последовательности. Входы сумматоров соединены с определёнными разрядами регистра. Коммутатор на выходе устанавливает очередность посылки кодовых символов в канал связи. Тогда структуру кода определяют нижеследующие характеристики.

1. Число информационных символов, поступающих за один такт на вход кодера — k.

2. Число символов на выходе кодера — n, соответствующих k, поступившим на вход символам в течение такта.

3. Скорость кода определяется отношением R=k/n и характеризует избыточность, вводимую при кодировании.

4. Избыточность кода <math>\vartheta = 1 - R </math>

5. Память кода (входная длина кодового ограничения или информационная длина кодового слова), определяется максимально степенью порождающего многочлена в составе порождающей матрицы G(X):

<math>l = k \underset{i,j}{\max} \mathcal {b} \deg g _{i,j}(x)+1 \mathcal {c}</math>

6. Маркировка сверточного кода обозначается в большинстве случаев (n, k, l), но возможны и вариации.

7. Вес w двоичных кодовых последовательностей определяется числом «единиц», входящих в эту последовательность или кодовые слова.

8. Кодовое расстояние <math>d</math> показывает степень различия между i-й и j-й кодовыми комбинациями при условии их одинаковой длины. Для любых двух двоичных кодовых комбинаций кодовое расстояние равно числу несовпадающих в них символов. В общем виде кодовое расстояние может быть определено как суммарный результат сложения по модулю 2 одноименных разрядов кодовых комбинаций <math>d_{i,j} = \sum_{k=1}^L k_{i,k} \oplus k_{j,k} </math>, где <math>k_{i,j}</math> и <math>k_{jk}</math> — k-е символы кодовых комбинаций i и j; L- длина кодовой комбинации.

9. Минимальное кодовое расстояние <math>d_{min}</math> — это наименьшее расстояние Хемминга для набора кодовых комбинаций постоянной длины. Для его нахождения необходимо перебрать все возможные пары кодовых комбинаций. Тогда получаем <math>d_{min} = \min d_{ij}</math>. Но! Это определение справедливо для блочных кодов имеющих постоянную длину. Сверточные коды являются непрерывными и характеризуются многими минимальными расстояниями, определяемыми длинами начальных сегментов кодовых последовательностей, между которыми берется минимальное расстояние. Число символов в принятой для обработки длине сегменты L определяет на приемной стороне число ячеек в декодирующем устройстве.

Общий вид двоичного сверточного кодера

Пусть регистр сдвига содержит m ячеек, то есть память кода равна m, коммутатор производит один цикл опроса, проходя значения <math>1\le k<m</math> информационных символов, где m кратно k, при этом за один цикл он опрашивает n<math>\geq</math>2 выходов кодера. Количество выходных кодовых символов, на которые оказывает влияние изменение одного входного информационного символа, равно <math>I_{all}=\frac{mn}{k}</math>. Величина Iall называется полной длиной кодового ограничения.

Поскольку корректирующие свойства конкретного сверточного кода определяются длиной кодового ограничения и выбором связей сдвигающего регистра на сумматор по модулю 2 (XOR), то для задания структуры сверточного кодера необходимо указать какие разряды регистра сдвига связаны с каждым из сумматоров по модулю 2 (XOR).

Связь j-го сумматора по модулю 2 описывается j-ой порождающей последовательностью:

gj=(gj0, gj1,gj2,…,gjm-1), (4.1)

где <math> g_{ij} = \begin{cases}

 1,&\text{if stage i of register tied with XOR gate}\\
 0,&\text{in other cases}

\end{cases} </math> (4.2)

Типичные параметры сверточных кодов: k, n= 1,2,…,8; R=k/n=1/4,…,7/8; m=2,…,10.

Способ задания сверточных кодов

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

Порождающий многочлен полностью определяет структуру двоичного кодера сверточного кода. В отличие от блоковых кодов, каждый из которых описывается лишь одним порождающим многочленом, сверточный код описывается несколькими порождающими многочленами. Количество многочленов, которыми описывается сверточный код, определяется количеством выходных символов n. Представим последовательность информационных символов, поступающих на вход кодера, в виде многочлена: <math>A(X) = a_{0} + a_{1}X + a_{2}X^2 + ... </math>, где Xi — символ оператора задержки на i тактов работы сдвигающего регистра, ai = {0,1} — информационные двоичные символы. Многочлены, описывающие n последовательностей кодовых символов, поступающих на вход коммутатора кодера, а затем в канал связи, имеют вид: <math>B_{j}(X) = b_{0}^j + b_{1}^jX + b_{2}^jX^2 + ...</math>, где <math>b_{i}^j = \left\{ {0;1} \right\} </math> двоичные кодовые символы на j-ом входе коммутатора кодера.

j-й порождающий многочлен сверточного кода имеет вид: <math>G_{j}(X) = g_{0} + g_{1}X + g_{2}X^2 + ... g_{m-1}X^{m-1}</math>, где <math>g_{i} = {0 ; 1} </math> двоичные коэффициенты, равные 1, если i-я ячейка сдвигающего регистра через схему суммирования связана с j-ым коммутатором кодера, и равны 0 в противном случае. Причем, в силу линейности сверточного кода и принятых обозначений получаем: <math>B_j(X) = G_j(X) A(X)</math>.

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

В общем случае последовательность коэффициентов j-ого производящего многочлена будет иметь вид: <math>G^j = {g_0^j , g_1^j , ... , g_{m-1}^j}</math> и совпадает с порождающей последовательностью кода (4.1). Тогда, если <math>A={a_0 , a_1 , a_2 , ...}</math> — последовательность кодируемых символов, а <math>B_{j}={b_{0}^j , b_{1}^j , b_{2}^j , ...}</math> — последовательность кодовых символов на j-ом входе коммутатора кодера, то для любого из них, появляющегося в <math>\mu</math>-й момент времени (<math>\mu = 0, 1, 2... </math>), можно записать:

<math>b_{\mu}^{j} = \sum^{m-1}_{i=0} {a_{\mu-i}g_i^j}</math> Таким образом, каждый кодовый символ выходной последовательности кодера сверточного кода определяется сверткой кодируемой информационной и порождающей последовательности, что и обуславливает название сверточных кодов. Сверточные коды являются частным случаем итеративных или рекуррентных кодов.

Применение

Сверточные коды используются для надежной передачи данных: видео, мобильной связи, спутниковой связи. Они используются вместе с кодом Рида — Соломона и другими кодами подобного типа. До изобретения турбо-кодов такие конструкции были наиболее действенными и удовлетворяли пределу Шеннона. Также свёрточное кодирование используется в протоколе 802.11a на физическом MAC-уровне для достижения равномерного распределения 0 и 1 после прохождения сигнала через скремблер, вследствие чего количество передаваемых символов увеличивается в два раза и, следовательно, мы можем добиться благоприятного приема на принимающем устройстве.

См. также

Напишите отзыв о статье "Свёрточный код"

Примечания

  1. Сагалович, 2014, главы 4 и 5.

Литература

  • Галлагер Р. Теория информации и надёжная связь. — М.: Советское радио, 1974. — 720 с.
  • Морелос-Сарагоса Р. Искусство помехоустойчивого кодирования. Методы, алгоритмы, применение / пер. с англ. В. Б. Афанасьева. — М.: Техносфера, 2006. — 320 с. — (Мир связи). — 2000 экз. — ISBN 5-94836-035-0.
  • Финк Л. М. Теория передачи дискретных сообщений. — М.: Сов. радио, 1963. — 576 с.
  • Никитин Г. И. Сверточные коды: Учебное пособие. — СПб.: Сов. радио, 2001. — 78 с.
  • Ошибка Lua : attempt to index local 'entity' (a nil value).
  • [window.edu.ru/resource/671/44671/files/2001-0103-0-01.pdf Никитин Г. И. Сверточные коды Учебное пособие]

Отрывок, характеризующий Свёрточный код

Они помолчали. Князь Андрей смотрел близко в эти зеркальные, непропускающие к себе глаза и ему стало смешно, как он мог ждать чего нибудь от Сперанского и от всей своей деятельности, связанной с ним, и как мог он приписывать важность тому, что делал Сперанский. Этот аккуратный, невеселый смех долго не переставал звучать в ушах князя Андрея после того, как он уехал от Сперанского.
Вернувшись домой, князь Андрей стал вспоминать свою петербургскую жизнь за эти четыре месяца, как будто что то новое. Он вспоминал свои хлопоты, искательства, историю своего проекта военного устава, который был принят к сведению и о котором старались умолчать единственно потому, что другая работа, очень дурная, была уже сделана и представлена государю; вспомнил о заседаниях комитета, членом которого был Берг; вспомнил, как в этих заседаниях старательно и продолжительно обсуживалось всё касающееся формы и процесса заседаний комитета, и как старательно и кратко обходилось всё что касалось сущности дела. Он вспомнил о своей законодательной работе, о том, как он озабоченно переводил на русский язык статьи римского и французского свода, и ему стало совестно за себя. Потом он живо представил себе Богучарово, свои занятия в деревне, свою поездку в Рязань, вспомнил мужиков, Дрона старосту, и приложив к ним права лиц, которые он распределял по параграфам, ему стало удивительно, как он мог так долго заниматься такой праздной работой.


На другой день князь Андрей поехал с визитами в некоторые дома, где он еще не был, и в том числе к Ростовым, с которыми он возобновил знакомство на последнем бале. Кроме законов учтивости, по которым ему нужно было быть у Ростовых, князю Андрею хотелось видеть дома эту особенную, оживленную девушку, которая оставила ему приятное воспоминание.
Наташа одна из первых встретила его. Она была в домашнем синем платье, в котором она показалась князю Андрею еще лучше, чем в бальном. Она и всё семейство Ростовых приняли князя Андрея, как старого друга, просто и радушно. Всё семейство, которое строго судил прежде князь Андрей, теперь показалось ему составленным из прекрасных, простых и добрых людей. Гостеприимство и добродушие старого графа, особенно мило поразительное в Петербурге, было таково, что князь Андрей не мог отказаться от обеда. «Да, это добрые, славные люди, думал Болконский, разумеется, не понимающие ни на волос того сокровища, которое они имеют в Наташе; но добрые люди, которые составляют наилучший фон для того, чтобы на нем отделялась эта особенно поэтическая, переполненная жизни, прелестная девушка!»
Князь Андрей чувствовал в Наташе присутствие совершенно чуждого для него, особенного мира, преисполненного каких то неизвестных ему радостей, того чуждого мира, который еще тогда, в отрадненской аллее и на окне, в лунную ночь, так дразнил его. Теперь этот мир уже более не дразнил его, не был чуждый мир; но он сам, вступив в него, находил в нем новое для себя наслаждение.
После обеда Наташа, по просьбе князя Андрея, пошла к клавикордам и стала петь. Князь Андрей стоял у окна, разговаривая с дамами, и слушал ее. В середине фразы князь Андрей замолчал и почувствовал неожиданно, что к его горлу подступают слезы, возможность которых он не знал за собой. Он посмотрел на поющую Наташу, и в душе его произошло что то новое и счастливое. Он был счастлив и ему вместе с тем было грустно. Ему решительно не об чем было плакать, но он готов был плакать. О чем? О прежней любви? О маленькой княгине? О своих разочарованиях?… О своих надеждах на будущее?… Да и нет. Главное, о чем ему хотелось плакать, была вдруг живо сознанная им страшная противуположность между чем то бесконечно великим и неопределимым, бывшим в нем, и чем то узким и телесным, чем он был сам и даже была она. Эта противуположность томила и радовала его во время ее пения.
Только что Наташа кончила петь, она подошла к нему и спросила его, как ему нравится ее голос? Она спросила это и смутилась уже после того, как она это сказала, поняв, что этого не надо было спрашивать. Он улыбнулся, глядя на нее, и сказал, что ему нравится ее пение так же, как и всё, что она делает.
Князь Андрей поздно вечером уехал от Ростовых. Он лег спать по привычке ложиться, но увидал скоро, что он не может спать. Он то, зажжа свечку, сидел в постели, то вставал, то опять ложился, нисколько не тяготясь бессонницей: так радостно и ново ему было на душе, как будто он из душной комнаты вышел на вольный свет Божий. Ему и в голову не приходило, чтобы он был влюблен в Ростову; он не думал о ней; он только воображал ее себе, и вследствие этого вся жизнь его представлялась ему в новом свете. «Из чего я бьюсь, из чего я хлопочу в этой узкой, замкнутой рамке, когда жизнь, вся жизнь со всеми ее радостями открыта мне?» говорил он себе. И он в первый раз после долгого времени стал делать счастливые планы на будущее. Он решил сам собою, что ему надо заняться воспитанием своего сына, найдя ему воспитателя и поручив ему; потом надо выйти в отставку и ехать за границу, видеть Англию, Швейцарию, Италию. «Мне надо пользоваться своей свободой, пока так много в себе чувствую силы и молодости, говорил он сам себе. Пьер был прав, говоря, что надо верить в возможность счастия, чтобы быть счастливым, и я теперь верю в него. Оставим мертвым хоронить мертвых, а пока жив, надо жить и быть счастливым», думал он.


В одно утро полковник Адольф Берг, которого Пьер знал, как знал всех в Москве и Петербурге, в чистеньком с иголочки мундире, с припомаженными наперед височками, как носил государь Александр Павлович, приехал к нему.
– Я сейчас был у графини, вашей супруги, и был так несчастлив, что моя просьба не могла быть исполнена; надеюсь, что у вас, граф, я буду счастливее, – сказал он, улыбаясь.
– Что вам угодно, полковник? Я к вашим услугам.
– Я теперь, граф, уж совершенно устроился на новой квартире, – сообщил Берг, очевидно зная, что это слышать не могло не быть приятно; – и потому желал сделать так, маленький вечерок для моих и моей супруги знакомых. (Он еще приятнее улыбнулся.) Я хотел просить графиню и вас сделать мне честь пожаловать к нам на чашку чая и… на ужин.
– Только графиня Елена Васильевна, сочтя для себя унизительным общество каких то Бергов, могла иметь жестокость отказаться от такого приглашения. – Берг так ясно объяснил, почему он желает собрать у себя небольшое и хорошее общество, и почему это ему будет приятно, и почему он для карт и для чего нибудь дурного жалеет деньги, но для хорошего общества готов и понести расходы, что Пьер не мог отказаться и обещался быть.
– Только не поздно, граф, ежели смею просить, так без 10 ти минут в восемь, смею просить. Партию составим, генерал наш будет. Он очень добр ко мне. Поужинаем, граф. Так сделайте одолжение.
Противно своей привычке опаздывать, Пьер в этот день вместо восьми без 10 ти минут, приехал к Бергам в восемь часов без четверти.
Берги, припася, что нужно было для вечера, уже готовы были к приему гостей.
В новом, чистом, светлом, убранном бюстиками и картинками и новой мебелью, кабинете сидел Берг с женою. Берг, в новеньком, застегнутом мундире сидел возле жены, объясняя ей, что всегда можно и должно иметь знакомства людей, которые выше себя, потому что тогда только есть приятность от знакомств. – «Переймешь что нибудь, можешь попросить о чем нибудь. Вот посмотри, как я жил с первых чинов (Берг жизнь свою считал не годами, а высочайшими наградами). Мои товарищи теперь еще ничто, а я на ваканции полкового командира, я имею счастье быть вашим мужем (он встал и поцеловал руку Веры, но по пути к ней отогнул угол заворотившегося ковра). И чем я приобрел всё это? Главное умением выбирать свои знакомства. Само собой разумеется, что надо быть добродетельным и аккуратным».
Берг улыбнулся с сознанием своего превосходства над слабой женщиной и замолчал, подумав, что всё таки эта милая жена его есть слабая женщина, которая не может постигнуть всего того, что составляет достоинство мужчины, – ein Mann zu sein [быть мужчиной]. Вера в то же время также улыбнулась с сознанием своего превосходства над добродетельным, хорошим мужем, но который всё таки ошибочно, как и все мужчины, по понятию Веры, понимал жизнь. Берг, судя по своей жене, считал всех женщин слабыми и глупыми. Вера, судя по одному своему мужу и распространяя это замечание, полагала, что все мужчины приписывают только себе разум, а вместе с тем ничего не понимают, горды и эгоисты.
Берг встал и, обняв свою жену осторожно, чтобы не измять кружевную пелеринку, за которую он дорого заплатил, поцеловал ее в середину губ.
– Одно только, чтобы у нас не было так скоро детей, – сказал он по бессознательной для себя филиации идей.
– Да, – отвечала Вера, – я совсем этого не желаю. Надо жить для общества.
– Точно такая была на княгине Юсуповой, – сказал Берг, с счастливой и доброй улыбкой, указывая на пелеринку.
В это время доложили о приезде графа Безухого. Оба супруга переглянулись самодовольной улыбкой, каждый себе приписывая честь этого посещения.
«Вот что значит уметь делать знакомства, подумал Берг, вот что значит уметь держать себя!»
– Только пожалуйста, когда я занимаю гостей, – сказала Вера, – ты не перебивай меня, потому что я знаю чем занять каждого, и в каком обществе что надо говорить.
Берг тоже улыбнулся.
– Нельзя же: иногда с мужчинами мужской разговор должен быть, – сказал он.
Пьер был принят в новенькой гостиной, в которой нигде сесть нельзя было, не нарушив симметрии, чистоты и порядка, и потому весьма понятно было и не странно, что Берг великодушно предлагал разрушить симметрию кресла, или дивана для дорогого гостя, и видимо находясь сам в этом отношении в болезненной нерешительности, предложил решение этого вопроса выбору гостя. Пьер расстроил симметрию, подвинув себе стул, и тотчас же Берг и Вера начали вечер, перебивая один другого и занимая гостя.
Вера, решив в своем уме, что Пьера надо занимать разговором о французском посольстве, тотчас же начала этот разговор. Берг, решив, что надобен и мужской разговор, перебил речь жены, затрогивая вопрос о войне с Австриею и невольно с общего разговора соскочил на личные соображения о тех предложениях, которые ему были деланы для участия в австрийском походе, и о тех причинах, почему он не принял их. Несмотря на то, что разговор был очень нескладный, и что Вера сердилась за вмешательство мужского элемента, оба супруга с удовольствием чувствовали, что, несмотря на то, что был только один гость, вечер был начат очень хорошо, и что вечер был, как две капли воды похож на всякий другой вечер с разговорами, чаем и зажженными свечами.
Вскоре приехал Борис, старый товарищ Берга. Он с некоторым оттенком превосходства и покровительства обращался с Бергом и Верой. За Борисом приехала дама с полковником, потом сам генерал, потом Ростовы, и вечер уже совершенно, несомненно стал похож на все вечера. Берг с Верой не могли удерживать радостной улыбки при виде этого движения по гостиной, при звуке этого бессвязного говора, шуршанья платьев и поклонов. Всё было, как и у всех, особенно похож был генерал, похваливший квартиру, потрепавший по плечу Берга, и с отеческим самоуправством распорядившийся постановкой бостонного стола. Генерал подсел к графу Илье Андреичу, как к самому знатному из гостей после себя. Старички с старичками, молодые с молодыми, хозяйка у чайного стола, на котором были точно такие же печенья в серебряной корзинке, какие были у Паниных на вечере, всё было совершенно так же, как у других.


Пьер, как один из почетнейших гостей, должен был сесть в бостон с Ильей Андреичем, генералом и полковником. Пьеру за бостонным столом пришлось сидеть против Наташи и странная перемена, происшедшая в ней со дня бала, поразила его. Наташа была молчалива, и не только не была так хороша, как она была на бале, но она была бы дурна, ежели бы она не имела такого кроткого и равнодушного ко всему вида.
«Что с ней?» подумал Пьер, взглянув на нее. Она сидела подле сестры у чайного стола и неохотно, не глядя на него, отвечала что то подсевшему к ней Борису. Отходив целую масть и забрав к удовольствию своего партнера пять взяток, Пьер, слышавший говор приветствий и звук чьих то шагов, вошедших в комнату во время сбора взяток, опять взглянул на нее.
«Что с ней сделалось?» еще удивленнее сказал он сам себе.
Князь Андрей с бережливо нежным выражением стоял перед нею и говорил ей что то. Она, подняв голову, разрумянившись и видимо стараясь удержать порывистое дыхание, смотрела на него. И яркий свет какого то внутреннего, прежде потушенного огня, опять горел в ней. Она вся преобразилась. Из дурной опять сделалась такою же, какою она была на бале.
Князь Андрей подошел к Пьеру и Пьер заметил новое, молодое выражение и в лице своего друга.
Пьер несколько раз пересаживался во время игры, то спиной, то лицом к Наташе, и во всё продолжение 6 ти роберов делал наблюдения над ней и своим другом.
«Что то очень важное происходит между ними», думал Пьер, и радостное и вместе горькое чувство заставляло его волноваться и забывать об игре.
После 6 ти роберов генерал встал, сказав, что эдак невозможно играть, и Пьер получил свободу. Наташа в одной стороне говорила с Соней и Борисом, Вера о чем то с тонкой улыбкой говорила с князем Андреем. Пьер подошел к своему другу и спросив не тайна ли то, что говорится, сел подле них. Вера, заметив внимание князя Андрея к Наташе, нашла, что на вечере, на настоящем вечере, необходимо нужно, чтобы были тонкие намеки на чувства, и улучив время, когда князь Андрей был один, начала с ним разговор о чувствах вообще и о своей сестре. Ей нужно было с таким умным (каким она считала князя Андрея) гостем приложить к делу свое дипломатическое искусство.