Свързани въпроси 'bit-manipulation'

предупреждение: ляво преместване брой ›= ширина на типа
Аз съм много нов в работата с битове и съм останал на следното предупреждение при компилирането: 7: warning: left shift count >= width of type Моят ред 7 изглежда така unsigned long int x = 1 << 32; Това би имало...
70702 изгледи

DCPU-16 Побитово преместване
Опитвам се да науча DCPU. ;Set b to 1 SET B,1 ;00001 (1) SHL B,1 ;00010 (2) SHL B,1 ;00100 (4) SHL B,1 ;01000 (8) SHL B,1 ;10000 (16) Всичко, което правя, е да превключвам наляво, така че не трябва ли просто да се удвоява при всяка смяна. В...
275 изгледи

Броене на битове на произволно големи положителни цели числа в C#
Има много реализации на броене на битове, но в моя случай трябва да тествам дали произволно голямо число съдържа най-много два зададени бита. Написах следната функция, която върши работата и изглежда доста бърза, но исках да разбера дали може да...
474 изгледи

Ефективен начин за ИЛИ съседни битове в 64-битово цяло число
Това, което искам да направя, е да взема 64-битово цяло число без знак, състоящо се от двойки битове, и да създам от него 32-битово цяло число, съдържащо 0, ако и двата бита в съответната двойка са 0 и 1 в противен случай. С други думи, конвертирайте...
3950 изгледи
schedule 17.09.2022

Обяснение за играта Stone Nim
Правех проблем с кодирането, който по някакъв начин преминах всички тестови случаи, но не разбрах какво точно се случва. Проблемът беше малък обрат в класическата игра на nim: Има двама играчи A и B. Има N купчини различни камъни. Всеки играч...
440 изгледи

Преобразуване на cpp_int в двоичен низ [затворено]
Как мога да конвертирам boost cpp_int (>1000 бита) към неговото двоично представяне в низ (напр. "1011....11001" )? Опитах да го конвертирам от std::bitset , но не работи при по-големи числа Редактиране - решение: Това съдържа решение...
387 изгледи

Програмиране: Минимални стъпки, необходими за преобразуване на двоично число в нула
Работех върху упражнение по програмиране и бях заседнал в намирането на правилния алгоритъм. Ето го проблема: Дадено е десетично число, колко минимални възможни стъпки са необходими, за да се преобразува това в нула при условие:...
11824 изгледи
schedule 27.09.2022

Кой е най-добрият начин [най-добра времева сложност] за генериране на всички двоични маски с дадена дължина в Python3?
Искам да генерирам всички двоични маски с дадена дължина, т.е. за n = 3 бих искал да генерирам 000, 001, 010, 011, 100, 101, 110, 111. Текущият ми код изглежда така, доста стар стил, не мога да разбера как да направя същото с f-низове или нещо...
75 изгледи
schedule 26.09.2022

Одобрен синтаксис за манипулиране на необработен указател
Създавам процедура за копиране на блок памет и трябва да се справя с блокове необработена памет на ефективни парчета. Въпросът ми не е за специализираната процедура за копиране, която правя, а за това как правилно да изследвам подравняването на...
494 изгледи

Четене на битов диапазон от байтов масив
Търся метод, който ще ми позволи да получа набор от битове. Например, ако имам двоичните данни 0 1 0 1 1 0 1 1 1 1 0 1 0 1 1 1 (2 байта) Може да се наложи да получа данни от диапазон бит 3 до 9. С други думи бих се интересувал от: 0 1 0...
9144 изгледи
schedule 07.10.2022

Ефективна проверка на инварианта на Bitflag (възможно битово въртене)
Имам byte , който използвам за съхраняване на битови флагове. Имам 8 флага (по един за всеки бит), които могат да бъдат разделени на 4 двойки от 2 флага, които се изключват взаимно. Подредих битовите флагове по следния начин: ABCDEFGH 10011000...
173 изгледи
schedule 09.10.2022

Проблем с C++ 64bit
Имам следния код: tmp_data = simulated_data[index_data]; unsigned char *dem_content_buff; dem_content_buff = new unsigned char [dem_content_buff_size]; int tmp_data; unsigned long long tmp_64_data; if (!(strcmp(dems[i].GetValType(), "s32"))) {...
202 изгледи
schedule 06.11.2022

Приложете битово изместване на 32-битова стойност, като използвате 16-бита
Работя на език, който може да прави двоична математика само на 16-битови числа, но трябва да използвам двоична математика на 32-битови стойности, така че трябва да направя някои от моите собствени функции. Например внедрих двоично ИЛИ като:...
568 изгледи

Как да изчисля (ръчно) побитово и и побитово или между две числа в шестнадесетична форма, без да ги преобразувам в двоична на която и да е стъпка?
Да кажем a = 0x6db7 и b = 0x736 . Как да изчислим a&b и a|b ръчно? Наясно съм с побитовите операции и знам, че това може да се реши чрез преобразуване на a и b в тяхната двоична форма и след това побитови операции и след това отново...
5472 изгледи
schedule 19.11.2022

Модификация на мощност 2 при побитови оператори?
Как mod of power of 2 работи само върху битове от по-нисък ред на двоично число ( 1011000111011010 )? Какво е това число на мод 2 на степен 0, 2 на степен 4? Какво общо има степента на 2 с оператора модул? Притежава ли специално свойство?...
62919 изгледи

Използване на буфера на шаблона за обединяване на динамична сянка
Създавам splitscreen coop 2D от най-добрата игра с LWJGL. В момента се опитвам да измисля интелигентен начин за обединяване на две зрителни полета с буфера на шаблона. Целият смисъл е, че можете да видите това, което другият играч може да види....
551 изгледи

Как да проверите дали определен бит е зададен в C#
В C# имам 32-битова стойност, която съхранявам в int. Трябва да видя дали е зададен определен бит. Битът, от който се нуждая, е 0x00010000 . Измислих това решение: Ето какво търся: Hex: 0 0 0 1 0 0 0 0 0...
19439 изгледи
schedule 09.12.2022

Обединете стойностите на битовите полета с двоично ИЛИ
Имам таблица с int стойности, използвани като битови полета (където всеки бит е флаг). Сега бих искал да ги агрегирам с двоична операция (в моя случай ИЛИ), така че: SELECT 1 AS bitfield INTO #TABLE UNION ALL SELECT 1 + 2 + 8 + 32 UNION ALL...
1340 изгледи

Примери за това, когато побитово swap() е лоша идея?
Не трябва да третирате обектните указатели като указатели към необработени двоични данни в ООП езици, включително C++. Обектите са "повече от" тяхното представяне. Така, например, swap ing на два обекта чрез размяна на техните байтове е...
1312 изгледи
schedule 06.11.2022

Трябва да знам как да направя една много специфична побитова функция много бързо
Изпълнявам побитова функция на 32- и 64-битови цели числа и се заклещих при писането на метод ( setValueAt(index, newState) ), който задава бита при индекс index на 1 , ако newState е true , или 0 , ако newState е false . Каква побитова...
76 изгледи
schedule 14.11.2023