주간 노승욱 09 day4 과학지문

작성자Yooo

  • 등록일 26-03-08
  • 조회22회

본문

4번에 첫 번째 시행이 0, 두 번째 시행이 1. 세 번째 시행에서는 1이 출력되는 이유가 궁금합니다

댓글목록

김다솜 조교님의 댓글

김다솜 조교 작성일

안녕하세요. 김다솜 조교입니다.
문의주신 문항에 대해 답변드리겠습니다.

[B]를 바탕으로 각 천이 레지스터의 초기값이 0,1,1,0 일때의 상황을 살펴보겠습니다.

확산패턴은 본문의 그림과 같이 천이 레지스터와 XOR연산을 이용해 만들 수 있습니다. 각 시행에서 각각의 천이레지스터에 저장된 값은 오른쪽 천이레지스터로 한칸 이동하게 되면서, 천이레지스터 4에 있던 값이 출력되게 되죠. 또, 오른쪽으로 한칸 이동하면서 천이레지스터 1이 비어지게 되는데, 이 값에는 이전시행의 천이레지스터 3,4 의 XOR연산 값이 들어가게 됩니다.

만약 초기값이 0,1,1,0 이라면
첫번째 시행때 천이레지스터 3,4번의 값인 1,0의 XOR연산 결과로 1이 천이레지스터 1번에 들어가게 되고, 나머지 값들은 오른쪽으로 한칸씩 이동한다고 했었죠?
그러면 첫번째 시행에는 1 0 1 1 이 되고, 0이 출력됩니다. 이때 출력되는 0은 처음 초기값에서 천이레지스터 4번에 들어있던 값이였겠죠?

다음, 1 0 1 1 인 상태에서 한번 더 시행을 한다면, 세번째와 네번째 레지스터의 XOR값 1, 1의 XOR연산 결과인 0이 첫번째 레지스터로 들어가고 나머지 값들은 오른쪽으로 한칸씩 이동합니다. 그러면 두번째 시행 결과는 0 1 0 1, 그리고 네번째 칸에 있던 값이 출력되어 1이 출력되겠죠.

세번째 시행을 살펴보겠습니다. 0 1 0 1인 상태에서, 세번째와 네번째 값을 XOR연산해주면 1이 되고, 그 값은 첫번째 레지스터로 들어가게 되겠죠. 나머지 레지스터에 있는 값들은 오른쪽으로 한칸씩 밀어주면 세번째 시행 결과는 1 0 1 0 이 되고 네번째 칸에 있던 1이 출력된 상황일 것입니다.

즉 각 시행마다 출력되는 결과가 0, 1, 1, 0, ... 이 됩니다!

더 궁금하신 점 있으시면 편하게 문의주세요. 감사합니다.