3
$\begingroup$

I'm preparing for my exams I stumbled across this exercise. Now I can't seem to figure it out. Anybody can help me ?

The exercise:

For the 8bit data word: 00111001 the check bits are: 0111. Now if the word is read from the memory and the check bits are 1101, what is the dataword?

The text is translated from another language to English.

I started by doing a check :

The entire word is the dataword (8 bits) combined with the check (4 bits).

In this case: 0 0 1 1 0 1 0 0 1 1 1 1 (the check bits on position 1, 2, 4 and 8, with the right bit being the least significant bit)

Then the check itself:

The check consists of searching for all the bit that have the value one from the dataword in the combined word. It can be seen that position 3 7 9 and 10 have the value one and didn't come from the check. These 4 values are written binary and added up. When this is done. the check is found again. (To confirm that this method works)

3: 0 0 1 1

7: 0 1 1 1

9: 1 0 0 1

10: 1 0 1 0


0 1 1 1

So this is correct (Just to see if this method is correct)

Then I have another check (1101), but how can I find the data word ?

Thx in advance

$\endgroup$
1
$\begingroup$

How I did it was: Use the original data word and fill in the new check bits. :

001111001101

Then again get the positions where the 1s are and convert that number to binary:

1 : 0 0 0 1

3 : 0 0 1 1

4 : 0 1 0 0

7 : 0 1 1 1

8 : 1 0 0 0

9 : 1 0 0 1

10: 1 0 1 0


1 0 1 0

So this means that the 10th bit is wrong

Since I don't have the actual solution, i do not know if this is correct, bit it fits the way I learned how to do this.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.