jaswanth chakri Ответов: 2

Расчет возможного распределения битов динамического материала в битовой последовательности


Исходная ситуация:
Существует битовая последовательность, состоящая из 13 битов. Первые 12 бит могут иметь переменные значения 𝑥 ∈ [0,1]. То
последний (13-й) бит всегда имеет значение "0".
Немного
Номер
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
Значение x x x x x x x x x x x 0
Если в битовой последовательности имеется 5 эквивалентных битов, то вставляется бит с дополнительным значением
сразу после этого подпоследовательность 5 равнозначных бит. Этот дополнительный бит называется вещественным битом.
Например, в последовательности 0111111100100 один бит материала должен быть вставлен после 6-го бита:
Немного
Номер
1. 2. 3. 4. 5. 6. СБ 7. 8. 9. 10. 11. 12. 13.
Значение 0 1 1 1 1 1 0 1 1 0 0 1 0 0
Каждый бит материала включается в следующую (возможную) подпоследовательность. Например в последовательности
1000001111100 будут вставлены два бита материала после 6-го и 10-го битов:
Немного
Номер
1. 2. 3. 4. 5. 6. СБ 7. 8. 9. 10. СБ 11. 12. 13.
Значение 1 0 0 0 0 0 1 1 1 1 1 0 1 0 0
Последний бит материала может быть вставлен после 13-го бита, и максимально возможное количество битов материала равно
три.
Немного
Номер
1. 2. 3. 4. 5. СБ 6. 7. 8. 9. СБ 10. 11. 12. 13. СБ
Значение 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 1
Таким образом, существует 4 возможных ситуации:
 никакие биты материала не вставляются в выходную битовую последовательность
 1 бит материала вставляется в выходную последовательность битов
 2 бита материала вставляются в выходную битовую последовательность
 3 бита материала вставляются в выходную битовую последовательность

Описание задания:
Необходимо разработать приложение, которое проверяет все возможные комбинации последовательностей из
0000000000000 - 1111111111110. (Возможны 2^12 комбинаций.)
Кроме того, должно быть подсчитано, сколько комбинаций подчинено какой категории:
 0 подпоследовательностей без битов материала
 1 подпоследовательность с 1 битом материала
 2 подпоследовательности с 2 битами материала
 3 подпоследовательности с 3 битами материала

Что я уже пробовал:

Я попробовал сначала логику но не смог этого сделать так как 13 бит должен быть всегда 0

jeron1

Вы можете сделать это на бумаге?

CPallini

"Последний бит материала может быть вставлен после 13-го бита, и самое большое возможное количество битов материала-это
три."

Мне это не кажется правильным. Не могли бы вы привести пример?

2 Ответов

Рейтинг:
0

Richard MacCutchan

Цитата:
Приложение должно быть разработано
Я ожидаю, что это инструкция для вас, чтобы выполнить это задание.


Рейтинг:
0

CPallini

Давайте попробуем перечислить входные последовательности

//               bit no                      value
// 12 11 10  9  8  7  6  5  4  3  2  1  0
//---------------------------------------     
//  0  0  0  0  0  0  0  0  0  0  0  0  0  =    0
//  0  0  0  0  0  0  0  0  0  0  0  1  0  =    2
//  0  0  0  0  0  0  0  0  0  0  1  0  0  =    4
//  0  0  0  0  0  0  0  0  0  0  1  1  0  =    6
// ...
//  1  1  1  1  1  1  1  1  1  1  1  1  0  = 8190


Так что вам придется иметь дело со всеми четными числами меньше 8192.
С помощью простого цикла вы можете генерировать все входные последовательности.
Для каждой последовательности вы можете подсчитать количество битов материала по конструкции, например
// value =   0 =>  0 0 0 0 0 0 0 0 0 0 0 0 0 => 0 0 0 0 0 [1] 0 0 0 0 0 [1] 0 0 0 => 2 stuff bits
// velue = 240 =>  0 0 0 0 0 1 1 1 1 0 0 0 0 => 0 0 0 0 0 [1] 1 1 1 1 [0] 0 0 0 0 [1] => 3 stuff bits

Примечание (как показано на рисунке value = 240), что биты материала могут внести свой вклад в следующую последовательность.

Удачи.