La medición angular binaria ( BAM ) [ 1 ] (y el sistema de medición angular binaria , BAMS [ 2 ] ) es una medida de ángulos que utiliza números binarios y aritmética de punto fijo , en la que una vuelta completa está representada por el valor 1.
Estas representaciones de ángulos se utilizan a menudo en aplicaciones de control numérico y procesamiento digital de señales , como robótica, navegación, [ 3 ] videojuegos, [ 4 ] y sensores digitales, [ 5 ] aprovechando la reducción modular implícita que se logra al truncar números binarios. También se puede utilizar como la parte fraccionaria de un número de punto fijo que cuenta el número de rotaciones completas de, por ejemplo, las ruedas de un vehículo o un husillo .
Representación
Fracción sin signo de turno
En este sistema, un ángulo se representa mediante un número binario sin signo de n bits en la secuencia 0, ..., 2 n −1, que se interpreta como un múltiplo de 1/2 n de una vuelta completa; es decir, 360/2 n grados o 2π/2 n radianes. El número también puede interpretarse como una fracción de una vuelta completa entre 0 (inclusive) y 1 (exclusivo), representada en formato binario de punto fijo con un factor de escala de 1/2 n . Al multiplicar esa fracción por 360° o 2π, se obtiene el ángulo en grados en el rango de 0 a 360, o en radianes en el rango de 0 a 2π, respectivamente.
Por ejemplo, con n = 8 , los enteros binarios 00000000 2 (0,00), 01000000 2 (0,25), 10000000 2 (0,50) y 11000000 2 (0,75) representan las medidas angulares 0°, 90°, 180° y 270°, respectivamente.
La principal ventaja de este sistema es que la suma o resta de valores numéricos enteros con la aritmética de n bits utilizada en la mayoría de las computadoras produce resultados consistentes con la geometría de los ángulos. Es decir, el resultado entero de la operación se reduce automáticamente módulo 2n , lo que coincide con el hecho de que los ángulos que difieren en un número entero de vueltas completas son equivalentes. Por lo tanto , no es necesario comprobar ni manejar explícitamente el desbordamiento, como debe hacerse al usar otras representaciones (como el número de grados o radianes en coma flotante). [ 6 ]
Para n = 16 , la unidad de medida igual a 1 / 65,536 de un círculo a veces se llama Furman , en honor a Alan T. Furman, el matemático estadounidense que adaptó el algoritmo CORDIC para aritmética de punto fijo de 16 bits alrededor de 1980. [ 7 ] Es ligeramente menor que 20 segundos de arco .
Fracción con signo de giro

Alternativamente, los mismos n bits también pueden interpretarse como un entero con signo en el rango −2 n −1 , ..., 2 n −1 −1 en la convención de complemento a dos . También pueden interpretarse como una fracción de una vuelta completa entre −0,5 (inclusive) y +0,5 (exclusivo) en formato de punto fijo con signo, con el mismo factor de escala; o una fracción de media vuelta entre −1,0 (inclusive) y +1,0 (exclusivo) con factor de escala 1/2 n −1 .
En cualquier caso, estos números pueden interpretarse como ángulos entre −180° (inclusive) y +180° (exclusivo), donde −0,25 equivale a −90° y +0,25 a +90°. El resultado de sumar o restar los valores numéricos tendrá el mismo signo que el resultado de sumar o restar ángulos, una vez reducidos a este rango. Esta interpretación elimina la necesidad de reducir los ángulos al rango [ −π, +π ] al calcular funciones trigonométricas .
Ejemplo
En los datos orbitales transmitidos por el Sistema de Posicionamiento Global (GPS) , los ángulos se codifican mediante medición angular binaria. En concreto, cada satélite transmite una efeméride que contiene sus seis elementos orbitales keplerianos . Cuatro de estos son ángulos, que se codifican como ángulos binarios de 32 bits. En los datos del almanaque, de menor precisión , se utilizan ángulos binarios de 24 bits.
Véase también
- Grado , 1/400 de una vuelta completa
- Escalado binario
- CORDIC , algoritmos para funciones trigonométricas
- Polígono construible , incluyendo todos los polígonos con 2n lados .
Referencias
- ↑ "Medición angular binaria" . Archivado del original el 21/12/2009.
- ↑ "Sistema de medición angular binario" . acrónimos.thefreedictionary .
- ↑ LaPlante, Phillip A. (2004). «Capítulo 7.5.3, Medida angular binaria» . Diseño y análisis de sistemas en tiempo real . Wiley. ISBN 0-471-22855-9.
- ↑ Sanglard, Fabien (13 de enero de 2010). "Revisión del código de Doom 1993 - Sección "Muros""" . fabiensanglard.net .
- ↑ "Módulo de brújula Hitachi HM55B (#29123)" (PDF) . www.hobbyengineering.com . Sensor de brújula digital Parallax (#29123). Parallax, Inc. Mayo de 2005. Archivado del original (PDF) el 11 de julio de 2011 , vía www.parallax.com.
- ↑ Hargreaves, Shawn [en polaco] . "Ángulos, números enteros y aritmética modular" . blogs.msdn.com. Archivado del original el 30 de junio de 2019. Consultado el 5 de agosto de 2019 .
- ↑ Furman, Alan T. "El algoritmo córdico para geometría polar de punto fijo" (PDF) . FORTH Dimensions . 4 : 14–15 . Consultado el 16 de enero de 2009 .
- Unidades de ángulo plano
- Aritmética binaria