los valores decimal codificado en binario utilizan un patrón binario para representar los dígitos del cero al nueve. Como Visual Basic no utiliza el tipo de datos BCD, que no tiene una función incorporada que convierte los valores BCD a los valores decimales. Sin embargo, usted puede programar su propia función que aceptar la entrada con formato como un valor BCD y romperlo en cuartetos de cuatro bits, o trozos, y luego convertir esos mordiscos a un número decimal.
Instrucciones
1 Tipo "BCD_TO_INT Función Pública (entrada ByVal como de largo)" para abrir su función. Use un tipo de datos numéricos más pequeños en lugar de largo para ahorrar espacio si sabe que su programa no funcionará con grandes números.
2 Tipo "temp As Integer Dim" y "Dim decNum como entero" para declarar dos enteros en su función. Tipo "Dim strNum como String =" "" para declarar una cadena e inicializar con ningún texto.
3 Tipo "Si bien no num = 0" para abrir un bucle while que se repetirá hasta que el número de la función recibe se convierte en cero. Tipo "Para i = 0 a 3" en la siguiente línea para comenzar un bucle contado.
4 Tipo "temp = num 10 Mod" y "num / = 10" en la siguiente línea. La primera línea aislar el dígito del extremo derecho del número BCD y almacenarlo en la "temp" variable. La siguiente línea se desplazará el decimal del número BCD a la izquierda.
5 Tipo "Si temp = 1 A continuación," para abrir una comprobación condicional que determina si el programa tiene que añadir al valor de su número decimal. Dado que sólo se necesita agregar al "temp" es igual a uno, no incluya una cláusula de "elseif" para temp igualando a cero.
6 Escriba el siguiente código en su "if":
Si temp = 1 A continuación,
Si i = 0 Entonces
decNum += 1
ElseIf i = 1 A continuación,
decNum += 2
ElseIf i = 2 A continuación,
decNum += 4
ElseIf i = 3 A continuación,
decNum += 8
Terminara si
Terminara si
Estas condiciones se suman el valor decimal correspondiente a su total basado en cuál de los cuatro bits en cada cuarteto se comprueba. La variable "decNum" contendrá el valor decimal del cuarteto de cuatro bits.
7 Tipo "Siguiente i" en la siguiente línea de decirle a su bucle "for" para pasar al siguiente dígito en el mordisco. Cuando el programa ha comprobado todos los cuatro bits, se habrá calculado el siguiente dígito de su decimal. Tipo "strNum = decNum y strNum" para añadir este valor en el lado izquierdo de la cadena. Tipo "decNum = 0" para restablecer esta variable antes de la próxima iteración de su bucle while.
8 Tipo "End While" para cerrar el bucle while. Tipo "decNum = strNum" a la fuerza de Visual Basic para convertir la cadena que sostiene su valor decimal en un número entero y almacenarlo en el "decNum" variable. A continuación, puede manipular esta variable, según sea necesario. Tipo "Volver decNum" para enviar el valor decimal de nuevo a donde su programa llama a su función desde. Tipo "End Function" para cerrar la función.
Consejos y advertencias
- números BCD tienen ocho bits. "0000 0000" representa cero y "0000 1001" representa nueve. Desde los cuatro bits de más a la izquierda son iguales a cero, no es necesario tener en cuenta en su programa. Esto ahorra espacio en la memoria y le permite aceptar el ingreso de números más grandes. Si quieres ocho valores de bit de entrada, cambiar su bucle "for" a "Para i = 0 a 7" para manejar la carga adicional.