Complemento a Uno y Complemento a Dos de un Número Binario en LabVIEW



Software Primario: LabVIEW Development Systems>>LabVIEW Full Development System
Versión de Software Primario: 7.1
Versión de Software Primario Corregido: N/A
Software Secundario: N/A

Problema:
¿Qué es el complemento a uno y el complemento a dos de un número binario? ¿Cómo opero el complemento a dos en LabVIEW?

Solución:
LabVIEW facilita la operación del complemento a dos. Simplemente pase el número entero a través de la función NOT (la cual obtiene el complemento a uno aplicando el operador NOT bit a bit en el entero) y después súmele uno a este resultado. No hay necesidad de convertir el número a un arreglo de booleanos. Note que la representación entera de ambos el valor de entrada y el valor resultante tienen que ser Enteros con Signo (I8, I16, I32 o I64) para poder utilizar el operador NOT.

Un complemento a uno y un complemento a dos son formas de representar números negativos en binario. Para formar el complemento a uno de un número, simplemente invierta cada bit. Para formar el complemento a dos, súmele uno al complemento a uno:

Ejemplo:

valor decimal: 9
valor binario: 01001
complemento a uno: 10110
complemento a dos: 10111
valor decimal: -9

La ventaja de usar el complemento a dos para representar un número negativo es que el complemento a dos puede ser utilizado en sumas o restas sin necesidad de usar un bit de signo del valor. Por ejemplo, si nosotros queremos realizar la operación decimal:
          5 + (-9) = -4
Nosotros podemos realizar la siguiente suma binaria:
          00101
+10111
-------
11100

Note que este resultado es la representación complemento a dos de -4, la cual es la respuesta a la suma decimal original.

El VI abajo muestra un ejemplo simple del cálculo de la representación complemento a dos de un entero con signo.



Ligas Relacionadas:
Labview 2013 Help: Numeric Data Types Table
Wikipedia: Complemento a dos

Archivos Adjuntos:
Simple Example For Getting a Two's Complement of a Numbertwos_complement.vi




Día del Reporte: 03/17/2014
Última Actualización: 03/17/2014
Identificación del Documento: 1BLC7RU0