1. Пользуйтесь тегами кода. - [code] ... [/code]
2. Точно указывайте язык, название и версию компилятора (интерпретатора).
3. Название темы должно быть информативным.
В описании темы указываем язык!!!
| Янычар |
29.05.2008 19:33
Сообщение
#1
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 115 Пол: Мужской Реальное имя: Александр Репутация: 1 |
Прош мне помочь вот с чем: у меня есть коды фаффмана для каждого кодируемого символа. Так вот вопрос :
могли бы мне написать функцию которая бы упаковывала отдельные коды разной длины напрмер в переменную типа unsigned(2 байта). Здесб довольно тонкая работ со сдвиговыми операциями и у меня не получается. |
![]() ![]() |
| Янычар |
29.05.2008 21:58
Сообщение
#2
|
|
Пионер ![]() ![]() Группа: Пользователи Сообщений: 115 Пол: Мужской Реальное имя: Александр Репутация: 1 |
Честно говоря сам поражл щас)))) А пример попытаюсь привести щас. Ну например у меня есть символы A,B,C,D.У каждого из них в кодовом дереве Tree у них есть соответствующие коды хаффмана. В таблице символов они идут в последовательности: D, C, B, A. А коды их находятся в кодово дереве(реализованном как массив деревьев) соответсвенно: Tree[i].code. Не буду перечислять коды этих символов. Ну вот и теперь мне надо записать их в выходной файл. Я так понял что надо все эти коды сгруппировать например в двухбайтовую переменную. Будет запущен цикл в котором при совпадении в таблице символов с символом считанным из файла будет поставлен в соответсвие код из дерева. Так вт проблма состоит в том что у меня не получается записать коды символов в переменную, чтобы потом при заполнении переменной все скинуть в файл и обнулить ее и опть начать заполнение ее и т.д. до конц файла аминь... Ну типа есть коды у символа А -110 а у B - 001 , то перед тем как отправить эти коды в файл надо их загнать в переменную и выглядеть она будет так: 00110001 - я взял 8-битный пример. То есть в тексе был сначал встречен символ А а затем уже B. Фууух надеюсь понятно стало и теперь кто нить может мне помочь) Заранее спасибо...
|
Янычар Сдвиговые операции в кодировании 29.05.2008 19:33
klem4
Спасибо, поржал))
Ты бы пару примеров привел, б... 29.05.2008 21:36
klem4 то есть каждый символ кодируется 3 битами, и ты хо... 29.05.2008 22:05
Янычар Ну нет конечно. Я просто пример привел. Коды все р... 29.05.2008 22:12
volvo Что-то я не понял твоей логики... Вот тут: метод Х... 30.05.2008 14:12
Янычар Ну там и вправду не совсем то что мне нужно) А зде... 31.05.2008 20:02
volvo Ну, тогда смотри:
#include <stdio.h>
unsign... 31.05.2008 20:22
Янычар Ну в принципе все понятно спасибо, но есть один во... 1.06.2008 16:58
volvo Ты не можешь записывать в файл информацию побитно,... 1.06.2008 18:18
Янычар Спасибо понятно теперь. Хотя то что писать в файл ... 1.06.2008 18:42
Янычар Вот один вопрос возник а зачем нужно 00001 - то, ч... 4.06.2008 15:17
volvo Это то, что после всех операций (и, соответственно... 4.06.2008 15:32
Янычар Спасибо так оно и есть)
Добавлено через 17 мин. ... 4.06.2008 16:10![]() ![]() |
|
Текстовая версия | 15.12.2025 11:55 |