Exercise 1: Calculate the Checksum
Suppose the data to be transmitted consists of 3 binary 8-bit blocks as follows:
1. 11010101
2. 10101010
3. 11110000
Calculate the checksum for this data. Then, write the complete data sequence, including the
checksum, to be sent.
Exercise 2: Verify Received Data
Suppose you receive a data sequence consisting of 4 binary 8-bit blocks, with the last block
being the checksum:
11010101
10101010
11110000
01101011 (checksum)
Check if this data contains any errors.
Exercise 3: Write a Checksum Calculation Program
Write a program in Python or Java to perform the following tasks:
1. Receive a sequence of binary 8-bit blocks from the user.
2. Calculate the checksum of this sequence and display the result.
3. Accept the data sequence again (including the checksum) from the user and check if it
contains any errors.
Exercise 4: Detect Transmission Errors
Suppose the initial data sequence is 10101010, 11001100, 11110000, and the checksum is
00000111. During transmission, the received data is corrupted and becomes:
10101010
11001100
11110011
00000111
Check and indicate if any errors occurred.
Exercise 5: Discuss Checksum Limitations
Describe a scenario in which a checksum fails to detect an error during data transmission.
Provide an example where two-bit errors in the data cause the sum to remain unchanged,
resulting in the data being considered correct.
Exercise 6: Calculate Checksum with 16-bit Data
Suppose the data to be transmitted consists of three 16-bit blocks as follows:
1. 1010101010101010
2. 1100110011001100
3. 1111000011110000
Calculate the 16-bit checksum and append it to the end of this data sequence.
Exercise 7: Detect Errors in Modified Data
The initial data consists of two 8-bit blocks:
11010110
00111001
The checksum is calculated and added at the end of the sequence. Suppose that during
transmission, one bit in the first block flips from 11010110 to 11011110. Check and identify
this error by recalculating the checksum.