Tag: BIT-MANIPULATION
La negación a nivel de bits (~) está bien definida en lenguajes que definen una longitud de bits específica y un formato para los enteros. Como en Python 3 los enteros pueden tener cualquier longitud, tienen por definición un número variable de bits. Internamente, creo que Python utiliza al menos . . . Read more
En Elementos de Entrevistas de Programación en Java, los autores dicen: “Escribir un programa para contar el número de bits que están establecidos en 1 en un entero no negativo es una buena manera de familiarizarse con los tipos primitivos”. ¿Por qué califican esto como “no negativo”?
Obtener un entero sin signo de 32 bits. Invertir todos los bits (0->1 y 1->0) y devolver el resultado como un entero sin signo. Tomemos 1 como ejemplo, como un entero sin signo de 32 bits es 00000000000000000000000000000001 y al invertir los bits obtenemos 11111111111111111111111111111110 que, a su vez, es . . . Read more
Si tengo que comparar algunos bits con un cierto entero n, ¿cómo lo hago? Por ejemplo: necesito ver si los bits a[3:0] son mayores que n. Hasta ahora tengo esto (y sé que no funciona): c while( ((a >> 0) & 1) > n ); Soy nuevo en esto y . . . Read more
Me gustaría comprobar el valor del quinto y cuarto bit empezando desde la izquierda en cadenas como esta: value: "00001101100000000000000001000110" value: "00000101100000000000000001000110" value: "00010101100000000000000001000110" El valor se genera como una cadena de esta manera: msg.value = bitset<32>(packet.status()).to_string(); para ser enviado como un nodo ROS y recibido como una cadena. ¿Puedo . . . Read more