|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
04.11.2007, 22:28 | #1 |
Регистрация: 01.11.2007
Сообщений: 4
|
Перестановка битов.
Есть проблемка.
имеется последовательность из 8ми байтов. (b:array[0..7] of byte) необходимо сделать перестановку битов. То есть, например, если представим 8ми байтовую последовательность в виде битов (x0..x63 - 64 бита), необходимо получить x63,x55,... т.е. биты могут находиться после перестановки в порядке, который определяет юзверь, перестановка каждый раз может быть разная. Помогите, плиз разобраться с этим сижу уже два часа не знаю как это сделать. Заранее спасибо. |
05.11.2007, 14:10 | #2 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Книга есть "Алгоритмические трюки для программистов" - там была глава про перестановку/перемешивание бит
Может будет проще (?) с помощью shl/shr перегнать биты в массив символов вида 10101001..., и уже с ним работать, а потом обратно. В любом случае без ассемблера не обойтись
пыщь
|
05.11.2007, 14:38 | #3 |
Баламучу слегка...
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,585
|
Ну почему же без асма не обойтись? Паскаль вполне дружелюбен к словам shl & shr.
|
05.11.2007, 17:23 | #4 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
а, пардон, это как-то на уровне подсознания - shl в asm ... end пихать
пыщь
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Сортировка и перестановка | NxM | Помощь студентам | 4 | 29.05.2008 11:56 |
Перестановка | Roman | Помощь студентам | 3 | 29.04.2007 05:37 |
Перестановка местами крайних 4-х велечин | Wizard_Adeptus | Помощь студентам | 7 | 09.02.2007 18:29 |