  We present a novel technique for encoding and decoding constant weight binary
codes that uses a geometric interpretation of the codebook. Our technique is
based on embedding the codebook in a Euclidean space of dimension equal to the
weight of the code. The encoder and decoder mappings are then interpreted as a
bijection between a certain hyper-rectangle and a polytope in this Euclidean
space. An inductive dissection algorithm is developed for constructing such a
bijection. We prove that the algorithm is correct and then analyze its
complexity. The complexity depends on the weight of the code, rather than on
the block length as in other algorithms. This approach is advantageous when the
weight is smaller than the square root of the block length.
