Ejemplo Para ajustar el parámetro 1.25 en –34,5
El primer carácter del cálculo de
se toma como valor inicial o resultante. El siguiente carácter es
en binario), sobre el que actúa ahora el operador exclusivo
valor resultante previo, se produce un nuevo resultado de 00000001 en
binario.
En la siguiente tabla se muestra el cálculo completo:
Carácter
0
1
2
5
–
3
4
.
5
ETX
El valor final es el
que 31 (los caracteres
Cuando el resultado final
suma 32. En este ejemplo, 0011 0100 es el valor decimal 52, superior a 31, por
lo que es el valor final de
mensaje completo será el siguiente:
Control
Dirección
EOT
1
1
2
2
No incluido en el cálculo
Ejemplo Programa QuickBasic para calcular el
mess$ = CHR$(4)+"1122"+CHR$(2)+"0125"+"-34,5"+CHR$(3)
bcc% = 0
FOR n% = 7 to LEN(mess$)'start at the character after 'chr$(2).
bcc% = bcc% XOR ASC(MID$(mess$, n%, 1))
NEXT
IF bcc% 32 THEN bcc% = bcc% + 32
mess$ = mess$ + CHR$(bcc%)
PRINT mess$
UD78 User Guide
Issue code: 78ne1
es
BCC
Valor binario Resultado XOR
0011 0000
0011 0001
0000 0001
0011 0010
0011 0011
0011 0001
0000 0110
0010 1101
0010 1011
0011 0011
0001 1000
0011 0100
0010 1100
0010 1110
0000 0010
0011 0101
0011 0111
0000 0011
0011 0100
siempre que su valor decimal equivalente sea mayor
BCC
,
de 00 a 31 se utilizan como códigos de control).
ASCII
produce un valor decimal menor de 32, se
XOR
. El valor decimal 52 es el carácter
BCC
Control
Parámetro
STX
0
1
2
5
Incluido en el cálculo
BCC
(00110000 en binario), cuyo valor
0
1
(
OR
XOR
. Así, el
4
Datos
Control
–
3
4
.
5
ETX
(00110001
). Con el
BCC
4
Resulta
do
A-7