C/Visual C - Ayuda para obtener LRC de una cadena

 
Vista:

Ayuda para obtener LRC de una cadena

Publicado por Raul Noguera (5 intervenciones) el 17/07/2008 22:38:56
saludos amigos del foro,

sabra alguien como calculo el LRC en una cadena de carecteres para ser enviada a un puerte RS-232 la cual contiene la siquiente sintaxi

STX DATA LTX LRC

gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda para obtener LRC de una cadena

Publicado por eliben (1 intervención) el 19/07/2008 15:31:50
El algoritmo LRC es (ingles):

Set LRC = 0
For each character c in the string
do
Set LRC = LRC XOR c
end do
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para obtener LRC de una cadena

Publicado por Raúl Noguera (5 intervenciones) el 19/07/2008 18:40:53
Gracias amigo por tu respuesta,

pero serias tan amable de traducirme ese algoritmo a lenguaje natural, no conozco mucha la sintaxi, ni las palabras reservadas de lenguaje visual C

por lo menos dime que significa XOR y la variable c a la cual haces refrencia en el ciclo for

gracias disculpa
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para obtener LRC de una cadena

Publicado por igor (22 intervenciones) el 19/07/2008 19:34:15
Yo desconozco el algoritmo LRC, pero en C de toda la vida esto sería:

char Texto[50]="La cadena de caracteres";
char LRC = 0;
char *p;

for(p=&Texto;*p!=NULL;p++)
{
LRC = LRC ^ *p
}

Aunque cualquier programador sabe lo que es un OR eXclusivo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda para obtener LRC de una cadena

Publicado por m0skit0 (15 intervenciones) el 20/07/2008 12:39:42
Un XOR es un OR exclusivo, es decir sólo adquiere el valor verdadero (o 1) en caso de sus dos operandos sean diferentes (1-0 o 0-1). En caso de que sean iguales, es falso (o 0). En cuanto a la variable c, es simplmente el contador del bucle. Pero vamos, si programaras, esto no te sería extraño.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar