Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.02.2010, 15:17   #1
belii0987
Пользователь
 
Регистрация: 17.10.2009
Сообщений: 13
Вопрос сдвиг

unsigned int x = 0x1234ABCD; // число которое двигать надо
unsigned int v = 1; // на сколько двигать
x = (x >> v*4) | (x << (32-v*4)); // цикл. вправо

при сдвиге вправо числа X на одну позицию получается D1234ABC

А вот если сдвигать число меньше чем 8 знаков например X=0x123abcd
то при сдвиге получается D0123abc перед 1 появляется ноль .


Как избавиться от этого нуля ??????

Последний раз редактировалось belii0987; 04.02.2010 в 16:31.
belii0987 вне форума Ответить с цитированием
Старый 04.02.2010, 16:05   #2
netrino
Участник клуба
 
Аватар для netrino
 
Регистрация: 15.07.2008
Сообщений: 1,933
По умолчанию

Цитата:
Сообщение от belii0987 Посмотреть сообщение
unsigned int x = 0x1234ABCD; // число которое двигать надо
unsigned int v = 1; // на сколько двигать
x = (x >> v*4) | (x << (32-v*4)); // цикл. вправо

при сдвиге вправо числа X на одну позицию получается D1234ABC

А вот если сдвигать число меньше чем 8 знаков например X=0x123abcd
то при сдвиге получается D0123abc перед 1 появляется ноль .


Как избавиться от этого нуля !!!!
Не надо от него избавляться, он должен там быть.
netrino вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
сдвиг по спирали shelest JavaScript, Ajax 0 06.12.2009 22:02
Циклический сдвиг в С rand8154 Общие вопросы C/C++ 1 14.11.2009 01:49
Циклический сдвиг Mish92(21-09) Помощь студентам 0 07.11.2009 21:59
Сдвиг массива. Джед Общие вопросы C/C++ 19 10.06.2009 16:44
Сдвиг файла OrdJONY Общие вопросы Delphi 13 21.12.2007 22:22