책 내용 질문하기
그레이코드 설명
도서
2017 시나공 정보처리기사 실기(산업기사 포함) 특별개정판
페이지
230
조회수
120
작성일
2017-04-14
작성자
첨부파일

처음에 이진 자료 배열에

1) 10010

2) 11010

3) 01101 이런식으로 3개가 들어가있다고 할때

검정색동그라미 5번에 의해서 1)과 2)는 Yes로 3)은 no로 갑니다.

3)은 이해가 되는데

1)과 2)가 이해가 되지 않습니다.

1)경우

Input[3]=cont[1]

yes

cont[2]=0

Input[4]=cont[2]

no

cont[3]=1

Input[5]=cont[3]

no

cont[4]=1

cont[1]= 0

cont[2]=0

cont[3]=1

cont[4]=1

0010이 나와야 정상인거 아닌가요??

만약에 10010이 그레이코드라면

1100이 나와야 되는거고요

이상한거 같은데 원리좀 설명해주세요

디버깅말고 왜 입력된 input 배열과 결과로 나오는 이진수 값이 다르게 나타나는지 설명 부탁드립니다.

답변
2017-04-14 15:47:14

안녕하세요.

10010 은 맨 앞이 1이므로 이후 4비트인 0010은 그레이코드입니다.

그러므로 그레이코드 0010을 이진수로 변환하면 0011이 됩니다.

11010 은 맨 앞이 1이므로 이후 4비트인 1010은 그레이코드입니다.

그러므로 그레이코드 1010을 이진수로 변환하면 1100이 됩니다.

0010 그레이 코드를 이진수로 변환하는 과정입니다.

맨 앞의 비트는 판별용 이었으므로 실제 변환할 비트는

INPUT[2] ~ INPUT[5] 이렇게 4개의 비트입니다.

첫 번째 0, 즉 INPUT[2]는 이진수 첫 번째 비트로 그대로 저장됩니다. 그러므로 CONT[1]은 0이 됩니다.

그 다음 CONT[2]는 첫 번째 이진수 비트인 CONT[1]과 입력된 그레이 코드 중 두 번째 비트, 즉 INPUT[3]과 비교합니다.

CONT[1]은 0이고 INPUT[3]도 0이므로 같으니까 0이 저장되어 CONT[2]는 0이 됩니다.

그 다음 CONT[3]은 두 번째 이진수 비트인 CONT[2]와 입력된 그레이 코드 중 세 번째 비트, 즉 INPUT[4]와 비교합니다.

CONT[2]은 0이고 INPUT[4]는 1이므로 다르니까 1이 저장되어 CONT[3]은 1이 됩니다.

그 다음 CONT[4]는 세 번째 이진수 비트인 CONT[3]과 입력된 그레이 코드 중 네 번째 비트, 즉 INPUT[5]와 비교합니다.

CONT[3]은 1이고 INPUT[5]는 0이므로 다르니까 1이 저장되어 CONT[4]는 1이 됩니다.

결국 변환된 이진수 즉 CONT 배열의 값은 0 0 1 1이 됩니다.

오늘도 즐거운 하루 되세요.

  • *
    2017-04-14 15:47:14

    안녕하세요.

    10010 은 맨 앞이 1이므로 이후 4비트인 0010은 그레이코드입니다.

    그러므로 그레이코드 0010을 이진수로 변환하면 0011이 됩니다.

    11010 은 맨 앞이 1이므로 이후 4비트인 1010은 그레이코드입니다.

    그러므로 그레이코드 1010을 이진수로 변환하면 1100이 됩니다.

    0010 그레이 코드를 이진수로 변환하는 과정입니다.

    맨 앞의 비트는 판별용 이었으므로 실제 변환할 비트는

    INPUT[2] ~ INPUT[5] 이렇게 4개의 비트입니다.

    첫 번째 0, 즉 INPUT[2]는 이진수 첫 번째 비트로 그대로 저장됩니다. 그러므로 CONT[1]은 0이 됩니다.

    그 다음 CONT[2]는 첫 번째 이진수 비트인 CONT[1]과 입력된 그레이 코드 중 두 번째 비트, 즉 INPUT[3]과 비교합니다.

    CONT[1]은 0이고 INPUT[3]도 0이므로 같으니까 0이 저장되어 CONT[2]는 0이 됩니다.

    그 다음 CONT[3]은 두 번째 이진수 비트인 CONT[2]와 입력된 그레이 코드 중 세 번째 비트, 즉 INPUT[4]와 비교합니다.

    CONT[2]은 0이고 INPUT[4]는 1이므로 다르니까 1이 저장되어 CONT[3]은 1이 됩니다.

    그 다음 CONT[4]는 세 번째 이진수 비트인 CONT[3]과 입력된 그레이 코드 중 네 번째 비트, 즉 INPUT[5]와 비교합니다.

    CONT[3]은 1이고 INPUT[5]는 0이므로 다르니까 1이 저장되어 CONT[4]는 1이 됩니다.

    결국 변환된 이진수 즉 CONT 배열의 값은 0 0 1 1이 됩니다.

    오늘도 즐거운 하루 되세요.

· 5MB 이하의 zip, 문서, 이미지 파일만 가능합니다.
· 폭언, 욕설, 비방 등은 관리자에 의해 경고없이 삭제됩니다.