Advertisement
Guest User

Untitled

a guest
Feb 13th, 2017
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2.             ORG     $0
  3.             DC.L $8000 This is the stack pointer value after a "reset"
  4.             DC.L START This is the first instruction to execute
  5.             ORG    $1000
  6.  
  7. START          LEA    $1500,SP
  8.                 CLR    D0
  9.                 CLR    D1
  10.                 CLR    D2
  11.                 CLR    D3
  12.                 CLR    D4
  13.                 CLR    D5
  14.                 CLR    D6
  15.                 CLR    D7
  16.                 MOVE   #0,D3    FIRST   NUM
  17.                 MOVE   #1,D4    SECOND  NUM
  18.                 BSR    SUBROUTINE
  19.                 LEA    2(A7),A7
  20.                 STOP   #$2700
  21. SUBROUTINE     MOVE   #6,6(A7)
  22.                 MOVE   #0,D5    F(1)
  23.                 MOVE   #1,D6    F(0)
  24.                 CMP    6(A7),D5 IF ITS 0
  25.                 BEQ    EQUAL1   RETURN 1
  26.                 CMP    6(A7),D6 IF ITS 1
  27.                 BEQ    EQUAL1   RETURN 1
  28.                 CMP    6(A7),D6 IF ITS BIGGER THAN 1
  29.                 BGT    B1       GO TO B1
  30.                 MOVE   #1,D0    ELSE RETURN ONE
  31. B1             MOVE   D4,D7    ADD FIRST NUM AND SECOND NUM TO D1
  32.                 ADD    D3,D4
  33.                 MOVE   D7,D3
  34.                 ADD    #1,D2    COUNT++
  35.                 CMP    6(A7),D2 COMPARE COUNT AND N
  36.                 BEQ    FIB
  37.                 BRA    B1
  38.  
  39. FIB            MOVE   D1,6(A7)
  40.                 MOVE   6(A7),D0
  41.                 RTS
  42.  
  43. EQUAL1         MOVE   #1,D0
  44.  
  45. EXIT  
  46.                 STOP   #$2700
  47.                 END    START
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement