티스토리 뷰

   t0 :  MBR ß PC

    t1 :  MAR ß SP,  PC ß ISR의 시작 주소

    t2 :  M[MAR] ß MBR

       , SP는 스택 포인터(stack pointer).

[첫번째 주기] PC의 내용을 MBR로 전송

[두번째 주기] SP의 내용을 MAR로 전송하고,
             PC
의 내용은 인터럽트 서비스 루틴의 시작 주소로 변경

[세번째 주기] MBR에 저장되어 있던 원래 PC의 내용을 스택에 저장

 

인터럽트 사이클의 마이크로 연산 [예]

q아래 프로그램의 첫 번째 명령어인 LOAD 250 명령어가 실행되는 동안에 인터럽트가 들어왔으며, 현재 SP = 999이고, 인터럽트 서비스 루틴의 시작 주소는 650 번지라고 가정

§

        100     LOAD  250

        101     ADD    251

        102     STA     251

        103     JUMP  170

댓글