From 4adaf2d4d934c6010dd7017f61259e108eb5cdca Mon Sep 17 00:00:00 2001 From: Augusto Gunsch Date: Sat, 24 Oct 2020 22:33:57 -0300 Subject: [PATCH] Remove comparison --- README.md | 2 +- assembler | Bin 0 -> 27248 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100755 assembler diff --git a/README.md b/README.md index d427e0e..62ca7af 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ # hack-assembler Hack machine language assembler, as specified in [nand2tetris project 6](https://www.nand2tetris.org/project06).
-It also features syntax checking, and is extremely fast (about 10x faster than the reference implementation). +It also features syntax checking, and is extremely fast. diff --git a/assembler b/assembler new file mode 100755 index 0000000000000000000000000000000000000000..fe8bb01e19d7a47ccf469d610e818a403855da16 GIT binary patch literal 27248 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 literal 0 HcmV?d00001