Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Andrew Ezhguroff                     2:5020/400     19 Jan 2002  04:26:47
 To : Edward Avernin
 Subject : Re: Упаковка данных(принцип записи в файл)
 -------------------------------------------------------------------------------- 
 
 Привет! "Edward Avernin" <edward@atnet.ru>  сообщил(а):
 
  АЕ>> В твоем случае BITS==8
  EA> В том то и дело что в моем случае BITS==12, эти ф-ии взяты из программы
  EA> в которых определен этот макрос  BITS. Я конечно могу залить всю прогу,
  EA> если надо. Hо если всё-таки предположить
  EA> что BITS==12 . То как тогда рассуждать ... ?
 
 В таком случае подпрограмма рассчитана не на вывод символов, а на вывод
 значений в диапазоне [0..0xFFF]
 
 Я буду писать значения в шестнадцатеричном виде - в битах слишком неудобно.
 
 Предположим выводятся 2 значения: 0xE95 и 0xA71
 
 Выводим 0xE95:
 
 output_bit_buffer|=0xE95<<(32-12-output_bit_count); //
 (0xE95<<20)==0xE9500000
 output_bit_count+=12; // 12
 
 putc(output_bit_buffer>>24, out); // putc(0xE9, out);
 output_bit_buffer<<=8; // 0x50000000
 output_bit_count-=8; // 4
 
 Выводим 0xA71:
 
 output_bit_buffer|=0xA71<<(32-12-output_bit_count);
 // (0x50000000|(0xA71<<16))==0x5A710000
 output_bit_count+=12; // 16
 
 putc(output_bit_buffer>>24, out); // putc(0x5A, out);
 output_bit_buffer<<=8; // 0x71000000
 output_bit_count-=8; // 8
 
 putc(output_bit_buffer>>24, out); // putc(0x71, out);
 output_bit_buffer<<=8; // 0x00000000
 output_bit_count-=8; // 0
 
 Таким образом на вход подано два двенадцатибитовых значения 0xE95, 0xA71, а
 в файл записано три байта 0xE9, 0x5A, 0x71.
 
 С уважением, Андрей.
 -- 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.Mail.Ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Упаковка данных(принцип записи в файл)   Edward Avernin   18 Jan 2002 00:58:01 
 Re: Упаковка данных(принцип записи в файл)   Andrew Ezhguroff   18 Jan 2002 05:16:29 
 Re: Упаковка данных(принцип записи в файл)   Edward Avernin   19 Jan 2002 00:19:33 
 Re: Упаковка данных(принцип записи в файл)   Andrew Ezhguroff   19 Jan 2002 04:26:47 
Архивное /ru.algorithms/6488eb48f0de.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional