0: mar:=pc; rd; 1: pc:=pc + 1; rd; 2: ir:=mbr; if n then goto 28; 3: tir:=lshift(ir + ir); if n then goto 19; 4: tir:=lshift(tir); if n then goto 11; 5: alu:=tir; if n then goto 9; 6: mar:=ir; rd; 7: rd; 8: ac:=mbr; goto 0; 9: mar:=ir; mbr:=ac; wr; 10: wr; goto 0; 11: alu:=tir; if n then goto 15; 12: mar:=ir; rd; 13: rd; 14: ac:=mbr + ac; goto 0; 15: mar:=ir; rd; 16: ac:=ac + 1; rd; 17: a:=inv(mbr); 18: ac:=ac + a; goto 0; 19: tir:=lshift(tir); if n then goto 25; 20: alu:=tir; if n then goto 23; 21: alu:=ac; if n then goto 0; 22: pc:=band(ir,amask); goto 0; 23: alu:=ac; if z then goto 22; 24: goto 0; 25: alu:=tir; if n then goto 27; 26: pc:=band(ir,amask); goto 0; 27: ac:=band(ir,amask); goto 0; 28: tir:=lshift(ir + ir); if n then goto 40; 29: tir:=lshift(tir); if n then goto 35; 30: alu:=tir; if n then goto 33; 31: a:=ir + sp; 32: mar:=a; rd; goto 7; 33: a:=ir + sp; 34: mar:=a; mbr:=ac; wr; goto 10; 35: alu:=tir; if n then goto 38; 36: a:=ir + sp; 37: mar:=a; rd; goto 13; 38: a:=ir + sp; 39: mar:=a; rd; goto 16 ; 40: tir:=lshift(tir); if n then goto 46; 41: alu:=tir; if n then goto 44; 42: alu:=ac; if n then goto 22; 43: goto 0; 44: alu:=ac; if z then goto 0; 45: pc:=band(ir,amask); goto 0; 46: tir:=lshift(tir); if n then goto 50; 47: sp:=sp + (-1); 48: mar:=sp; mbr:=pc; wr; 49: pc:=band(ir,amask); wr; goto 0; 50: tir:=lshift(tir); if n then goto 65; 51: tir:=lshift(tir); if n then goto 59; 52: alu:=tir; if n then goto 56; 53: mar:=ac; rd; 54: sp:=sp + (-1); rd; 55: mar:=sp; wr; goto 10; 56: mar:=sp; sp:=sp + 1; rd; 57: rd; 58: mar:=ac; wr; goto 10; 59: alu:=tir; if n then goto 62; 60: sp:=sp + (-1); 61: mar:=sp; mbr:=ac; wr; goto 10; 62: mar:=sp; sp:=sp + 1; rd; 63: rd; 64: ac:=mbr; goto 0; 65: tir:=lshift(tir); if n then goto 73; 66: alu:=tir; if n then goto 70; 67: mar:=sp; sp:=sp + 1; rd; 68: rd; 69: pc:=mbr; goto 0; 70: a:=ac; 71: ac:=sp; 72: sp:=a; goto 0; 73: tir:=lshift(tir); if n then goto 76; 74: a:=band(ir,smask); 75: sp:=sp + a; goto 0; 76: alu:=tir; if n then goto 80; 77: a:=band(ir, smask); 78: a:=inv(a); 79: a:=a + 1; goto 75; 80: halt; goto 80;