0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
|
1 | |
Битовые операции30.05.2011, 15:10. Показов 2382. Ответов 12
Метки нет (Все метки)
Задание:
0
|
30.05.2011, 15:10 | |
Ответы с готовыми решениями:
12
Битовые последовательности и битовые операции Битовые операции, битовые поля. Используя только битовые операции и операции арифметического сложения и вычитания, вычислите число Битовые операции и операции смещения языка С |
.NET C#,ASP.NET MVC
594 / 507 / 224
Регистрация: 16.10.2010
Сообщений: 1,902
|
|
30.05.2011, 15:33 | 2 |
попробуй побитовый здвиг запихнуть в циклы
0
|
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
|
30.05.2011, 15:59 [ТС] | 3 |
Да я не понимаю как обратиться к нужному биту...
Вот допустим пользователь ввел 23, если тип char то у нас получается 00100100, как мне обратиться к нужному биту
0
|
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
|
30.05.2011, 17:38 [ТС] | 5 |
пфф, вообще не понятно, и что вернет значение нужного бита, куда его, в новую переменную чтоли?
Добавлено через 1 час 22 минуты хелп хелп хелп
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
||||||
30.05.2011, 18:34 | 6 | |||||
Вот конкретно для вашей перестановки
0
|
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
|
30.05.2011, 19:19 [ТС] | 7 |
А программа правильно работает?
Если я задам число int 23 маска будет такой: 0000 0000 | 0000 0000 | 0000 0000 | 0010 0011 Измененная маска должна выглядеть так: 0000 0000 | 0000 0000 | 0000 0000 | 0100 1100 Мне кажется программа немного по другому считает
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
|
30.05.2011, 19:22 | 8 |
Я написал для примера поворот байта. Для инта продолжайте сами, можно поворачивать например каждый байт отдельно по приведённому способу
0000 0000 | 0000 0000 | 0000 0000 | 0001 0111 Можете проверить калькулятором
0
|
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
|
30.05.2011, 19:36 [ТС] | 9 |
аа это получается у нас для 1 байта, для инта придется увеличить i=31 так же вроде?
Добавлено через 7 минут кстати вот я для одного байта задал тип char прога неверно считывает опять? 23 считает как 00110010 а должна наоборот 00100011
0
|
0 / 0 / 0
Регистрация: 26.03.2011
Сообщений: 14
|
||||||
30.05.2011, 19:45 [ТС] | 11 | |||||
0
|
65 / 71 / 9
Регистрация: 25.06.2009
Сообщений: 244
|
|
30.05.2011, 19:47 | 12 |
для простоты создайте 4 массива bool [8]
запихайте туда все биты по очереди из int поменяйте как угодно и обратно в int
0
|
return (true);
1976 / 1111 / 221
Регистрация: 19.04.2011
Сообщений: 2,345
|
|||||||||||
30.05.2011, 20:03 | 13 | ||||||||||
Вы понимаете разницу между байтом a=23 и введенным символом типа char? У вас считается только первый введённый символ
Добавлено через 7 минут Вот для инта на той же основе
0
|
30.05.2011, 20:03 | |
30.05.2011, 20:03 | |
Помогаю со студенческими работами здесь
13
Битовые операции Битовые операции битовые операции Битовые операции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |