Описание тега gray-code

Все, что связано с кодом Грея, также известным как отраженный двоичный код, то есть n-разрядный двоичный код, в котором любое из двоичных кодовых слов 2^n отличается от следующего только на одну битовую позицию.
2 ответа

Введите 2 целых числа и получите двоичное, BRGC и расстояние Хэмминга

У меня есть все, кроме расстояния Хэмминга. Я продолжаю получать сообщение об ошибке "int() не может конвертировать не-строки с явным основанием" вот мой код: def int2bin(n): if n: bits = [] while n: n,remainder = divmod(n, 2) bits.insert(0, remaind…
12 ноя '15 в 03:02
1 ответ

Генерировать все подмножества множества, заданные двоичным представлением целого числа в C++

В C++ я ищу эффективный алгоритм для генерации всех целых чисел, так что их двоичное представление является подмножеством набора, который задается двоичным представлением целого числа N. Под эффективным я имею в виду, что я не хочу проходить цикл вс…
10 май '18 в 10:31
1 ответ

Использование __builtin_expected для проверки границ

У меня есть эта функция, которая, учитывая код Грея, возвращает следующий код Грея. Вы можете найти более полное объяснение о том, как это работает здесь. Дело в том, что я хотел сделать эту функцию приращения модульной, чтобы приращение кода Грея с…
17 июн '15 в 09:31
1 ответ

PHP Grey Code - ошибка XOR

Я написал эту функцию в php, чтобы сделать серый код числа: function c_gray($num){ $bin=decbin($num); //binary of the number $xor=array(); $xor[]=reset(str_split($bin)); //Get the first bit of binary and put it as the first element of $xor array for…
07 июн '12 в 17:53
1 ответ

Каков наиболее эффективный способ создания подмножеств?

Я хочу сделать следующее: Ввод: n, например n = 3 Вывод: {000, 001, 010, 011, 100, 101, 110, 111}, сгенерировать все подмножества, и мне все равно порядок подмножеств Я реализовал алгоритм: for (long i = 0, max = 1 << n; i < max; i++) { for…
21 дек '15 в 10:00
1 ответ

Кодировка для строк (предпочтительно значение) такая, что более близкие значения означают более похожие строки?

Я ищу кодировку, которая может закодировать каждую строку в уникальный номер, такой что -> Каждые две одинаковые строки должны иметь значения, близкие друг к другу. Каждые два значения, которые близки друг к другу, должны представлять одинаковые стр…
15 авг '17 в 08:37
1 ответ

Есть ли простой способ добавить префикс для каждого элемента массива в C?

Я решаю проблему с серым кодом. Я сделал свою логику, используя рекурсивный вызов. Все выглядит хорошо, но я не знаю, как добавить префикс "0" или "1" к каждому элементу массива. например) префикс 0: { 00, 01, 11, 10 } -> { 000, 001, 011, 010 } или …
06 май '14 в 09:00
1 ответ

Все комбинации из n двоичных значений в порядке изменения только одного компонента по сравнению с предыдущей комбинацией

Ниже приведен вектор со всеми возможными комбинациями двух двоичных значений: [(1,1),(1,0),(0,1),(0,0)] Теперь вопрос заключается в том, как я могу сгенерировать последовательность из тех же комбинаций из 2 двоичных значений, в каждом из которых изм…
12 янв '18 в 09:32
1 ответ

Нерекурсивное понимание алгоритма кода Грея

Это задание из книги алгоритмов. Дело в том, что я совершенно не знаю, с чего начать! Trace the following non-recursive algorithm to generate the binary reflexive Gray code of order 4. Start with the n-bit string of all 0’s. For i = 1, 2, ... 2^n-1,…
26 фев '14 в 11:12
0 ответов

Как упорядочить последовательности битов, чтобы минимизировать их (циклическое) расстояние

У меня есть набор из N последовательностей по 12 битов, не обязательно различающихся, например: 011001111010 000101100101 000101100101 011000111011 011011011100 110010010100 ... Мне нужно упорядочить их и назначить каждому из них отдельное число от …
19 май '18 в 09:24
2 ответа

Вывод n-го кода Грея из (n-1) -го кода Грея

Есть ли способ получить 4-битный n-й код Грея, используя (n-1) -й код Грея, используя битовые операции с (n-1) -ым кодом Грея? Например, 4-й код Грея - 0010. Теперь я хочу получить 5-й код Грея, 0110, выполняя битовые операции на 0010.
04 сен '16 в 16:47
3 ответа

Соседи в коде Грея

Есть ли алгоритм, который я могу использовать, чтобы найти соседей в коде Грея? Для небольших чисел просто хорошо написать всю таблицу, но если у меня есть число, подобное 010 110, будет слишком много, чтобы написать всю таблицу серого кода с 6 числ…
12 фев '14 в 21:40
1 ответ

Генерация целых чисел с четным весом Хэмминга (popcount) C++

Я хочу эффективно (с помощью битовых хаков) генерировать все целые числа до заданного числа k, чтобы они имели равномерный вес Хэмминга без явного вычисления их весов Хэмминга. Для меня не важно, происходит ли это в порядке возрастания или убывания.…
09 июл '18 в 11:25
0 ответов

Как использовать 64 бит в PHP

Я написал функцию, которая выведет последовательность серых кодов. Для ввода N, показывающего последние N серых кодовых чисел N-бит. Теперь, эта функция не дает правильный вывод, если ввод переходит 31, Но мне нужно, чтобы это работало хотя бы 64, К…
23 май '14 в 12:15
1 ответ

Генерировать двоичное однобитовое изменение между всеми членами

У меня вопрос. Я хочу создать двоичный список. Но между членами списка будет только одно изменение бит. oneBitAll:: Integral a => a -> [[String]] для n=2 Выход: ["00", "01", "11", "10"] ve ["00", "10", "11", "01"] п = 3 oneBitAll 3 [["000", "001", "…
27 май '16 в 15:39
2 ответа

Преобразование изображения в градациях серого в исходный цветовой формат с использованием Python

Привет! В настоящее время я работаю над тем, чтобы попытаться преобразовать изображение в оттенках серого в исходный цветовой формат, используя Open CV в Python. import cv2 img = cv2.imread('bw.jpg') img = cv2.cvtColor(img, cv2.COLOR_GRAY2RGB) cv2.i…
5 ответов

Серый код в.NET

Есть ли где-нибудь в платформе.NET встроенный тип данных Грея? Или утилита преобразования между серым и двоичным? Я мог бы сделать это сам, но если бы колесо уже было изобретено...
06 ноя '09 в 22:54
2 ответа

Как определить, являются ли два 8-битных символа серым кодом в C++?

Проблема состоит в том, чтобы определить, являются ли два 8-битных символа серыми (отличаются только на 1 бит) в C++? Я нашел элегантное решение C++: bool isGray(char a, char b) { int m = a ^ b; return m != 0 && (m & (m - 1) & 0xff) …
18 мар '15 в 04:49
2 ответа

Как преобразовать отрицательное двоичное число в его серый код

У меня есть отрицательное двоичное число, у которого есть знаковый бит, и я хочу написать программу, чтобы получить ее серый код. Однако я могу найти решение только для положительного числа. Поэтому здесь я задаю этот вопрос. Благодарю.
21 ноя '14 в 01:06
0 ответов

Преобразование серого кода, чтобы сделать его немного короче

Один из способов преобразования n-битного (обычного, инвертированного) серого кода в (n-1)-битный серый код состоит в том, чтобы повторно использовать (n-2) младшие биты и получить старший бит (n- 1) -битный серый код как XOR двух старших бит n-битн…
28 сен '17 в 09:22