2011-04-23 14 views
5

Necesito convertir números, positivos y negativos, en formato binario, por lo tanto, 2 en "00000010", y -2 en "11111110", por ejemplo. No necesito más de 12 bits más o menos, así que si la cuerda es más larga que eso, puedo recortar los primeros bits de signo. Parece que Integer.toBinaryString() hará números positivos, pero ¿hay alguno que pueda hacer cosas negativas?Cómo convertir un entero negativo en una forma binaria de complemento a dos? (Java)

Respuesta

10

Integer.toBinaryString funciona también para negativos. :-) Por ejemplo, Integer.toBinaryString(-2) devuelve 11111111111111111111111111111110.

Si toma los 12 caracteres de la derecha, tiene los 12 bits de abajo, según sea necesario.

Cuestiones relacionadas