Re:2008년 제 1회 정보처리기사 B형 40번 문제 도와주세요~

작성자기사패스|작성시간08.09.02|조회수5,613 목록 댓글 0

BCD코드 1001에 대한 해밍 코드를 구하면?

가. 0011001                      나. 1000011

다. 0100101                      라. 0110010

 

답은  다 번인데요..

 

푸는 법을 몰르겠어여 ㅠㅠ

 

안녕하세요?

 

대한민국 IT교육의 최강! 기사패스닷컴 입니다.

 

1001을 해밍코드로 구하는 방법은

 

문제에서는 짝수 패리티 비트를 사용하느냐 홀수 패리티 비트를 사용하느냐를 정해주지 않았습니다만

 

문제를 풀어본 결과 짝수 패리티 비트를 사용하는 해밍코드 변환이며 정답은 다번이 아니라 가번 입니다.

 

예를 들어 1000 이라는 코드에 해밍코드를 추가하는 방법을 설명드립니다.

말씀드린 대로 해밍코드는 1 , 2 , 4 , 8 번째 자리에 해밍코드가 위치하게 됩니다.

X , X , 1 , X , 0 , 0 , 0

위에서 X에 해당하는 자리가 해밍코드가 위치할 자리입니다.

이 때 해밍코드는 짝수패리티를 사용하게 됩니다.

첫번째 자리의 해밍코드는 1 , 3 , 5 , 7 자리를 따져서 짝수패리티를 따집니다.

1 , 3 , 5, 7번째 자리만 써보면 다음과 같이 되겠죠?

X , 1 , 0 , 0

따라서 짝수패리티를 적용하면 첫번째 패리티는 1이 됩니다. 다음과 같이 구해집니다.

1 , X , 1 , X , 0 , 0 , 0

다음으로 두번째 자리의 해밍코드는 2 , 3, 6 , 7 번째 자리의 수로 짝수패리티를 붙입니다.

2 , 3 , 6 , 7번째 자리만 써보면 다음과 같이 됩니다.

X , 1 , 0 , 0

따라서 두번째 자리의 해밍코드도 1이 되게 됩니다.

다음과 같이 두개의 해밍코드를 구했습니다.


1 , 1 , 1 , X , 0 , 0 , 0


다음으로 네번째 자리의 해밍 코드는 4 , 5 , 6, 7 번째 자리로 해밍코드를 구하게 됩니다.

4 , 5 , 6 , 7 자리를 구하면 다음과 같이 됩니다.

X , 0 , 0 , 0

따라서 짝수패리티를 적용하면 0이 됩니다

이렇게 구한 해밍코드를 모두 적용하면 다음과 같이 되겠지요.

1 , 1 , 0 , 0 , 0 , 0


이렇게 해서 전송을 하게 됩니다.

검사하는 측에서도 같은 방식으로 검사합니다.

만약 위처럼 구해진 해밍코드를 전송했는데 다음과 같이 한 비트가 잘못 전송

되었다고 예를 들겠습니다.

1 , 0 , 1 , 0 , 0 , 0 , 0


이때 검사하는 측에서는 1이 몇번째 자리에 있는지 검사합니다.

위 코드에서 1은 첫번째 자리와 세번째 자리에 위치하고 있습니다.

1번째 자리이므로 1 ---> 001
3번째 자리이므로 3 ---> 011

위처럼 구해준 코드를 X-OR 연산을 합니다.

001과 011을 X-OR 연산을 하게 되면 010이 나오게 됩니다.

이것을 10진수로 바꾸면 2가 되지요.

2번째 자리에 오류가 있다는 뜻이 됩니다. ^^

이해가 되셨나요?

가끔 출제되기는 하지만 가끔 출제가 되기 때문에 본 강의에서는 내용을 생략하였습니다.

열공하시고 또 질문주세요.^^




 

 

 

 

 

다음검색
현재 게시글 추가 기능 열기
  • 북마크
  • 공유하기
  • 신고하기

댓글

댓글 리스트
맨위로

카페 검색

카페 검색어 입력폼