diff options
Diffstat (limited to 'projects/07/MemoryAccess')
20 files changed, 0 insertions, 714 deletions
diff --git a/projects/07/MemoryAccess/BasicTest/BasicTest.asm b/projects/07/MemoryAccess/BasicTest/BasicTest.asm deleted file mode 100644 index d978f07..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTest.asm +++ /dev/null @@ -1,250 +0,0 @@ -@256 -D=A -@SP -M=D -@10 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@LCL -D=M -@0 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@21 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@22 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@ARG -D=M -@2 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@ARG -D=M -@1 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@36 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@THIS -D=M -@6 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@42 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@45 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@THAT -D=M -@5 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@THAT -D=M -@2 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@510 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@11 -M=D -@LCL -D=M -@0 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@THAT -D=M -@5 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -@ARG -D=M -@1 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M-D -@SP -A=M -M=D -@SP -M=M+1 -@THIS -D=M -@6 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@THIS -D=M -@6 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M-D -@SP -A=M -M=D -@SP -M=M+1 -@11 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -(END) -@END -0;JMP
\ No newline at end of file diff --git a/projects/07/MemoryAccess/BasicTest/BasicTest.cmp b/projects/07/MemoryAccess/BasicTest/BasicTest.cmp deleted file mode 100644 index 538454b..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTest.cmp +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]|RAM[300]|RAM[401]|RAM[402]|RAM[3006|RAM[3012|RAM[3015|RAM[11] |
-| 472 | 10 | 21 | 22 | 36 | 42 | 45 | 510 |
diff --git a/projects/07/MemoryAccess/BasicTest/BasicTest.out b/projects/07/MemoryAccess/BasicTest/BasicTest.out deleted file mode 100644 index 85c19a7..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTest.out +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]|RAM[300]|RAM[401]|RAM[402]|RAM[3006|RAM[3012|RAM[3015|RAM[11] | -| 472 | 10 | 21 | 22 | 36 | 42 | 45 | 510 | diff --git a/projects/07/MemoryAccess/BasicTest/BasicTest.tst b/projects/07/MemoryAccess/BasicTest/BasicTest.tst deleted file mode 100644 index fa6d9a6..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTest.tst +++ /dev/null @@ -1,25 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/BasicTest/BasicTest.tst
-
-load BasicTest.asm,
-output-file BasicTest.out,
-compare-to BasicTest.cmp,
-output-list RAM[256]%D1.6.1 RAM[300]%D1.6.1 RAM[401]%D1.6.1
- RAM[402]%D1.6.1 RAM[3006]%D1.6.1 RAM[3012]%D1.6.1
- RAM[3015]%D1.6.1 RAM[11]%D1.6.1;
-
-set RAM[0] 256, // stack pointer
-set RAM[1] 300, // base address of the local segment
-set RAM[2] 400, // base address of the argument segment
-set RAM[3] 3000, // base address of the this segment
-set RAM[4] 3010, // base address of the that segment
-
-repeat 600 { // enough cycles to complete the execution
- ticktock;
-}
-
-// Outputs the stack base and some values
-// from the tested memory segments
-output;
diff --git a/projects/07/MemoryAccess/BasicTest/BasicTest.vm b/projects/07/MemoryAccess/BasicTest/BasicTest.vm deleted file mode 100644 index b2f9343..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTest.vm +++ /dev/null @@ -1,31 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/BasicTest/BasicTest.vm
-
-// Executes pop and push commands using the virtual memory segments.
-push constant 10
-pop local 0
-push constant 21
-push constant 22
-pop argument 2
-pop argument 1
-push constant 36
-pop this 6
-push constant 42
-push constant 45
-pop that 5
-pop that 2
-push constant 510
-pop temp 6
-push local 0
-push that 5
-add
-push argument 1
-sub
-push this 6
-push this 6
-add
-sub
-push temp 6
-add
diff --git a/projects/07/MemoryAccess/BasicTest/BasicTestVME.tst b/projects/07/MemoryAccess/BasicTest/BasicTestVME.tst deleted file mode 100644 index 24e9090..0000000 --- a/projects/07/MemoryAccess/BasicTest/BasicTestVME.tst +++ /dev/null @@ -1,25 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/BasicTest/BasicTestVME.tst
-
-load BasicTest.vm,
-output-file BasicTest.out,
-compare-to BasicTest.cmp,
-output-list RAM[256]%D1.6.1 RAM[300]%D1.6.1 RAM[401]%D1.6.1
- RAM[402]%D1.6.1 RAM[3006]%D1.6.1 RAM[3012]%D1.6.1
- RAM[3015]%D1.6.1 RAM[11]%D1.6.1;
-
-set sp 256, // stack pointer
-set local 300, // base address of the local segment
-set argument 400, // base address of the argument segment
-set this 3000, // base address of the this segment
-set that 3010, // base address of the that segment
-
-repeat 25 { // BasicTest.vm has 25 instructions
- vmstep;
-}
-
-// Outputs the stack base and some values
-// from the tested memory segments
-output;
diff --git a/projects/07/MemoryAccess/BasicTest/delme.asm b/projects/07/MemoryAccess/BasicTest/delme.asm deleted file mode 100644 index 6392181..0000000 --- a/projects/07/MemoryAccess/BasicTest/delme.asm +++ /dev/null @@ -1,26 +0,0 @@ -@256 -D=A -@SP -M=D -@10 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@LCL -D=M -@0 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -(END) -@END -0;JMP
\ No newline at end of file diff --git a/projects/07/MemoryAccess/BasicTest/delme.vm b/projects/07/MemoryAccess/BasicTest/delme.vm deleted file mode 100644 index d1ae195..0000000 --- a/projects/07/MemoryAccess/BasicTest/delme.vm +++ /dev/null @@ -1,8 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/BasicTest/BasicTest.vm
-
-// Executes pop and push commands using the virtual memory segments.
-push constant 10
-pop local 0
diff --git a/projects/07/MemoryAccess/PointerTest/PointerTest.asm b/projects/07/MemoryAccess/PointerTest/PointerTest.asm deleted file mode 100644 index 67125df..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTest.asm +++ /dev/null @@ -1,138 +0,0 @@ -@256 -D=A -@SP -M=D -@3030 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@3 -M=D -@3040 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@4 -M=D -@32 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@THIS -D=M -@2 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@46 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@THAT -D=M -@6 -D=A+D -@R13 -M=D -@SP -AM=M-1 -D=M -@R13 -A=M -M=D -@3 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@4 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -@THIS -D=M -@2 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M-D -@SP -A=M -M=D -@SP -M=M+1 -@THAT -D=M -@6 -D=A+D -A=D -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -(END) -@END -0;JMP
\ No newline at end of file diff --git a/projects/07/MemoryAccess/PointerTest/PointerTest.cmp b/projects/07/MemoryAccess/PointerTest/PointerTest.cmp deleted file mode 100644 index b59fa97..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTest.cmp +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]| RAM[3] | RAM[4] |RAM[3032|RAM[3046|
-| 6084 | 3030 | 3040 | 32 | 46 |
diff --git a/projects/07/MemoryAccess/PointerTest/PointerTest.out b/projects/07/MemoryAccess/PointerTest/PointerTest.out deleted file mode 100644 index 5d62de8..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTest.out +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]| RAM[3] | RAM[4] |RAM[3032|RAM[3046| -| 6084 | 3030 | 3040 | 32 | 46 | diff --git a/projects/07/MemoryAccess/PointerTest/PointerTest.tst b/projects/07/MemoryAccess/PointerTest/PointerTest.tst deleted file mode 100644 index cd5515d..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTest.tst +++ /dev/null @@ -1,20 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/PointerTest/PointerTest.tst
-
-load PointerTest.asm,
-output-file PointerTest.out,
-compare-to PointerTest.cmp,
-output-list RAM[256]%D1.6.1 RAM[3]%D1.6.1
- RAM[4]%D1.6.1 RAM[3032]%D1.6.1 RAM[3046]%D1.6.1;
-
-set RAM[0] 256, // initializes the stack pointer
-
-repeat 450 { // enough cycles to complete the execution
- ticktock;
-}
-
-// outputs the stack base, this, that, and
-// some values from the the this and that segments
-output;
diff --git a/projects/07/MemoryAccess/PointerTest/PointerTest.vm b/projects/07/MemoryAccess/PointerTest/PointerTest.vm deleted file mode 100644 index 5b0a109..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTest.vm +++ /dev/null @@ -1,22 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/PointerTest/PointerTest.vm
-
-// Executes pop and push commands using the
-// pointer, this, and that segments.
-push constant 3030
-pop pointer 0
-push constant 3040
-pop pointer 1
-push constant 32
-pop this 2
-push constant 46
-pop that 6
-push pointer 0
-push pointer 1
-add
-push this 2
-sub
-push that 6
-add
diff --git a/projects/07/MemoryAccess/PointerTest/PointerTestVME.tst b/projects/07/MemoryAccess/PointerTest/PointerTestVME.tst deleted file mode 100644 index 1b395c2..0000000 --- a/projects/07/MemoryAccess/PointerTest/PointerTestVME.tst +++ /dev/null @@ -1,20 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/PointerTest/PointerTestVME.tst
-
-load PointerTest.vm,
-output-file PointerTest.out,
-compare-to PointerTest.cmp,
-output-list RAM[256]%D1.6.1 RAM[3]%D1.6.1 RAM[4]%D1.6.1
- RAM[3032]%D1.6.1 RAM[3046]%D1.6.1;
-
-set RAM[0] 256, // initializes the stack pointer
-
-repeat 15 { // PointerTest.vm has 15 instructions
- vmstep;
-}
-
-// outputs the stack base, this, that, and
-// some values from the the this and that segments
-output;
diff --git a/projects/07/MemoryAccess/StaticTest/StaticTest.asm b/projects/07/MemoryAccess/StaticTest/StaticTest.asm deleted file mode 100644 index 8cd989d..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTest.asm +++ /dev/null @@ -1,86 +0,0 @@ -@256 -D=A -@SP -M=D -@111 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@333 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@888 -D=A -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@StaticTest.8 -M=D -@SP -AM=M-1 -D=M -@StaticTest.3 -M=D -@SP -AM=M-1 -D=M -@StaticTest.1 -M=D -@StaticTest.3 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@StaticTest.1 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M-D -@SP -A=M -M=D -@SP -M=M+1 -@StaticTest.8 -D=M -@SP -A=M -M=D -@SP -M=M+1 -@SP -AM=M-1 -D=M -@SP -AM=M-1 -D=M+D -@SP -A=M -M=D -@SP -M=M+1 -(END) -@END -0;JMP
\ No newline at end of file diff --git a/projects/07/MemoryAccess/StaticTest/StaticTest.cmp b/projects/07/MemoryAccess/StaticTest/StaticTest.cmp deleted file mode 100644 index 29f4bf0..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTest.cmp +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]|
-| 1110 |
diff --git a/projects/07/MemoryAccess/StaticTest/StaticTest.out b/projects/07/MemoryAccess/StaticTest/StaticTest.out deleted file mode 100644 index 2bc908b..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTest.out +++ /dev/null @@ -1,2 +0,0 @@ -|RAM[256]| -| 1110 | diff --git a/projects/07/MemoryAccess/StaticTest/StaticTest.tst b/projects/07/MemoryAccess/StaticTest/StaticTest.tst deleted file mode 100644 index 1f23d66..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTest.tst +++ /dev/null @@ -1,17 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/StaticTest/StaticTest.tst
-
-load StaticTest.asm,
-output-file StaticTest.out,
-compare-to StaticTest.cmp,
-output-list RAM[256]%D1.6.1;
-
-set RAM[0] 256, // initializes the stack pointer
-
-repeat 200 { // enough cycles to complete the execution
- ticktock;
-}
-
-output; // the stack base
diff --git a/projects/07/MemoryAccess/StaticTest/StaticTest.vm b/projects/07/MemoryAccess/StaticTest/StaticTest.vm deleted file mode 100644 index 65b4f6f..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTest.vm +++ /dev/null @@ -1,17 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/StaticTest/StaticTest.vm
-
-// Executes pop and push commands using the static segment.
-push constant 111
-push constant 333
-push constant 888
-pop static 8
-pop static 3
-pop static 1
-push static 3
-push static 1
-sub
-push static 8
-add
diff --git a/projects/07/MemoryAccess/StaticTest/StaticTestVME.tst b/projects/07/MemoryAccess/StaticTest/StaticTestVME.tst deleted file mode 100644 index 52882a4..0000000 --- a/projects/07/MemoryAccess/StaticTest/StaticTestVME.tst +++ /dev/null @@ -1,17 +0,0 @@ -// This file is part of www.nand2tetris.org
-// and the book "The Elements of Computing Systems"
-// by Nisan and Schocken, MIT Press.
-// File name: projects/07/MemoryAccess/StaticTest/StaticTestVME.tst
-
-load StaticTest.vm,
-output-file StaticTest.out,
-compare-to StaticTest.cmp,
-output-list RAM[256]%D1.6.1;
-
-set sp 256, // initializes the stack pointer
-
-repeat 11 { // StaticTest.vm has 11 instructions
- vmstep;
-}
-
-output; // the stack base
|