
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
04.11.2005, 11:38:52
|
|||
|---|---|---|---|
|
|||
Помогите с побитовой обработкой числа |
|||
|
#18+
у меня проблема, при сдвиге числа (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 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
04.11.2005, 12:06:15
|
|||
|---|---|---|---|
Помогите с побитовой обработкой числа |
|||
|
#18+
Вот это i=8*(f) поправь на это: i=8*(f) -1 и будет тебе счастье :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&mobile=1&tid=2032497]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
34ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 229ms |
| total: | 358ms |

| 0 / 0 |
