Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Что такое циклический сдвиг? / 14 сообщений из 14, страница 1 из 1
04.02.2007, 23:27
    #34305149
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Это когда старшие биты оказываются на месте младших?

Код: plaintext
ROLLBACK;
...
Рейтинг: 0 / 0
04.02.2007, 23:52
    #34305163
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
SarinЭто когда старшие биты оказываются на месте младших?
При обычном сдвиге освобождающиеся биты заполняются нулем (точнее, знаковым битом, если он есть). При циклическом они заполняются битами, вытесненными с другой стороны.
...
Рейтинг: 0 / 0
05.02.2007, 00:07
    #34305174
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Тоесть для циклического сдвига на 11 бит влево мне надо получить старшие 11 бит, сдвинуть число на 11 бит влево и прибавить старшие 11 бит?
...
Рейтинг: 0 / 0
05.02.2007, 00:30
    #34305191
softwarer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Да. Проще всего рассмотреть эту операцию как "одиннадцать раз взять самый левый бит, приписать его справа и стереть слева".
...
Рейтинг: 0 / 0
05.02.2007, 00:37
    #34305193
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Такие штуки хорошо кодить на Асемблере. Благо для этого есть специальные наборы команд. В других ЯП - как правило "шаманство" с математикой или строковыми операциями (LISP, PL/SQL и.т.п).
...
Рейтинг: 0 / 0
05.02.2007, 00:41
    #34305196
Sarin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
maytonТакие штуки хорошо кодить на Асемблере. Благо для этого есть специальные наборы команд. В других ЯП - как правило "шаманство" с математикой или строковыми операциями (LISP, PL/SQL и.т.п).
Я кодю на пайтоне. Там есть набор побитовых оперций. и, или, xor, сдвиги...
...
Рейтинг: 0 / 0
05.02.2007, 00:49
    #34305199
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Sarin maytonТакие штуки хорошо кодить на Асемблере. Благо для этого есть специальные наборы команд. В других ЯП - как правило "шаманство" с математикой или строковыми операциями (LISP, PL/SQL и.т.п).
Я кодю на пайтоне. Там есть набор побитовых оперций. и, или, xor, сдвиги...

Очень бедный набор сдвигов у питона- поэтому циклический сдвиг придётся через задний проход реализовывать, о чём собственно и сказал mayton
...
Рейтинг: 0 / 0
05.02.2007, 00:58
    #34305203
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Не знаю, как в Питоне. В Java это может выглядит приблизительно так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
//цикличкский сдвиг  64  битного целого числа влево на  1  бит
public long ShiftLeft(long v)
{
      return (v<< 1 )||((v&0x80000000)>> 63 );
}

//вправо
public long ShiftRight(long v)
{
      return (v>> 1 )||((v&0x00000001)<< 63 );
}

Навскидку написал. Надеюсь не ошибся.
...
Рейтинг: 0 / 0
05.02.2007, 01:02
    #34305205
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Пардон. Дизъюнкция записыватся не так "||" а вот так "|".
...
Рейтинг: 0 / 0
05.02.2007, 01:47
    #34305218
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Пардон, но со знаковыми сдвигами чуток иначе долно быть:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    public    static   long  ShiftLeft( long  v) {
         return    (v << 1 ) | (v>> 63 ) & 1L;
    }

     public   static    long  ShiftRight( long  v) {
         return  (v  >>  1 ) & 0x7fffffffffffffffL | (v << 63 );
    }

...
Рейтинг: 0 / 0
05.02.2007, 10:28
    #34305553
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Thanks
...
Рейтинг: 0 / 0
17.02.2007, 05:31
    #34338057
Купер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
>Очень бедный набор сдвигов у питона

А у ково он богатый?
...
Рейтинг: 0 / 0
18.02.2007, 00:19
    #34338815
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Купер>Очень бедный набор сдвигов у питона

А у ково он богатый?

У CPU
...
Рейтинг: 0 / 0
18.02.2007, 10:42
    #34338919
raidan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Что такое циклический сдвиг?
Купер>Очень бедный набор сдвигов у питона

А у ково он богатый?
Скажешь, у тебя — бедный?
...
Рейтинг: 0 / 0
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Что такое циклический сдвиг? / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]