본문 바로가기
CS(Computer Science)/프로그래밍언어

12. 예외 처리

by 동욷 2023. 6. 4.
Procedure의 종료
- return (정상), goto
- overflow, underflow, range error -> system interrupt
- EOF 등 예외조건 (예상 가능한 조건)
예외 조건 제어 불가능 언어 : 오류 시 약속된 값을 반환 (Programmer가 매번 check) , 오류 처리 루틴으로 즉시 제어 이동(정상 제어를 파괴)
 
예외 조건 제어 가능 언어 : 사용자가 제어 가능
- PL/I : 최초 제공 언어
- Mesa, CLU, Ada, C++, Java : 우아한 방법 제공
 
 
예외 처리
1) 프로시저들 사이의 정보 교환
2) 예외는 오류가 아님
3) 초기 예외 처리 : H/W interrupt routine을 사용 , system에서 제공 (처리 루틴)
4) 고려사항 :
-어떤 프로시저가 발생된 예외를 처리할 것인가? ,
-예외 처리 후에 예외 발생 프로시저의 활성화 지속 여부,
-System interrupt 접근 방법이 제공되었는가?
-System interrupt를 사용자가 새로 정의하여 우선 시킬 수 있는가?
-사용자 정의 예외가 가능한가? 이 예외를 어떻게 발생시키는가?
-가능 예외(enable exception)의 영역 규칙은 무엇인가?
-예외 처리(exception handler)의 영역은 어디인가?
-예외를 발생시킨 프로시저를 실행 재개시키는가 종결시키는가?
-발생된 예외의 전파(propagation)는 어떻게 되는가?
-한 예외에 매개 변수를 사용하여 다양화 시킬 수 있는가?
-(예기치 않았던) 모든 예외를 한번에 자동 처리할 수 있는가?
-예외 처리 루틴에서 예외를 발생 시킬 수 있는가? 이 때 후속 처리는?
 
 

 

728x90

'CS(Computer Science) > 프로그래밍언어' 카테고리의 다른 글

프로그래밍 언어 총정리  (0) 2023.06.07
14. 객체지향 프로그래밍  (0) 2023.06.07
11. 추상 자료형  (0) 2023.06.04
10장 부 프로그램  (0) 2023.06.04
9장 요약  (0) 2023.06.04