[comp.protocols.ibm] LRC

glenn@welch.jhu.edu (Glenn M. Mason) (06/12/90)

Has anyone out there heard anything about Longitudinal Redundancy Check
(LRC), ISO 1155? eAny descriptive info or info on how to calculate would
be greatly appreciated.

Thanks,
Glenn Mason

Internet: glenn@welch.jhu.edu

rimola@flamingo.metaphor.com (Carlos Rimola) (06/15/90)

In article <9006111850.AA21192@lilac.berkeley.edu> hank%bitnic.BITNET@lilac.berkeley.edu writes:
>Has anyone out there heard anything about Longitudinal Redundancy Check
>(LRC), ISO 1155? eAny descriptive info or info on how to calculate would
>be greatly appreciated.
>
>Thanks,
>Glenn Mason
>
>Internet: glenn@welch.jhu.edu

LRC as used by IBM 270X and 370X Async/Bisync is simply an odd or even
parity check performed accross a stream of bytes.  The LRC check byte is
transmitted following the end of transmission character (e.g. ETX).  For
example, transmitting the string "ABCD" would result in an LRC byte of
B'00000100':

	A = B'01000001'
	B = B'01000010'
	C = B'01000011'
	D = B'01000100'
	---------------
      LRC = B'00000100'

The algorithm for calculating the LRC is simply to XOR each of the bytes
in the input stream.  The first XOR should be made against X'00' for even
parity and X'FF' for odd parity.

Carlos Rimola

rimola@flamingo.UUCP (Carlos Rimola) (06/15/90)

In article <9006111850.AA21192@lilac.berkeley.edu>
        hank%bitnic.BITNET@lilac.berkeley.edu writes:
>Has anyone out there heard anything about Longitudinal Redundancy Check
>(LRC), ISO 1155? eAny descriptive info or info on how to calculate would
>be greatly appreciated.
>
>Thanks,
>Glenn Mason
>
>Internet: glenn@welch.jhu.edu

LRC as used by IBM 270X and 370X Async/Bisync is simply an odd or even
parity check performed accross a stream of bytes.  The LRC check byte is
transmitted following the end of transmission character (e.g. ETX).  For
example, transmitting the string "ABCD" would result in an LRC byte of
B'00000100':

        A = B'01000001'
        B = B'01000010'
        C = B'01000011'
        D = B'01000100'
        ---------------
      LRC = B'00000100'

The algorithm for calculating the LRC is simply to XOR each of the bytes
in the input stream.  The first XOR should be made against X'00' for even
parity and X'FF' for odd parity.

Carlos Rimola