기출문제/정보처리기사

2019년 1회 정보처리기사 기출문제 36번

엉클지니 2025. 5. 11. 21:46

36. 시프트 레지스터(shift register)의 내용을 오른쪽으로 한 번 시프트하면 데이터는 어떻게 변하는가?

    기존 데이터의 1/2          기존 데이터의 1/3

    기존 데이터의 1/4          기존 데이터의 1/10

 

 

 

 

 

정보처리기사 시험을 준비하는 학생들에게 시프트 레지스터(Shift Register) 개념과 오른쪽 시프트 시 데이터 변화에 대한 내용을 쉽게 이해할 수 있도록 자세한 설명과 표를 포함해서 해설드릴게요.


✅ 문제 분석

문제 요지
시프트 레지스터의 내용을 오른쪽으로 한 번 시프트(Shift) 하면 데이터가 어떻게 변하는가?


✅ 시프트 레지스터(Shift Register)란?

시프트 레지스터는 디지털 회로에서 데이터를 한 비트씩 왼쪽 또는 오른쪽으로 이동시키는 장치입니다.
보통 **2진수 데이터(bit)**를 저장하고 처리하는 데 사용되며, 시프트 방향에 따라 데이터 값이 변합니다.


✅ 오른쪽 시프트의 의미 (Right Shift)

오른쪽으로 1비트 시프트하면 아래와 같은 일이 발생합니다:

  • 각 비트가 오른쪽으로 한 자리씩 이동합니다.
  • 맨 오른쪽 비트는 버려지거나 출력되고,
  • 맨 왼쪽 비트는 일반적으로 0으로 채워집니다 (논리적 시프트 기준).

📌 예시: 8비트 이진수

원래 값 오른쪽으로 1비트 시프트 후

1100 0000 0110 0000

이진수 11000000은 10진수로 192입니다.
오른쪽으로 한 번 시프트한 01100000은 10진수로 96입니다.

즉,
👉 오른쪽 시프트 1번 = 기존 값의 절반 (1/2)


✅ 수학적 해설

  • 2진수에서 오른쪽 시프트 1회는 **2로 나누는 것(1/2)**과 같습니다.
  • 마찬가지로:
    • 2회 시프트: 1/4
    • 3회 시프트: 1/8
    • 4회 시프트: 1/16 등…

✅ 정답

❶ 기존 데이터의 1/2


✅ 요약 표

시프트 방향 시프트 횟수 데이터 변화 예시 (2진수 기준) 수학적 의미

오른쪽 1번 1100 0000 → 0110 0000 1/2배 감소
오른쪽 2번 1100 0000 → 0011 0000 1/4배 감소
왼쪽 1번 1100 0000 → 1000 0000 2배 증가

✅ 학생들에게 쉽게 설명하는 팁

시프트 연산은 2진수의 곱셈/나눗셈과 같아요!

  • 오른쪽 시프트는 나누기 2
  • 왼쪽 시프트는 곱하기 2
    컴퓨터는 곱셈이나 나눗셈보다 시프트 연산이 훨씬 빠르기 때문에 이런 식으로 연산을 자주 사용해요!