на главнуюВсе эхи RU.LISP
войти ?

Re: работа с битами\n

От Dmitriy Ivanov (2:5020/400) к Sergio Basan

В ответ на Заголовок предыдущего сообщения в треде (Имя Автора)


From: "Dmitriy Ivanov" <divanov@aha.ru>

Sergio Basan wrote on Fri, 10 Sep 2010 06:35:09 +0400 06:35:

SB>> (unsigned-byte 8) работает во всех реализациях.
SB>> Cначала считываем, например, с помощью read-byte или
SB>> read-sequence, затем извлекаем биты.
SB>
SB> Ты можешь подсказать, как реализовать макросс для считывания по 7
SB> бит? В общий чертах.

Hе думаю, что это будет макрос. Скорее функция.
Hапример, считываешь по 7 байт.

(loop with octets = (make-array 7 :element-type '(unsigned-byte 8)))
for position = (read-sequence octets stream)
until (= position 0)
nconc (loop for i upfrom 0 below (* 8 position) by 7
collect (logior (ldb (byte ...) (aref octets
...))))


и т.д.

В качестве примера см. файл t1-font.lisp в дистрибутиве CL-PDF.

SB> И еще, если у тебя есть время - соответствуют ли мои сообщения
SB> техническим стандартам/традициям фидо? Про /n в теме письма знаю.

Я не особо разбираюсь в традициях ФИДО, но Usenet - вполне соответствуют.
--
Dmitriy Ivanov
lisp.ystok.ru


--- ifmail v.2.15dev5.4
* Origin: Demos online service (2:5020/400)

Ответы на это письмо:

From: Username
Заголовок следующего сообщения в треде может быть длинным и его придется перенести на новую строку

From: Username
Или коротким

FGHI-url этого письма: area://RU.LISP?msgid=<1187410929@digo>+be308f44