|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
Не могу разобраться с битовыми операциями12.11.2016, 15:05. Показов 1649. Ответов 18
Метки нет (Все метки)
Дано
00110100 00110111 .... в конце 00111000 что надо сделать, чтобы получить (ниже) 1ый байт (известен), 2ой байт 1 из 3 1ый байт 00110101 2й байт 01001011 01001000 01001010 подскажите какой это сдвиг? или умножение, деление? Что за операция проведена с битами? Буду очень признателен за помощь. В битах плохо разбираюсь.. Помогите чайнику. Известно еще, что в операции по изменению битов могло принимать участие 0001 или 3 :-) А могло и не принимать..
0
|
|
| 12.11.2016, 15:05 | |
|
Ответы с готовыми решениями:
18
Работа с битовыми операциями
Работа с битовыми операциями |
|
Заблокирован
|
||
| 12.11.2016, 15:48 | ||
|
Я почти ничего не понял из написанного, что дано, и что получено.
Если из этих значений
0
|
||
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 16:12 [ТС] | |
|
Есть строка состоящая из бит.
00110100 00110111 .... в конце строки 00111000 после проведенной операции (неведомо какой) первый байт стал таким 00110101 (8ой бит поменялся с 0 на 1), второй байт может превратится в 01001011, либо в 01001000, либо в 01001010 Нужно понять, какая операция проводится с битами (исходные биты 00110100 00110111 .... в конце строки 00111000), чтобы получить 1 из 3 вариантов (можно и три варианта получить, если это возможно) 00110101 01001011 00110101 01001000 00110101 01001010 Если это И, то не могли бы чайнику обьяснить как это делается с длинной строкой бит? Буду сильно признателен!
0
|
|
|
1624 / 806 / 146
Регистрация: 13.06.2015
Сообщений: 3,266
|
|
| 12.11.2016, 16:13 | |
|
nimazzzy, это как???
01001011 & 01001000 = 01001000
1
|
|
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 16:30 [ТС] | |
|
Сам всю голову сломал..
![]() Добавлено через 8 минут Могли чтоть проделывать с битами при помощи 3 или 0001?
0
|
|
|
Заблокирован
|
||
| 12.11.2016, 16:46 | ||
|
Добавлено через 4 минуты Тьфу, ты ж, я второе число 2 раза посмотрел ![]() Добавлено через 1 минуту Тогда я теперь совсем не понимаю, что значит "2й байт" и три каких-то байта. Какое число получено из каких?
0
|
||
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 16:56 [ТС] | |
|
Было это
00110100 00110111 .... в конце 00111000 стало это 00110101 01001011 или это 00110101 01001000 или это 00110101 01001010 Добавлено через 8 минут Хочется очень понять, что сделали с битами.. Помогите
0
|
|
|
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
|
|
| 12.11.2016, 17:42 | |
|
garrygarry, что значит в конце?
я так понял было 00110100 00110111 00111000 стало 00110101 01001011 00111000
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 17:51 [ТС] | |
|
да, все верно, только 00111000 можно не учитывать.. строка длинная, 00111000 в конце (думаю, вдруг сдвиги какие были, не похоже..)
просто нужно понять что делали... было 00110100 00110111 стало 00110101 01001011 или было 00110100 00110111 стало 00110101 01001000 или было 00110100 00110111 00110101 01001010
0
|
|
|
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
|
|
| 12.11.2016, 18:44 | |
|
было 0 0 1 1 0 1 0 0 0 0 1 1 0 1 1 1
xor 0 0 0 0 0 0 0 1 0 1 1 1 1 1 0 0 _______________________ стало 0 0 1 1 0 1 0 1 0 1 0 0 1 0 1 1
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 19:41 [ТС] | |
|
это не совсем то..
0
|
|
|
1719 / 568 / 187
Регистрация: 12.03.2016
Сообщений: 2,169
|
|
| 12.11.2016, 19:44 | |
|
garrygarry, тогда объясни путью что надо
0
|
|
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 12.11.2016, 20:08 | |
|
garrygarry, что значит "стало так или так или так"? Почему или?
Нужно найти операцию, которая может вернуть одно из 3-х значений? (типа корень из 9 = 3 и -3) Таких операций с битами нет. Или их будет 3 штуки ![]() А чтобы получить, к примеру, 1010 из 0101, то тут вариантов много: можно сделать not, можно сделать shl 1, можно сделать xor 1111, можно сделать and 0 or 1010, можно imul ax,ax,2 (задав 0101 в ax) и т.д. Как сказал мановар, есть универсальная операция - xor. С её помощью можно получить любое число из любого. Т.е. A xor B = C. Если есть A и C, то легко найти и B = A xor C. Если надо в 2 операции, то можно то же самое сделать через and + or, т.е. (A and B1) or B2 = C. Здесь ищем так: B1 = A and C, B2 = B1 xor C. Как вариант...
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 12.11.2016, 20:56 [ТС] | |
|
Спасибо, буду пытаться.. Отпишу результат или снова обращусь
Добавлено через 1 минуту Хотел еще спросить? А сдвиг битовый что такое? Имеется в виду битовый сдвиг в огромном количестве битов
0
|
|
|
Asm/C++/Delphi/Py/PHP/VBA
|
|
| 13.11.2016, 11:14 | |
|
Это именно то и есть. Именно сдвиг, точнее не скажешь
![]() 0011010011101001 сдвигаем влево на 1, получаем 0110100111010010 (пустоту заполняем нулями, как правило), ещё сдвигаем на 3: 0100111010010000, сдвигаем ещё на 5 влево: 1101001000000000, сдвигаем вправо на 9: 0000000001101001.
0
|
|
|
0 / 0 / 0
Регистрация: 01.11.2016
Сообщений: 12
|
|
| 13.11.2016, 14:22 [ТС] | |
|
А после 9 на скока делать сдвиг?
0
|
|
|
6773 / 2741 / 385
Регистрация: 17.02.2013
Сообщений: 4,048
|
|
| 14.11.2016, 04:46 | |
|
Да успокойтесь вы. Я объясню чего хочет ТС.
У него есть длинная строка байт. Из нее он вам показывает только первых два и последний. Больше не покажет ибо страшный секрет. В строке что-то зашифровано. Какой характер имеет зашифрованная информация ТС тоже не скажет ибо опять таки страшный секрет. Что конкретно должно получится после расшифровки ТС не знает. Он знает только какой должен получится первый байт и с точностью до трех вариантов какой второй. Отсюда у ТС-а вопрос : какой алгоритм шифрования был использован и как расшифровать ? ТС полагает с чужих слов, что алгоритм простой, но и это не факт. Прониклись ? Добавлено через 7 минут Вышенаписанное я уяснил из общения с ТС на том форуме куда "ушли" Mikl.
0
|
|
| 14.11.2016, 15:31 | |
|
Не по теме: Ethereal, да, эт я понял после этого сообщения №7 :)
0
|
|
| 14.11.2016, 15:31 | |
|
Помогаю со студенческими работами здесь
19
Работа с битовыми операциями Проблема с битовыми операциями Система уравнений с битовыми операциями Замена сложения и вычитания битовыми операциями
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU
YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей.
Звучит. . .
|
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
|
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма).
На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
|
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ *
Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам
Кирхгофа, решает её и находит:
токи, напряжения и их 1 и 2 производные при t = 0;. . .
|
|
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым.
Но восстановить их можно так.
Для этого понадобится консольная утилита. . .
|
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
|
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11
— это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
|
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11
Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
|