Block coding involves dividing a bit stream into blocks, substituting code blocks for data blocks, and combining the code blocks. It provides error detection and ensures synchronization. 4B/5B and 8B/10B block codes map 4- and 8-bit groups to 5- and 10-bit codes. Scrambling techniques like B8ZS and HDB3 modify AMI encoding to prevent long runs of zeros from disrupting synchronization. PCM converts analog signals to digital using sampling, quantization, and encoding. It samples the signal, assigns amplitude levels, and encodes each sample as a code word. Transmission can be parallel, sending multiple bits simultaneously over multiple wires, or serial, sending one bit at a time over