Skip to content

Instantly share code, notes, and snippets.

@intoverflow
Created September 26, 2011 05:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save intoverflow/1241645 to your computer and use it in GitHub Desktop.
Save intoverflow/1241645 to your computer and use it in GitHub Desktop.
Emulator output
*Main> runEmulator "Samples/Fib.asm" 100
(0,(Instr (Litl "fib"),[l 000000010001]))
(1,(Instr (Liti 0),[l 000000000000]))
(2,(Instr (Liti 0),[l 000000000000]))
(3,(Instr (Liti 0),[l 000000000000]))
(4,(Instr (Liti 0),[l 000000000000]))
(5,(Instr (Liti 1),[l 000000000001]))
(6,(Instr (Liti 1),[l 000000000001]))
(7,(Instr (Liti 5),[l 000000000101]))
(8,(Instr (Liti 0),[l 000000000000]))
(9,(Instr (Liti 0),[l 000000000000]))
(10,(Instr (Liti 0),[l 000000000000]))
(11,(Instr (Liti 0),[l 000000000000]))
(12,(Instr (Liti 0),[l 000000000000]))
(13,(Instr (Liti 0),[l 000000000000]))
(14,(Instr (Liti 0),[l 000000000000]))
(15,(Instr (Liti 0),[l 000000000000]))
(16,(Instr (Liti 0),[l 000000000000]))
(17,(Instr (Tst R7),[i 011111111111]))
(18,(Instr (Jmp True "skip"),[i 110111000000,l 000000000110]))
(20,(Instr (Mov (Direct R6) (Direct R4)),[i 100000110100]))
(21,(Instr (Add False R5 R6),[i 000000101110]))
(22,(Instr (Mov (Direct R4) (Direct R5)),[i 100000100101]))
(23,(Instr (Dec False R7),[i 000011111111]))
(24,(Instr (Jmp False "fib"),[i 101000000000,l 000000010001]))
(26,(Instr (Jmp False "skip"),[i 101000000000,l 000000011010]))
Machine
{ 000000000000: 000000011010 (R0)
, 000000000001: 000000000001 (R1)
, 000000000010: 000000000000 (R2)
, 000000000011: 000000000000 (R3)
, 000000000100: 000000001000 (R4)
, 000000000101: 000000001000 (R5)
, 000000000110: 000000001101 (R6)
, 000000000111: 000000000000 (R7)
, 000000001000: 000000000000 Add False R0 R0
, 000000001001: 000000000000 Add False R0 R0
, 000000001010: 000000000000 Add False R0 R0
, 000000001011: 000000000000 Add False R0 R0
, 000000001100: 000000000000 Add False R0 R0
, 000000001101: 000000000000 Add False R0 R0
, 000000001110: 000000000000 Add False R0 R0
, 000000001111: 000000000000 Add False R0 R0
, 000000010000: 000000000000 Add False R0 R0
, 000000010001: 011111111111 Tst R7
, 000000010010: 110111000000 IAdd True (Right "") R0
, 000000010011: 000000000110 Add False R0 R6
, 000000010100: 100000110100 Mov (Direct R6) (Direct R4)
, 000000010101: 000000101110 Add False R5 R6
, 000000010110: 100000100101 Mov (Direct R4) (Direct R5)
, 000000010111: 000011111111 Dec False R7
, 000000011000: 101000000000 Mov (IndirectInc R0) (Direct R0)
, 000000011001: 000000010001 Add False R2 R1
, 000000011010: 101000000000 Mov (IndirectInc R0) (Direct R0)
, 000000011011: 000000011010 Add False R3 R2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment