Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите с побитовой обработкой числа / 3 сообщений из 3, страница 1 из 1
04.11.2005, 11:38
    #33361536
Василина
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с побитовой обработкой числа
у меня проблема, при сдвиге числа (32 разряда) появляются лишние еденицы.Подскажите, в чем причина:
//Функция проверки разряда m числа x
short int IsOne(unsigned long x, int m)
{
return(((x>>m)&1)!=0);

}
//Функция вывода числа x в двоичном виде
void WriteBits(unsigned long x)
{
int i;
int f;
f = sizeof(x);
for (i=8*(f);i>=0;i--)
printf("%d",IsOne(x,i));
}//WriteBits
...
Рейтинг: 0 / 0
04.11.2005, 12:06
    #33361568
rikman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с побитовой обработкой числа
Вот это
i=8*(f)
поправь на это:
i=8*(f) -1
и будет тебе счастье :)
...
Рейтинг: 0 / 0
06.11.2005, 23:28
    #33363124
Василина
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Помогите с побитовой обработкой числа
spasibo
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Помогите с побитовой обработкой числа / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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