Hamming Codes from Octal Numbers

Thread Starter

GoldenPandaWars

Joined Jul 17, 2016
3
I am currently struggling to learn hamming codes for my next semester of study and need help with a few questions.

I have to correct the octal numbers: 0766 and 6545

I am given the information of the parity bits

  • Parity bit 1 = odd
  • Parity bit 2 = odd
  • Parity bit 4 = even
  • Parity bit 8 = even

However whenever I try to solve this I screw up somewhere in my working.

If someone could answer these two for me and use one of them as an example of how to work it out It would be very much appreciated. My Holiday's finish on the 22th and I need to be able to understand how this works before then.
 

Papabravo

Joined Feb 24, 2006
21,225
Can you locate the data bits and the parity bits for us in the given numbers? Do you think the problem statement is in some kind of "standard format" that we should obviously know about?
 

Thread Starter

GoldenPandaWars

Joined Jul 17, 2016
3
So I am assuming I would convert 0776 from octal to binary

1 2 3 4 5 6 7 8 9
0 1 1 0 1 1 1 1 1

and therefore 1,2,4,8 are parity bits and 3,5,6,7,9 are data bits
 

Thread Starter

GoldenPandaWars

Joined Jul 17, 2016
3
This is a brand new concept to me as I was told to research online on how this works so I am assuming that this is the format as I was given this image as part of the question
 

Attachments

WBahn

Joined Mar 31, 2012
30,058
I am currently struggling to learn hamming codes for my next semester of study and need help with a few questions.

I have to correct the octal numbers: 0766 and 6545

I am given the information of the parity bits

  • Parity bit 1 = odd
  • Parity bit 2 = odd
  • Parity bit 4 = even
  • Parity bit 8 = even
However whenever I try to solve this I screw up somewhere in my working.

If someone could answer these two for me and use one of them as an example of how to work it out It would be very much appreciated. My Holiday's finish on the 22th and I need to be able to understand how this works before then.
How can we possibly tell you where you screw up somewhere in your working when you don't show us any of your working?!

Do you understand which bits are covered by each parity bit?

It appears you are working with a Hamming(15,4) code, correct?

Can you convert the octal representation into its equivalent binary representation?

Above all else -- SHOW YOUR WORK!!
 

WBahn

Joined Mar 31, 2012
30,058
So I am assuming I would convert 0776 from octal to binary

1 2 3 4 5 6 7 8 9
0 1 1 0 1 1 1 1 1

and therefore 1,2,4,8 are parity bits and 3,5,6,7,9 are data bits
Depends on if you are counting from lsb to msb or the other way around.

Also, be sure that you pad things out to the full 15-bit width.
 

Papabravo

Joined Feb 24, 2006
21,225
So I am assuming I would convert 0776 from octal to binary

1 2 3 4 5 6 7 8 9
0 1 1 0 1 1 1 1 1

and therefore 1,2,4,8 are parity bits and 3,5,6,7,9 are data bits
That is a very unusual and counter intuitive bit numbering. So is the total length of the code word 15 bits or 9 bits? If it was 15 bits there should be five octal digits. If you are just showing the data bits and you have to compute the parity bits you should say that. Your original examples imply 12 bits of something, but I still can't figure out what problem you are trying to solve.
 
Last edited:

WBahn

Joined Mar 31, 2012
30,058
That is a very unusual and counter intuitive bit numbering.
Hamming codes number bits starting with 1 instead of 0 so that at least one bit is set in each bit number.

It's not uncommon for bits to be numbered msb to lsb in coding theory. I think the reason is that the mathematicians that first developed the theoretical underpinnings just didn't think in terms of binary bit weightings, but rather in terms of matric operations.
 

hp1729

Joined Nov 23, 2015
2,304
Interesting. I didn't realize there were so many ways to apply Hamming codes. This is somewhat different than DEC used on their memory boards (16 data + 8 syndrome bits) and different still from the likes of a 74ALS616 ("modified Hamming code").

Is there some reason in a classroom they teach systems that are never used? Silly me, I guess. If I were teaching a class I would use chips that actually exist as examples. Does anybody use the (7,4) system? I don't even remember seeing it in teletypes.
 
Last edited:

nsaspook

Joined Aug 27, 2009
13,272
Is there some reason in a classroom they teach systems that are never used? Silly me, I guess. If I were teaching a class I would use chips that actually exist as examples. Does anybody use the (7,4) system? I don't even remember seeing it in teletypes.
They must teach the general principle as error correction is a very wide subject. A few years back I worked on an simple low-security anti-counterfeit/copying system that used the SRAM of a uC to generate a special (at least 16 bit) unique key for each controller chip from the power up state (that's not completely random) of static memory. The process of finding the key requires quite different levels of error correction from communications or digital storage as the probability of the selected bit states changing from test to test is high while looking for a unique identifier.

This is a similar system.
https://www.uni-ulm.de/fileadmin/we...t.125/staff/mueelich/Handouts_Svetlogorsk.pdf
https://en.wikipedia.org/wiki/Physical_unclonable_function
 
Last edited:

WBahn

Joined Mar 31, 2012
30,058
Interesting. I didn't realize there were so many ways to apply Hamming codes. This is somewhat different than DEC used on their memory boards (16 data + 8 syndrome bits) and different still from the likes of a 74ALS616 ("modified Hamming code").

Is there some reason in a classroom they teach systems that are never used? Silly me, I guess. If I were teaching a class I would use chips that actually exist as examples. Does anybody use the (7,4) system? I don't even remember seeing it in teletypes.
One thing that you need to keep in mind is that toy systems are often used in many, many fields for educational purposes so that the systems are easy to explain and work with by hand. As long as how the toy systems scale to practical systems is also covered, its a valuable approach.
 

hp1729

Joined Nov 23, 2015
2,304
One thing that you need to keep in mind is that toy systems are often used in many, many fields for educational purposes so that the systems are easy to explain and work with by hand. As long as how the toy systems scale to practical systems is also covered, its a valuable approach.
I guess it has been a long time for me. I only remember being taught practical stuff. Stuff straight from data books. This also taught us the value of data books (back when people oriented data books).
 

WBahn

Joined Mar 31, 2012
30,058
I guess it has been a long time for me. I only remember being taught practical stuff. Stuff straight from data books. This also taught us the value of data books (back when people oriented data books).
Well, I for one would have hated to try to learn something like asymmetric cryptography using "practical" stuff (i.e., working with values containing literally hundreds of digits) right from the get-go. I think you get a much better understanding of the concepts using values that you can work with by hand, or even in your head, rather than values that you have no reasonable choice but to use canned software routines (even if you wrote them -- which itself would fall outside of "practical" stuff).

Often (not always), starting from data books leads to understanding little more than "what" something does without a solid understanding of "how" it does it or "why" it does it a certain way. To be sure, the opposite also happens when too much emphasis is placed on naked theory and practical application is neglected (and there is WAY too much of that in today's engineering classrooms, AFAIAC). Engineering education should strive for a reasonable balance between the two.
 

hp1729

Joined Nov 23, 2015
2,304
Well, I for one would have hated to try to learn something like asymmetric cryptography using "practical" stuff (i.e., working with values containing literally hundreds of digits) right from the get-go. I think you get a much better understanding of the concepts using values that you can work with by hand, or even in your head, rather than values that you have no reasonable choice but to use canned software routines (even if you wrote them -- which itself would fall outside of "practical" stuff).

Often (not always), starting from data books leads to understanding little more than "what" something does without a solid understanding of "how" it does it or "why" it does it a certain way. To be sure, the opposite also happens when too much emphasis is placed on naked theory and practical application is neglected (and there is WAY too much of that in today's engineering classrooms, AFAIAC). Engineering education should strive for a reasonable balance between the two.
Re: asymmetric cryptography
I can see that point.
 

WBahn

Joined Mar 31, 2012
30,058
This is a brand new concept to me as I was told to research online on how this works so I am assuming that this is the format as I was given this image as part of the question
Haven't seen you back since this post. Have you done any research online on how this works? If so, what have you learned? If not, is that because you think asking strangers in an online forum to give you the answer constitutes research?
 

hp1729

Joined Nov 23, 2015
2,304
Haven't seen you back since this post. Have you done any research online on how this works? If so, what have you learned? If not, is that because you think asking strangers in an online forum to give you the answer constitutes research?
:) :) it doesn't? :) :)
 
Top