1) Errors can occur during data transmission from a transmitter to receiver due to noise that can flip bits from 0 to 1 or vice versa. 2) To detect and correct errors, error detecting and correcting codes add additional redundant bits to the data transmitted. Common techniques include parity checks and cyclic redundancy checks. 3) Parity bits are added such that the total number of 1s in the data is either even or odd to allow error detection. Cyclic redundancy checks calculate a checksum to detect errors.