An interleaver which is applied to an encoding apparatus and/or a decoding apparatus
in a data transmission/reception system comprises two banks of single-port RAM,
and a control unit for controlling writing and reading of data to and from the
two banks of RAM. The interleaver controls writing and reading of data to and from
the two banks of RAM with the control unit such that the input data, wherein permuting
from the input data into the output data is symmetrical, and which is at an arbitrary
position wherein, with regard to an integer i which is 2 or greater and integers
j and k which are 0 or greater but less than i, the residue from division by i
is j, is output as the output data at a position wherein the residue from division
by i is k. Accordingly, consecutive interleaving processing can be realized with
a small circuit size.