T
Tulipmania
Guest
Hola,
Necesito ayuda con este módulo.Es para convertir un valor binario a su equivalente BCD asignar a cada dígito de un elemento de una matriz.Por ejemplo, el valor binario (11111111 = FF hex) es equivalente a (255) por lo que el decimal de 5 dígitos se le asigna al primer elemento de la matriz ...... 5 segundos se le asigna al siguiente elemento y 2 se asigna a el tercero.el problema es que el módulo es capaz de asignar sólo los dos primeros dígitos y nunca llega a asignar la tercera cifra para el tercer elemento de la matriz.
He observado que, si bien simulando el módulo .. ¿y qué tiene de malo?
el programa;
# include <reg52.h>void main (void)
(
int x; / / Array Índice
binvalue unsigned int = 0x00ff / / Valor binario que desea convertir y muestra
INT_DIGITS int [3]; / / Declaración de la matriz de dígitos separados
int * INT_PTR; / / Array puntero
x = 0; / / Inicializar el puntero para señalar el primer elemento
hacer
(
INT_PTR = & INT_DIGITS [x]; / / Set INT_PTR para apuntar a los elementos indexados en INT_DIGITS
* INT_PTR = (% binvalue 10); / / Asignar el valor ASCII para el elemento
binvalue = binvalue/10;
x;
)
while (binvalue> = 10);
)
Necesito ayuda con este módulo.Es para convertir un valor binario a su equivalente BCD asignar a cada dígito de un elemento de una matriz.Por ejemplo, el valor binario (11111111 = FF hex) es equivalente a (255) por lo que el decimal de 5 dígitos se le asigna al primer elemento de la matriz ...... 5 segundos se le asigna al siguiente elemento y 2 se asigna a el tercero.el problema es que el módulo es capaz de asignar sólo los dos primeros dígitos y nunca llega a asignar la tercera cifra para el tercer elemento de la matriz.
He observado que, si bien simulando el módulo .. ¿y qué tiene de malo?
el programa;
# include <reg52.h>void main (void)
(
int x; / / Array Índice
binvalue unsigned int = 0x00ff / / Valor binario que desea convertir y muestra
INT_DIGITS int [3]; / / Declaración de la matriz de dígitos separados
int * INT_PTR; / / Array puntero
x = 0; / / Inicializar el puntero para señalar el primer elemento
hacer
(
INT_PTR = & INT_DIGITS [x]; / / Set INT_PTR para apuntar a los elementos indexados en INT_DIGITS
* INT_PTR = (% binvalue 10); / / Asignar el valor ASCII para el elemento
binvalue = binvalue/10;
x;
)
while (binvalue> = 10);
)