![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]()
Всем доброго дня!
Вот небольшая программа. Она должна находить в числе последовательность бит '000' и заменять на '0110'. На числах до 256 (8 бит) она работала прекрасно, а вот когда я взял числа на 4 байта начала считать неправильно.подскажите в чем ошибка? Код:
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. Последний раз редактировалось Вечный_студент; 02.05.2012 в 16:08. |
![]() |
![]() |
![]() |
#2 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
![]() Цитата:
I'm learning to live...
|
|
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]()
так задумано. лишние биты влево задвигаются
a &= 0xFFFFFFF; вот эта маска отрезает лишние биты. хотя они и так за разрядную сетку выходят. но это для наглядности
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. Последний раз редактировалось Stilet; 02.05.2012 в 23:20. |
![]() |
![]() |
![]() |
#4 |
Форумчанин
Регистрация: 23.02.2010
Сообщений: 107
|
![]() Код:
Последний раз редактировалось Indian; 03.05.2012 в 23:06. |
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]() Цитата:
и еще одна проблема: как видно на скрине, у числа остается не тронутым старших 3 бита.
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. |
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 23.02.2010
Сообщений: 107
|
![]() Код:
Но похоже есть ошибка: Код:
Последний раз редактировалось Indian; 04.05.2012 в 10:22. |
![]() |
![]() |
![]() |
#7 | |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]() Цитата:
так там три 000 же изначально. вот он их и поменял лучше без этой строчки. Код:
Код:
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. Последний раз редактировалось Stilet; 04.05.2012 в 19:35. |
|
![]() |
![]() |
![]() |
#8 |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]()
идеи для этой программы у меня иссякли......
есть что-нибудь у кого-нибудь?(
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. |
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 11.11.2011
Сообщений: 45
|
![]() Код:
![]()
Крепкая стена строится из маленьких кирпичей.
Но если положил первый кирпич криво, как ни старайся, стена кривой будет. |
![]() |
![]() |
![]() |
#10 |
Форумчанин
Регистрация: 23.02.2010
Сообщений: 107
|
![]() Код:
Попробовал подставить числа на место a: Код:
Код:
Притом, что уже запускал код(с доп. переменной) - результаты были другие: Код:
Код:
Код:
Похоже, вы забыли обнулить b. |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
подсчет битов | mercure243 | Общие вопросы C/C++ | 1 | 12.03.2012 03:56 |
Вставка битов | Aleks2215 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 3 | 09.12.2010 20:32 |
Перемешивание позиций битов в числе | explored | Общие вопросы C/C++ | 6 | 27.10.2010 23:14 |
Замена второго бита в числе | SZR | Помощь студентам | 4 | 25.01.2008 20:16 |
Перестановка битов. | RegentM | Общие вопросы Delphi | 3 | 05.11.2007 17:23 |