![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 01.11.2007
Сообщений: 4
|
![]()
Есть проблемка.
имеется последовательность из 8ми байтов. (b:array[0..7] of byte) необходимо сделать перестановку битов. То есть, например, если представим 8ми байтовую последовательность в виде битов (x0..x63 - 64 бита), необходимо получить x63,x55,... т.е. биты могут находиться после перестановки в порядке, который определяет юзверь, перестановка каждый раз может быть разная. Помогите, плиз разобраться с этим сижу уже два часа не знаю как это сделать. Заранее спасибо. |
![]() |
![]() |
![]() |
#2 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
![]()
Книга есть "Алгоритмические трюки для программистов" - там была глава про перестановку/перемешивание бит
Может будет проще (?) с помощью shl/shr перегнать биты в массив символов вида 10101001..., и уже с ним работать, а потом обратно. В любом случае без ассемблера не обойтись
пыщь
|
![]() |
![]() |
![]() |
#3 |
Баламучу слегка...
Участник клуба
Регистрация: 01.11.2006
Сообщений: 1,585
|
![]()
Ну почему же без асма не обойтись? Паскаль вполне дружелюбен к словам shl & shr.
|
![]() |
![]() |
![]() |
#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 |