[컴퓨터구조] overflow

뚱땅코딩·2023년 3월 6일
0

컴퓨터구조

목록 보기
7/15
post-custom-banner

1. overflow 란?

  • 연산의 결과가 32-bit word로 표현될 수 없는 것.
    (연산 결과 부호가 반대로 나오거나, 값이 틀리게 나옴.)

2. overflow가 발생하는 경우


3. exception (예외)

  • exception (예외) 이란?
    프로그램의 정상적인 수행을 을 방해하는 계획되지 않은 사건.
  • exception이 발생하면
    1. 정상적인 순서를 무시하고 kernel code(exception handler)를 실행.
      [exception handler : 운영체제 안에 있는, exception을 처리하는 함수이다. 어떻게 처리하는 지는 사용자의 설정에 따라 달라질 수 있다.]
    2. 처리하고 나면 원래 코드로 돌아와 exception이 발생했던 코드의 다음 코드를 실행한다.

4. overflow가 발생하면 어떻게 되는가?

  • add, addi, sub
    연산 결과 overflow가 되면 exception을 발생한다.
    (overflow [O], overflow exception [O])
  • addu, addiu, subu (끝의 u는 unsigned / overflow undetected 를 뜻함.)
    연산 결과 overflow가 되도 exception이 일어나지 않는다.
    즉, exception handler가 실행되지 않고 다음 명령을 수행한다.
    (overflow [O], overflow exception [X])
post-custom-banner

0개의 댓글