13 lines
393 B
Plaintext
13 lines
393 B
Plaintext
BEGIN
|
|
OP GRAY = (BITS b) BITS : b XOR (b SHR 1); CO Convert to Gray code CO
|
|
OP YARG = (BITS g) BITS : CO Convert from Gray code CO
|
|
BEGIN
|
|
BITS b := g, mask := g SHR 1;
|
|
WHILE mask /= 2r0 DO b := b XOR mask; mask := mask SHR 1 OD;
|
|
b
|
|
END;
|
|
FOR i FROM 0 TO 31 DO
|
|
printf (($zd, ": ", 2(2r5d, " >= "), 2r5dl$, i, BIN i, GRAY BIN i, YARG GRAY BIN i))
|
|
OD
|
|
END
|