컴파일러
불필요한 코드의 삭제(데드 코드 제거)로 제거되는 것으로 올바른 것은?
- A프로그램 안에서 가장 자주 실행되는 가장 중요한 부분의 코드
- B실행될 일이 없는 부분이나 결과가 어디에도 사용되지 않는 계산
- C화면에 결과를 표시하기 위한 출력 명령
정답과 해설 보기
정답: B. 실행될 일이 없는 부분이나 결과가 어디에도 사용되지 않는 계산
불필요한 코드의 삭제는 조건이 항상 거짓이라 결코 실행되지 않는 분기의 내용이나, 계산해도 결과가 어디에도 사용되지 않는 대입 등을 제거하는 최적화입니다. 상수 전파나 상수 폴딩 뒤에는 사용되지 않게 된 대입이 많이 생기므로 함께 사용됩니다. 자주 실행되는 부분은 빠르게 해야 할 중요한 부분이므로 삭제해서는 안 됩니다. 화면 출력처럼 외부에서 보이는 효과가 있는 명령은 프로그램 결과의 일부이므로 삭제되지 않습니다.
- A. 자주 실행되는 부분은 삭제해서는 안 됩니다.
- B. 올바릅니다. 실행되지 않는 부분이나 사용되지 않는 계산을 제거합니다.
- C. 외부에 보이는 효과가 있는 명령은 삭제되지 않습니다.