Мне нужно преобразовать числа, положительные и отрицательные, в двоичный формат, например, 2 в «00000010» и -2 в «11111110». Мне не нужно больше 12 бит или около того, поэтому, если строка длиннее, я могу просто обрезать начальные биты знака. Кажется, что Integer.toBinaryString()
будет делать положительные числа, но есть ли тот, который может делать отрицательные?
Как преобразовать отрицательное целое число в двоичную форму дополнения до двух? (Джава)
Ответы (1)
Integer.toBinaryString
работает и для негативов. :-) Например, Integer.toBinaryString(-2)
возвращает 11111111111111111111111111111110.
Если вы возьмете крайние правые 12 символов, у вас будут младшие 12 бит, как и требуется.
person
Chris Jester-Young
schedule
23.04.2011