컴파일러
컴파일러 최적화가 지켜야 하는 기본 조건으로 올바른 것은 무엇인가?
- A원래 프로그램보다 반드시 명령 수를 절반 이하로 줄일 것
- B빨라진다면 프로그램의 출력이 다소 달라져도 된다는 것
- C올바른 프로그램에 대해 외부에서 보이는 결과를 바꾸지 않을 것
정답과 해설 보기
정답: C. 올바른 프로그램에 대해 외부에서 보이는 결과를 바꾸지 않을 것
최적화는 프로그램을 빠르게 하거나 작게 하기 위한 변환이지만, 올바르게 작성된 프로그램의 출력이나 파일 쓰기 등 외부에서 보이는 동작을 바꿔서는 안 됩니다. 이 조건 아래에서 계산 순서를 바꾸거나 불필요한 계산을 삭제합니다. 명령 수를 얼마나 줄일 수 있는지는 경우마다 다르며 절반 이하라는 규칙은 없습니다. 결과가 달라져도 되는 것은 부동소수점의 재배열을 허용하는 등 사용자가 명시적으로 선택한 경우로 한정됩니다.
- A. 줄일 수 있는 양에 규칙은 없습니다.
- B. 속도를 위해 결과를 바꿔서는 안 됩니다.
- C. 올바릅니다. 외부에서 보이는 결과를 바꾸지 않는 것이 대원칙입니다.