As the amount of data being transmitted over communications networks continues to increase, the dispersive nature of the channels (copper, fiber-optic or wireless) is becoming ever more important in determining the quality of the signal. The use of precoding and signal shaping techniques can significantly enhance signal quality.