Digital Communication Over Fading Channels