├── pmag201503 ├── focus.md ├── focus.wd ├── video.md ├── video.wd ├── article.md ├── article.wd ├── code.md ├── code.wd ├── hardware.md ├── hardware.wd ├── people.md ├── people.wd ├── science.md ├── science.wd ├── software.md ├── software.wd ├── preface.md ├── preface.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── table.jpg ├── cc_by_sa.jpg ├── wikidown_edit.jpg ├── wikidown_view.jpg ├── wikidown2homepage.jpg ├── wikidownExplorer.jpg ├── header.htm ├── title.md ├── title.wd ├── wikidown_github_create.jpg ├── wikidown_github_project_page.jpg ├── epub.meta ├── footer.htm ├── book.top ├── license.md ├── license.wd ├── reflink.md ├── reflink.wd └── home.wd ├── pmag201505 ├── focus.md ├── focus.wd ├── video.md ├── video.wd ├── article.md ├── article.wd ├── code.md ├── code.wd ├── hardware.md ├── hardware.wd ├── people.md ├── people.wd ├── science.md ├── science.wd ├── software.md ├── software.wd ├── preface.md ├── preface.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── cc_by_sa.jpg ├── koa_blog.jpg ├── noteSpaNew.jpg ├── noteSpaEdit.jpg ├── noteSpaList.jpg ├── noteSpaList2.jpg ├── header.htm ├── title.md ├── title.wd ├── editor.md ├── editor.wd ├── epub.meta ├── footer.htm ├── book.top ├── code │ └── generator │ │ ├── copyFile.js │ │ ├── copyFile2.js │ │ └── yield1.js ├── license.md ├── license.wd ├── reflink.md └── reflink.wd ├── pmag201511 ├── focus.md ├── focus.wd ├── video.md ├── video.wd ├── article.md ├── article.wd ├── code.md ├── code.wd ├── hardware.md ├── hardware.wd ├── people.md ├── people.wd ├── science.md ├── science.wd ├── software.md ├── software.wd ├── preface.md ├── preface.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── cc_by_sa.jpg ├── koa_blog.jpg ├── header.htm ├── title.md ├── title.wd ├── editor.md ├── editor.wd ├── epub.meta ├── footer.htm ├── book.top ├── code │ └── generator │ │ ├── copyFile.js │ │ ├── copyFile2.js │ │ └── yield1.js ├── license.md ├── license.wd ├── reflink.md ├── reflink.wd ├── home.wd └── home.md ├── ymag201504 ├── focus4.md ├── focus4.wd ├── article2.md ├── article2.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── slide.odp ├── cc_by_sa.jpg ├── EnigmaMath.png ├── PolandHero.png ├── Bombe-rebuild.jpg ├── four-rotor-enigma.jpg ├── 1024px-Bletchley_Park.jpg ├── 1024px-Kenngruppenheft.jpg ├── 225px-alan_turing_photo.jpg ├── 633px-Enigma-action.svg.png ├── 633px-enigma-action-svg.png ├── 640px-enigma-plugboard.jpg ├── Enigma_wiring_kleur.svg.png ├── enigma_wiring_kleur-svg.png ├── 640px-enigma-rotor-stack.jpg ├── editor.md ├── editor.wd ├── book.top ├── book.md ├── book.wd ├── directory.wd ├── license.md ├── license.wd ├── directory.md ├── home.wd └── home.md ├── main ├── imgtest.md ├── imgtest.wd ├── title.md ├── title.wd ├── mathtest.md ├── mathtest.wd ├── mt.jpg ├── cover.jpg ├── mt_back.jpg ├── 240px-appleii.jpg ├── blue.wd ├── blue.md ├── 220px-xerox_alto_mit_rechner.JPG ├── home.wd ├── home.md ├── ccckmit.wd ├── ccckmit.md ├── codetest.md ├── codetest.wd ├── wikidown.wd └── wikidown.md ├── ymag201502 ├── focus1.md ├── focus1.wd ├── focus4.md ├── focus4.wd ├── focus5.md ├── focus5.wd ├── article2.md ├── article2.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── cc_by_sa.jpg ├── JohnGruber.jpg ├── AaronSwartz.jpg ├── LinusTorvalds.png ├── cc-by-88x31.png ├── cc-by-nc-88x31.png ├── cc-by-nd-88x31.png ├── cc-by-sa-88x31.png ├── 640px-Rms_at_pitt.jpg ├── cc-by-nc-nd-88x31.png ├── cc-by-nc-sa-88x31.png ├── cc_license_icons.jpg ├── 220px-Aaron_Swartz_profile.jpg ├── editor.md ├── editor.wd ├── book.md ├── book.wd ├── book.top ├── directory.wd ├── license.md ├── license.wd ├── directory.md ├── home.wd └── home.md ├── pmag201507 ├── article2.md ├── article2.wd ├── focus8.md ├── focus8.wd ├── book.epub ├── book.pdf ├── cover.jpg ├── slide.odp ├── A-format.jpg ├── C-format.jpg ├── D-field.jpg ├── HackCPU.jpg ├── J-field.jpg ├── cc_by_sa.jpg ├── PcCircuit.jpg ├── C-instruction.jpg ├── HackCommand.jpg ├── Part1Projects.jpg ├── HackCPU2Memory.jpg ├── HardwareSimulator.jpg ├── nand2tetris_overview.jpg ├── C-instruction-revisited.jpg ├── HackComputerMemoryMapping.jpg ├── book.wd ├── book.top ├── directory.wd ├── directory.md ├── editor.md └── editor.wd ├── ymag201506 ├── article2.md ├── article2.wd ├── nand2tetris │ ├── tools │ │ ├── bin │ │ │ ├── scripts │ │ │ │ ├── defaultCPU.txt │ │ │ │ ├── defaultVM.txt │ │ │ │ └── defaultHW.txt │ │ │ ├── lib │ │ │ │ ├── Hack.jar │ │ │ │ ├── HackGUI.jar │ │ │ │ ├── Compilers.jar │ │ │ │ ├── AssemblerGUI.jar │ │ │ │ ├── Simulators.jar │ │ │ │ ├── SimulatorsGUI.jar │ │ │ │ └── TranslatorsGUI.jar │ │ │ ├── images │ │ │ │ ├── chip.gif │ │ │ │ ├── find.gif │ │ │ │ ├── hex.gif │ │ │ │ ├── ok.gif │ │ │ │ ├── ok2.gif │ │ │ │ ├── open.gif │ │ │ │ ├── save.gif │ │ │ │ ├── arrow2.gif │ │ │ │ ├── cancel.gif │ │ │ │ ├── clock2.gif │ │ │ │ ├── equal.gif │ │ │ │ ├── open2.gif │ │ │ │ ├── scroll.gif │ │ │ │ ├── keyboard.gif │ │ │ │ ├── opendoc.gif │ │ │ │ ├── redflag.gif │ │ │ │ ├── smallnew.gif │ │ │ │ ├── smallok.gif │ │ │ │ ├── smallplus.gif │ │ │ │ ├── vcrrewind.gif │ │ │ │ ├── vcrstop.gif │ │ │ │ ├── calculator2.gif │ │ │ │ ├── smallcancel.gif │ │ │ │ ├── smallequal.gif │ │ │ │ ├── smallminus.gif │ │ │ │ ├── vcrforward.gif │ │ │ │ └── vcrfastforward.gif │ │ │ ├── classes │ │ │ │ ├── TextComparer.class │ │ │ │ ├── CPUEmulatorMain.class │ │ │ │ ├── VMEmulatorMain.class │ │ │ │ ├── HackAssemblerMain.class │ │ │ │ └── HardwareSimulatorMain.class │ │ │ └── help │ │ │ │ └── compiler.txt │ │ ├── builtInChips │ │ │ ├── ALU.hdl │ │ │ ├── Or.class │ │ │ ├── PC.class │ │ │ ├── ALU.class │ │ │ ├── Add16.class │ │ │ ├── And.class │ │ │ ├── Bit.class │ │ │ ├── DFF.class │ │ │ ├── DMux.class │ │ │ ├── Inc16.class │ │ │ ├── Mux.class │ │ │ ├── Nand.class │ │ │ ├── Not.class │ │ │ ├── Not16.class │ │ │ ├── RAM.class │ │ │ ├── RAM4K.class │ │ │ ├── RAM64.class │ │ │ ├── RAM8.class │ │ │ ├── Xor.class │ │ │ ├── Or8Way.class │ │ │ ├── RAM16K.class │ │ │ ├── RAM512.class │ │ │ ├── ROM32K.class │ │ │ ├── Screen.class │ │ │ ├── ARegister.class │ │ │ ├── DMux4Way.class │ │ │ ├── DMux8Way.class │ │ │ ├── DRegister.class │ │ │ ├── FullAdder.class │ │ │ ├── HalfAdder.class │ │ │ ├── Keyboard.class │ │ │ ├── Mux4Way16.class │ │ │ ├── Mux8Way16.class │ │ │ ├── Register.class │ │ │ ├── RegisterWithGUI.class │ │ │ ├── Not.hdl │ │ │ ├── Nand.hdl │ │ │ ├── Xor.hdl │ │ │ ├── And.hdl │ │ │ ├── Mux.hdl │ │ │ ├── Not16.hdl │ │ │ ├── Or.hdl │ │ │ ├── Or16.hdl │ │ │ ├── Mux16.hdl │ │ │ ├── And16.hdl │ │ │ ├── Or8Way.hdl │ │ │ ├── Add16.hdl │ │ │ ├── DMux.hdl │ │ │ ├── DFF.hdl │ │ │ ├── Inc16.hdl │ │ │ ├── Bit.hdl │ │ │ ├── Register.hdl │ │ │ ├── HalfAdder.hdl │ │ │ ├── Mux4Way16.hdl │ │ │ ├── FullAdder.hdl │ │ │ ├── DMux4Way.hdl │ │ │ ├── Mux8Way16.hdl │ │ │ ├── DMux8Way.hdl │ │ │ └── PC.hdl │ │ ├── builtInVMCode │ │ │ ├── Math.class │ │ │ ├── Sys.class │ │ │ ├── Array.class │ │ │ ├── Memory.class │ │ │ ├── Output.class │ │ │ ├── Screen.class │ │ │ ├── String.class │ │ │ ├── Keyboard.class │ │ │ └── JackOSClass.class │ │ └── OS │ │ │ └── Array.vm │ ├── projects │ │ ├── 10 │ │ │ ├── Square │ │ │ │ └── Main.jack │ │ │ └── ExpressionlessSquare │ │ │ │ └── Main.jack │ │ ├── 11 │ │ │ ├── Seven │ │ │ │ └── Main.jack │ │ │ ├── Pong │ │ │ │ └── Main.jack │ │ │ └── Square │ │ │ │ └── Main.jack │ │ ├── 12 │ │ │ ├── ArrayTest │ │ │ │ ├── ArrayTest.cmp │ │ │ │ └── ArrayTest.tst │ │ │ ├── Output.jack │ │ │ ├── MemoryTest │ │ │ │ ├── MemoryTest.cmp │ │ │ │ └── MemoryTest.tst │ │ │ ├── OutputTest │ │ │ │ └── OutputTestOutput.gif │ │ │ ├── ScreenTest │ │ │ │ └── ScreenTestOutput.gif │ │ │ ├── StringTest │ │ │ │ └── StringTestOutput.gif │ │ │ ├── KeyboardTest │ │ │ │ └── KeyboardTestOutput.gif │ │ │ ├── MathTest │ │ │ │ ├── MathTest.cmp │ │ │ │ └── MathTest.tst │ │ │ └── Array.jack │ │ ├── 13 │ │ │ └── more fun to go.txt │ │ ├── 07 │ │ │ ├── MemoryAccess │ │ │ │ ├── StaticTest │ │ │ │ │ ├── StaticTest.cmp │ │ │ │ │ ├── StaticTest.tst │ │ │ │ │ ├── StaticTestVME.tst │ │ │ │ │ └── StaticTest.vm │ │ │ │ ├── PointerTest │ │ │ │ │ ├── PointerTest.cmp │ │ │ │ │ ├── PointerTest.tst │ │ │ │ │ ├── PointerTestVME.tst │ │ │ │ │ └── PointerTest.vm │ │ │ │ └── BasicTest │ │ │ │ │ └── BasicTest.cmp │ │ │ └── StackArithmetic │ │ │ │ ├── SimpleAdd │ │ │ │ ├── SimpleAdd.cmp │ │ │ │ ├── SimpleAdd.vm │ │ │ │ ├── SimpleAdd.tst │ │ │ │ └── SimpleAddVME.tst │ │ │ │ └── StackTest │ │ │ │ ├── StackTest.cmp │ │ │ │ ├── StackTest.tst │ │ │ │ └── StackTestVME.tst │ │ ├── 01 │ │ │ ├── Not.cmp │ │ │ ├── And.cmp │ │ │ ├── Or.cmp │ │ │ ├── Xor.cmp │ │ │ ├── Or8Way.cmp │ │ │ ├── DMux.cmp │ │ │ ├── Not16.cmp │ │ │ ├── Mux.cmp │ │ │ ├── Not.hdl │ │ │ ├── Xor.hdl │ │ │ ├── Not.tst │ │ │ ├── Not16.hdl │ │ │ ├── Or8Way.hdl │ │ │ ├── DMux4Way.cmp │ │ │ ├── Mux.hdl │ │ │ ├── Or.hdl │ │ │ ├── And.hdl │ │ │ ├── Or16.hdl │ │ │ ├── And16.hdl │ │ │ ├── DMux.hdl │ │ │ ├── And16.cmp │ │ │ ├── Or16.cmp │ │ │ ├── Mux16.hdl │ │ │ ├── Mux4Way16.hdl │ │ │ ├── DMux.tst │ │ │ ├── Or.tst │ │ │ ├── And.tst │ │ │ ├── Xor.tst │ │ │ ├── Mux8Way16.hdl │ │ │ ├── DMux4Way.hdl │ │ │ ├── Or8Way.tst │ │ │ ├── Not16.tst │ │ │ ├── Mux16.cmp │ │ │ └── DMux8Way.hdl │ │ ├── 08 │ │ │ ├── ProgramFlow │ │ │ │ ├── BasicLoop │ │ │ │ │ ├── BasicLoop.cmp │ │ │ │ │ ├── BasicLoop.tst │ │ │ │ │ └── BasicLoopVME.tst │ │ │ │ └── FibonacciSeries │ │ │ │ │ └── FibonacciSeries.cmp │ │ │ └── FunctionCalls │ │ │ │ ├── FibonacciElement │ │ │ │ ├── FibonacciElement.cmp │ │ │ │ ├── FibonacciElementVME.tst │ │ │ │ ├── FibonacciElement.tst │ │ │ │ └── Sys.vm │ │ │ │ ├── StaticsTest │ │ │ │ ├── StaticsTest.cmp │ │ │ │ ├── StaticsTest.tst │ │ │ │ ├── StaticsTestVME.tst │ │ │ │ ├── Class1.vm │ │ │ │ └── Class2.vm │ │ │ │ ├── NestedCall │ │ │ │ ├── NestedCall.cmp │ │ │ │ ├── NestedCall.tst │ │ │ │ └── NestedCallVME.tst │ │ │ │ └── SimpleFunction │ │ │ │ ├── SimpleFunction.cmp │ │ │ │ └── SimpleFunction.vm │ │ ├── 09 │ │ │ ├── Jack OS API.pdf │ │ │ └── Square │ │ │ │ └── Main.jack │ │ ├── 05 │ │ │ ├── Add.hack │ │ │ ├── Max.hack │ │ │ └── Rect.hack │ │ ├── 02 │ │ │ ├── HalfAdder.cmp │ │ │ ├── Inc16.cmp │ │ │ ├── Inc16.hdl │ │ │ ├── Add16.hdl │ │ │ ├── FullAdder.cmp │ │ │ ├── Add16.cmp │ │ │ ├── HalfAdder.hdl │ │ │ ├── FullAdder.hdl │ │ │ ├── HalfAdder.tst │ │ │ └── Inc16.tst │ │ ├── 04 │ │ │ ├── mult │ │ │ │ ├── Mult.cmp │ │ │ │ └── Mult.asm │ │ │ └── fill │ │ │ │ ├── Fill.tst │ │ │ │ └── Fill.asm │ │ ├── 06 │ │ │ ├── add │ │ │ │ └── Add.asm │ │ │ ├── max │ │ │ │ └── MaxL.asm │ │ │ └── rect │ │ │ │ └── RectL.asm │ │ ├── 00 │ │ │ └── Xor.hdl │ │ └── 03 │ │ │ ├── a │ │ │ ├── Register.hdl │ │ │ ├── Bit.hdl │ │ │ ├── PC.hdl │ │ │ ├── RAM8.hdl │ │ │ └── RAM64.hdl │ │ │ └── b │ │ │ ├── RAM4K.hdl │ │ │ └── RAM16K.hdl │ └── mux4to16.png ├── book.epub ├── book.pdf ├── cover.jpg ├── gate1.jpg ├── gate2.jpg ├── gate3.jpg ├── gate4.jpg ├── slide.odp ├── A-format.jpg ├── C-format.jpg ├── D-field.jpg ├── HackCPU.jpg ├── J-field.jpg ├── cc_by_sa.jpg ├── mux4to16.png ├── sum.asm.png ├── PcCircuit.jpg ├── C-instruction.jpg ├── HackCommand.jpg ├── Part1Projects.jpg ├── HackCPU2Memory.jpg ├── Half_Adder.svg.png ├── nandLatchTable.png ├── HardwareSimulator.jpg ├── cpu0architecture.jpg ├── nand2tetris_overview.jpg ├── 120px-NOT_from_NAND.svg.png ├── 200px-AND_from_NAND.svg.png ├── 200px-OR_from_NAND.svg.png ├── C-instruction-revisited.jpg ├── Multiplexer_2-to-1.svg.png ├── SingleBusArchitecture.jpg ├── HackComputerMemoryMapping.jpg ├── nand2tetrisWeek2Component.png ├── 120px-AND_ANSI_Labelled.svg.png ├── 120px-NAND_ANSI_Labelled.svg.png ├── 120px-NOR_ANSI_Labelled.svg.png ├── 120px-NOT_ANSI_Labelled.svg.png ├── 120px-OR_ANSI_Labelled.svg.png ├── 120px-XNOR_ANSI_Labelled.svg.png ├── 120px-XOR_ANSI_Labelled.svg.png ├── 220px-1-bit_full-adder.svg.png ├── Full-adder_logic_diagram.svg.png ├── 220px-SR_Flip-flop_Diagram.svg.png ├── 675px-Demultiplexer_Example01.svg.png ├── 220px-4-bit_ripple_carry_adder.svg.png ├── 300px-D-Type_Transparent_Latch.svg.png ├── 500px-4-bit_ripple_carry_adder.svg.png ├── 512px-Negative-edge_triggered_master_slave_D_flip-flop.svg.png ├── book.wd ├── book.top ├── directory.wd ├── directory.md ├── editor.md └── editor.wd ├── footer.htm ├── header.htm ├── pmag201509 ├── book.epub ├── book.pdf ├── cover.jpg ├── A-format.jpg ├── C-format.jpg ├── D-field.jpg ├── HackCPU.jpg ├── J-field.jpg ├── cc_by_sa.jpg ├── PcCircuit.jpg ├── C-instruction.jpg ├── HackCommand.jpg ├── Part1Projects.jpg ├── HackCPU2Memory.jpg ├── HardwareSimulator.jpg ├── nand2tetris_overview.jpg ├── C-instruction-revisited.jpg ├── HackComputerMemoryMapping.jpg ├── book.top ├── book.wd ├── license.md ├── license.wd ├── editor.md ├── editor.wd ├── home.wd └── home.md ├── ymag201508 ├── book.epub ├── book.pdf ├── cover.jpg ├── SumVmRun.jpg ├── cc_by_sa.jpg ├── BNF_example.jpg ├── HackCommand.jpg ├── JackGrammer1.jpg ├── JackGrammer2.jpg ├── LexerExample.jpg ├── Part1Projects.jpg ├── SquareVmRun.jpg ├── BNF_exp_example.jpg ├── Half_Adder.svg.png ├── JackParsingTree.jpg ├── symbol_mapping.jpg ├── vm_seg_mapping.jpg ├── vmcode_example.jpg ├── vmcode_example1.jpg ├── vmcode_exmaple1.jpg ├── HardwareSimulator.jpg ├── MemoryManagement1.jpg ├── MemoryManagement2.jpg ├── code_gen_example1.jpg ├── if_while_code_gen.jpg ├── ScreenMemoryMapping.jpg ├── exp_code_gen_example.jpg ├── nand2tetris_overview.jpg ├── JackSquareCompileFile.jpg ├── HackComputerMemoryMapping.jpg ├── nand2tetrisWeek2Component.png ├── book.wd ├── book.top ├── editor.md └── editor.wd ├── epub.meta ├── reflink.md └── ymag └── home.md /pmag201503/focus.md: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201503/focus.wd: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201503/video.md: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201503/video.wd: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201505/focus.md: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201505/focus.wd: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201505/video.md: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201505/video.wd: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201511/focus.md: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201511/focus.wd: -------------------------------------------------------------------------------- 1 | # 本期焦點 2 | -------------------------------------------------------------------------------- /pmag201511/video.md: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201511/video.wd: -------------------------------------------------------------------------------- 1 | # 影音頻道 2 | -------------------------------------------------------------------------------- /pmag201503/article.md: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201503/article.wd: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201503/code.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/code.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/hardware.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/hardware.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/people.md: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201503/people.wd: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201503/science.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/science.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/software.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201503/software.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/article.md: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201505/article.wd: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201505/code.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/code.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/hardware.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/hardware.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/people.md: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201505/people.wd: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201505/science.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/science.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/software.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201505/software.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/article.md: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201511/article.wd: -------------------------------------------------------------------------------- 1 | # 程式人文集 2 | 3 | -------------------------------------------------------------------------------- /pmag201511/code.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/code.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/hardware.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/hardware.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/people.md: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201511/people.wd: -------------------------------------------------------------------------------- 1 | 2 | # 科技人小傳 3 | -------------------------------------------------------------------------------- /pmag201511/science.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/science.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/software.md: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /pmag201511/software.wd: -------------------------------------------------------------------------------- 1 | 2 | # 影音頻道 3 | -------------------------------------------------------------------------------- /ymag201504/focus4.md: -------------------------------------------------------------------------------- 1 | ## 停止問題 2 | 3 | -------------------------------------------------------------------------------- /ymag201504/focus4.wd: -------------------------------------------------------------------------------- 1 | ## 停止問題 2 | 3 | -------------------------------------------------------------------------------- /main/imgtest.md: -------------------------------------------------------------------------------- 1 | ![[圖、程式人雜誌封面]](cover.jpg) -------------------------------------------------------------------------------- /main/imgtest.wd: -------------------------------------------------------------------------------- 1 | ![[圖、程式人雜誌封面]](cover.jpg) -------------------------------------------------------------------------------- /main/title.md: -------------------------------------------------------------------------------- 1 | wikidown = wiki + markdown -------------------------------------------------------------------------------- /main/title.wd: -------------------------------------------------------------------------------- 1 | wikidown = wiki + markdown -------------------------------------------------------------------------------- /pmag201503/preface.md: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /pmag201503/preface.wd: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /pmag201505/preface.md: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /pmag201505/preface.wd: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /pmag201511/preface.md: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /pmag201511/preface.wd: -------------------------------------------------------------------------------- 1 | # 前言 2 | 3 | 4 | -------------------------------------------------------------------------------- /ymag201502/focus1.md: -------------------------------------------------------------------------------- 1 | ## 開放原始碼的歷史 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/focus1.wd: -------------------------------------------------------------------------------- 1 | ## 開放原始碼的歷史 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/focus4.md: -------------------------------------------------------------------------------- 1 | ## Linux 作業系統 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/focus4.wd: -------------------------------------------------------------------------------- 1 | ## Linux 作業系統 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/focus5.md: -------------------------------------------------------------------------------- 1 | # Git 版本管理系統與 github 平台 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/focus5.wd: -------------------------------------------------------------------------------- 1 | # Git 版本管理系統與 github 平台 2 | 3 | -------------------------------------------------------------------------------- /pmag201507/article2.md: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /pmag201507/article2.wd: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /pmag201507/focus8.md: -------------------------------------------------------------------------------- 1 | # Nand2Tetris 第六週 -- 組譯器 2 | 3 | -------------------------------------------------------------------------------- /pmag201507/focus8.wd: -------------------------------------------------------------------------------- 1 | # Nand2Tetris 第六週 -- 組譯器 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/article2.md: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /ymag201502/article2.wd: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /ymag201504/article2.md: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /ymag201504/article2.wd: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /ymag201506/article2.md: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /ymag201506/article2.wd: -------------------------------------------------------------------------------- 1 | ## 本文待撰寫 (作者:研發養成所 Bridan) 2 | 3 | -------------------------------------------------------------------------------- /footer.htm: -------------------------------------------------------------------------------- 1 | 2 | 3 | -------------------------------------------------------------------------------- /main/mathtest.md: -------------------------------------------------------------------------------- 1 | # 數學式 2 | 3 | $$\int_{-\infty}^{\infty} f(x) dx$$ 4 | 5 | -------------------------------------------------------------------------------- /main/mathtest.wd: -------------------------------------------------------------------------------- 1 | # 數學式 2 | 3 | $$\int_{-\infty}^{\infty} f(x) dx$$ 4 | 5 | -------------------------------------------------------------------------------- /main/mt.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/main/mt.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/scripts/defaultCPU.txt: -------------------------------------------------------------------------------- 1 | repeat { 2 | ticktock; 3 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/scripts/defaultVM.txt: -------------------------------------------------------------------------------- 1 | repeat { 2 | vmstep; 3 | } -------------------------------------------------------------------------------- /main/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/main/cover.jpg -------------------------------------------------------------------------------- /main/mt_back.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/main/mt_back.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/scripts/defaultHW.txt: -------------------------------------------------------------------------------- 1 | repeat { 2 | tick, 3 | tock; 4 | } -------------------------------------------------------------------------------- /header.htm: -------------------------------------------------------------------------------- 1 |
2 |

wikidown 電子書

3 |
4 |
5 | -------------------------------------------------------------------------------- /pmag201503/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/book.epub -------------------------------------------------------------------------------- /pmag201503/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/book.pdf -------------------------------------------------------------------------------- /pmag201503/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/cover.jpg -------------------------------------------------------------------------------- /pmag201503/table.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/table.jpg -------------------------------------------------------------------------------- /pmag201505/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/book.epub -------------------------------------------------------------------------------- /pmag201505/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/book.pdf -------------------------------------------------------------------------------- /pmag201505/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/cover.jpg -------------------------------------------------------------------------------- /pmag201507/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/book.epub -------------------------------------------------------------------------------- /pmag201507/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/book.pdf -------------------------------------------------------------------------------- /pmag201507/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/cover.jpg -------------------------------------------------------------------------------- /pmag201507/slide.odp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/slide.odp -------------------------------------------------------------------------------- /pmag201509/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/book.epub -------------------------------------------------------------------------------- /pmag201509/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/book.pdf -------------------------------------------------------------------------------- /pmag201509/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/cover.jpg -------------------------------------------------------------------------------- /pmag201511/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201511/book.epub -------------------------------------------------------------------------------- /pmag201511/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201511/book.pdf -------------------------------------------------------------------------------- /pmag201511/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201511/cover.jpg -------------------------------------------------------------------------------- /ymag201502/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/book.epub -------------------------------------------------------------------------------- /ymag201502/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/book.pdf -------------------------------------------------------------------------------- /ymag201502/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cover.jpg -------------------------------------------------------------------------------- /ymag201504/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/book.epub -------------------------------------------------------------------------------- /ymag201504/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/book.pdf -------------------------------------------------------------------------------- /ymag201504/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/cover.jpg -------------------------------------------------------------------------------- /ymag201504/slide.odp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/slide.odp -------------------------------------------------------------------------------- /ymag201506/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/book.epub -------------------------------------------------------------------------------- /ymag201506/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/book.pdf -------------------------------------------------------------------------------- /ymag201506/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/cover.jpg -------------------------------------------------------------------------------- /ymag201506/gate1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/gate1.jpg -------------------------------------------------------------------------------- /ymag201506/gate2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/gate2.jpg -------------------------------------------------------------------------------- /ymag201506/gate3.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/gate3.jpg -------------------------------------------------------------------------------- /ymag201506/gate4.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/gate4.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/StaticTest/StaticTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[256]| 2 | | 1110 | 3 | -------------------------------------------------------------------------------- /ymag201506/slide.odp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/slide.odp -------------------------------------------------------------------------------- /ymag201508/book.epub: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/book.epub -------------------------------------------------------------------------------- /ymag201508/book.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/book.pdf -------------------------------------------------------------------------------- /ymag201508/cover.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/cover.jpg -------------------------------------------------------------------------------- /main/240px-appleii.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/main/240px-appleii.jpg -------------------------------------------------------------------------------- /pmag201503/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/cc_by_sa.jpg -------------------------------------------------------------------------------- /pmag201505/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/cc_by_sa.jpg -------------------------------------------------------------------------------- /pmag201505/koa_blog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/koa_blog.jpg -------------------------------------------------------------------------------- /pmag201507/A-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/A-format.jpg -------------------------------------------------------------------------------- /pmag201507/C-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/C-format.jpg -------------------------------------------------------------------------------- /pmag201507/D-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/D-field.jpg -------------------------------------------------------------------------------- /pmag201507/HackCPU.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/HackCPU.jpg -------------------------------------------------------------------------------- /pmag201507/J-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/J-field.jpg -------------------------------------------------------------------------------- /pmag201507/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/cc_by_sa.jpg -------------------------------------------------------------------------------- /pmag201509/A-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/A-format.jpg -------------------------------------------------------------------------------- /pmag201509/C-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/C-format.jpg -------------------------------------------------------------------------------- /pmag201509/D-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/D-field.jpg -------------------------------------------------------------------------------- /pmag201509/HackCPU.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/HackCPU.jpg -------------------------------------------------------------------------------- /pmag201509/J-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/J-field.jpg -------------------------------------------------------------------------------- /pmag201509/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/cc_by_sa.jpg -------------------------------------------------------------------------------- /pmag201511/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201511/cc_by_sa.jpg -------------------------------------------------------------------------------- /pmag201511/koa_blog.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201511/koa_blog.jpg -------------------------------------------------------------------------------- /ymag201502/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc_by_sa.jpg -------------------------------------------------------------------------------- /ymag201504/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/cc_by_sa.jpg -------------------------------------------------------------------------------- /ymag201506/A-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/A-format.jpg -------------------------------------------------------------------------------- /ymag201506/C-format.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/C-format.jpg -------------------------------------------------------------------------------- /ymag201506/D-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/D-field.jpg -------------------------------------------------------------------------------- /ymag201506/HackCPU.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/HackCPU.jpg -------------------------------------------------------------------------------- /ymag201506/J-field.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/J-field.jpg -------------------------------------------------------------------------------- /ymag201506/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/cc_by_sa.jpg -------------------------------------------------------------------------------- /ymag201506/mux4to16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/mux4to16.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not.cmp: -------------------------------------------------------------------------------- 1 | | in | out | 2 | | 0 | 1 | 3 | | 1 | 0 | 4 | -------------------------------------------------------------------------------- /ymag201506/sum.asm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/sum.asm.png -------------------------------------------------------------------------------- /ymag201508/SumVmRun.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/SumVmRun.jpg -------------------------------------------------------------------------------- /ymag201508/cc_by_sa.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/cc_by_sa.jpg -------------------------------------------------------------------------------- /main/blue.wd: -------------------------------------------------------------------------------- 1 | # blue 2 | ## 藍色 3 | * [[回首頁]](main) 4 | * [顏色表](http://www.rapidtables.com/web/color/RGB_Color.htm) -------------------------------------------------------------------------------- /pmag201505/noteSpaNew.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/noteSpaNew.jpg -------------------------------------------------------------------------------- /pmag201507/PcCircuit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/PcCircuit.jpg -------------------------------------------------------------------------------- /pmag201509/PcCircuit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/PcCircuit.jpg -------------------------------------------------------------------------------- /ymag201502/JohnGruber.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/JohnGruber.jpg -------------------------------------------------------------------------------- /ymag201504/EnigmaMath.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/EnigmaMath.png -------------------------------------------------------------------------------- /ymag201504/PolandHero.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/PolandHero.png -------------------------------------------------------------------------------- /ymag201506/PcCircuit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/PcCircuit.jpg -------------------------------------------------------------------------------- /main/blue.md: -------------------------------------------------------------------------------- 1 | # blue 2 | ## 藍色 3 | * [回首頁](main.html) 4 | * [顏色表](http://www.rapidtables.com/web/color/RGB_Color.htm) -------------------------------------------------------------------------------- /pmag201503/wikidown_edit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidown_edit.jpg -------------------------------------------------------------------------------- /pmag201503/wikidown_view.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidown_view.jpg -------------------------------------------------------------------------------- /pmag201505/noteSpaEdit.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/noteSpaEdit.jpg -------------------------------------------------------------------------------- /pmag201505/noteSpaList.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/noteSpaList.jpg -------------------------------------------------------------------------------- /pmag201505/noteSpaList2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201505/noteSpaList2.jpg -------------------------------------------------------------------------------- /pmag201507/C-instruction.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/C-instruction.jpg -------------------------------------------------------------------------------- /pmag201507/HackCommand.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/HackCommand.jpg -------------------------------------------------------------------------------- /pmag201507/Part1Projects.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/Part1Projects.jpg -------------------------------------------------------------------------------- /pmag201509/C-instruction.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/C-instruction.jpg -------------------------------------------------------------------------------- /pmag201509/HackCommand.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/HackCommand.jpg -------------------------------------------------------------------------------- /pmag201509/Part1Projects.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/Part1Projects.jpg -------------------------------------------------------------------------------- /ymag201502/AaronSwartz.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/AaronSwartz.jpg -------------------------------------------------------------------------------- /ymag201502/LinusTorvalds.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/LinusTorvalds.png -------------------------------------------------------------------------------- /ymag201502/cc-by-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-88x31.png -------------------------------------------------------------------------------- /ymag201504/Bombe-rebuild.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/Bombe-rebuild.jpg -------------------------------------------------------------------------------- /ymag201506/C-instruction.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/C-instruction.jpg -------------------------------------------------------------------------------- /ymag201506/HackCommand.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/HackCommand.jpg -------------------------------------------------------------------------------- /ymag201506/Part1Projects.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/Part1Projects.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/ProgramFlow/BasicLoop/BasicLoop.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] |RAM[256]| 2 | | 257 | 6 | 3 | -------------------------------------------------------------------------------- /ymag201508/BNF_example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/BNF_example.jpg -------------------------------------------------------------------------------- /ymag201508/HackCommand.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/HackCommand.jpg -------------------------------------------------------------------------------- /ymag201508/JackGrammer1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/JackGrammer1.jpg -------------------------------------------------------------------------------- /ymag201508/JackGrammer2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/JackGrammer2.jpg -------------------------------------------------------------------------------- /ymag201508/LexerExample.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/LexerExample.jpg -------------------------------------------------------------------------------- /ymag201508/Part1Projects.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/Part1Projects.jpg -------------------------------------------------------------------------------- /ymag201508/SquareVmRun.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/SquareVmRun.jpg -------------------------------------------------------------------------------- /pmag201507/HackCPU2Memory.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/HackCPU2Memory.jpg -------------------------------------------------------------------------------- /pmag201509/HackCPU2Memory.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/HackCPU2Memory.jpg -------------------------------------------------------------------------------- /ymag201502/cc-by-nc-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-nc-88x31.png -------------------------------------------------------------------------------- /ymag201502/cc-by-nd-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-nd-88x31.png -------------------------------------------------------------------------------- /ymag201502/cc-by-sa-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-sa-88x31.png -------------------------------------------------------------------------------- /ymag201506/HackCPU2Memory.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/HackCPU2Memory.jpg -------------------------------------------------------------------------------- /ymag201506/Half_Adder.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/Half_Adder.svg.png -------------------------------------------------------------------------------- /ymag201506/nandLatchTable.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nandLatchTable.png -------------------------------------------------------------------------------- /ymag201508/BNF_exp_example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/BNF_exp_example.jpg -------------------------------------------------------------------------------- /ymag201508/Half_Adder.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/Half_Adder.svg.png -------------------------------------------------------------------------------- /ymag201508/JackParsingTree.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/JackParsingTree.jpg -------------------------------------------------------------------------------- /ymag201508/symbol_mapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/symbol_mapping.jpg -------------------------------------------------------------------------------- /ymag201508/vm_seg_mapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/vm_seg_mapping.jpg -------------------------------------------------------------------------------- /ymag201508/vmcode_example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/vmcode_example.jpg -------------------------------------------------------------------------------- /ymag201508/vmcode_example1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/vmcode_example1.jpg -------------------------------------------------------------------------------- /ymag201508/vmcode_exmaple1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/vmcode_exmaple1.jpg -------------------------------------------------------------------------------- /pmag201503/wikidown2homepage.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidown2homepage.jpg -------------------------------------------------------------------------------- /pmag201503/wikidownExplorer.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidownExplorer.jpg -------------------------------------------------------------------------------- /pmag201507/HardwareSimulator.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/HardwareSimulator.jpg -------------------------------------------------------------------------------- /pmag201509/HardwareSimulator.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/HardwareSimulator.jpg -------------------------------------------------------------------------------- /ymag201502/640px-Rms_at_pitt.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/640px-Rms_at_pitt.jpg -------------------------------------------------------------------------------- /ymag201502/cc-by-nc-nd-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-nc-nd-88x31.png -------------------------------------------------------------------------------- /ymag201502/cc-by-nc-sa-88x31.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc-by-nc-sa-88x31.png -------------------------------------------------------------------------------- /ymag201502/cc_license_icons.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/cc_license_icons.jpg -------------------------------------------------------------------------------- /ymag201504/four-rotor-enigma.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/four-rotor-enigma.jpg -------------------------------------------------------------------------------- /ymag201506/HardwareSimulator.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/HardwareSimulator.jpg -------------------------------------------------------------------------------- /ymag201506/cpu0architecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/cpu0architecture.jpg -------------------------------------------------------------------------------- /ymag201508/HardwareSimulator.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/HardwareSimulator.jpg -------------------------------------------------------------------------------- /ymag201508/MemoryManagement1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/MemoryManagement1.jpg -------------------------------------------------------------------------------- /ymag201508/MemoryManagement2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/MemoryManagement2.jpg -------------------------------------------------------------------------------- /ymag201508/code_gen_example1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/code_gen_example1.jpg -------------------------------------------------------------------------------- /ymag201508/if_while_code_gen.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/if_while_code_gen.jpg -------------------------------------------------------------------------------- /pmag201503/header.htm: -------------------------------------------------------------------------------- 1 |
2 |

程式人雜誌

3 |
4 |
5 | -------------------------------------------------------------------------------- /pmag201503/title.md: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /pmag201503/title.wd: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /pmag201505/header.htm: -------------------------------------------------------------------------------- 1 |
2 |

程式人雜誌

3 |
4 |
5 | -------------------------------------------------------------------------------- /pmag201505/title.md: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /pmag201505/title.wd: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /pmag201507/nand2tetris_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/nand2tetris_overview.jpg -------------------------------------------------------------------------------- /pmag201509/nand2tetris_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/nand2tetris_overview.jpg -------------------------------------------------------------------------------- /pmag201511/header.htm: -------------------------------------------------------------------------------- 1 |
2 |

程式人雜誌

3 |
4 |
5 | -------------------------------------------------------------------------------- /pmag201511/title.md: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /pmag201511/title.wd: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/mux4to16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/mux4to16.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/SimpleAdd/SimpleAdd.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] | RAM[256] | 2 | | 257 | 15 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris_overview.jpg -------------------------------------------------------------------------------- /ymag201508/ScreenMemoryMapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/ScreenMemoryMapping.jpg -------------------------------------------------------------------------------- /ymag201508/exp_code_gen_example.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/exp_code_gen_example.jpg -------------------------------------------------------------------------------- /ymag201508/nand2tetris_overview.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/nand2tetris_overview.jpg -------------------------------------------------------------------------------- /main/220px-xerox_alto_mit_rechner.JPG: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/main/220px-xerox_alto_mit_rechner.JPG -------------------------------------------------------------------------------- /pmag201503/wikidown_github_create.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidown_github_create.jpg -------------------------------------------------------------------------------- /pmag201507/C-instruction-revisited.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/C-instruction-revisited.jpg -------------------------------------------------------------------------------- /pmag201509/C-instruction-revisited.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/C-instruction-revisited.jpg -------------------------------------------------------------------------------- /ymag201504/1024px-Bletchley_Park.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/1024px-Bletchley_Park.jpg -------------------------------------------------------------------------------- /ymag201504/1024px-Kenngruppenheft.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/1024px-Kenngruppenheft.jpg -------------------------------------------------------------------------------- /ymag201504/225px-alan_turing_photo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/225px-alan_turing_photo.jpg -------------------------------------------------------------------------------- /ymag201504/633px-Enigma-action.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/633px-Enigma-action.svg.png -------------------------------------------------------------------------------- /ymag201504/633px-enigma-action-svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/633px-enigma-action-svg.png -------------------------------------------------------------------------------- /ymag201504/640px-enigma-plugboard.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/640px-enigma-plugboard.jpg -------------------------------------------------------------------------------- /ymag201504/Enigma_wiring_kleur.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/Enigma_wiring_kleur.svg.png -------------------------------------------------------------------------------- /ymag201504/enigma_wiring_kleur-svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/enigma_wiring_kleur-svg.png -------------------------------------------------------------------------------- /ymag201506/120px-NOT_from_NAND.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-NOT_from_NAND.svg.png -------------------------------------------------------------------------------- /ymag201506/200px-AND_from_NAND.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/200px-AND_from_NAND.svg.png -------------------------------------------------------------------------------- /ymag201506/200px-OR_from_NAND.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/200px-OR_from_NAND.svg.png -------------------------------------------------------------------------------- /ymag201506/C-instruction-revisited.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/C-instruction-revisited.jpg -------------------------------------------------------------------------------- /ymag201506/Multiplexer_2-to-1.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/Multiplexer_2-to-1.svg.png -------------------------------------------------------------------------------- /ymag201506/SingleBusArchitecture.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/SingleBusArchitecture.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/FibonacciElement/FibonacciElement.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] |RAM[261]| 2 | | 262 | 3 | 3 | -------------------------------------------------------------------------------- /ymag201508/JackSquareCompileFile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/JackSquareCompileFile.jpg -------------------------------------------------------------------------------- /pmag201507/HackComputerMemoryMapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201507/HackComputerMemoryMapping.jpg -------------------------------------------------------------------------------- /pmag201509/HackComputerMemoryMapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201509/HackComputerMemoryMapping.jpg -------------------------------------------------------------------------------- /ymag201504/640px-enigma-rotor-stack.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201504/640px-enigma-rotor-stack.jpg -------------------------------------------------------------------------------- /ymag201506/HackComputerMemoryMapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/HackComputerMemoryMapping.jpg -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/StaticsTest/StaticsTest.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] |RAM[261]|RAM[262]| 2 | | 263 | -2 | 8 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetrisWeek2Component.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetrisWeek2Component.png -------------------------------------------------------------------------------- /ymag201508/HackComputerMemoryMapping.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/HackComputerMemoryMapping.jpg -------------------------------------------------------------------------------- /ymag201508/nand2tetrisWeek2Component.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201508/nand2tetrisWeek2Component.png -------------------------------------------------------------------------------- /pmag201503/wikidown_github_project_page.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/pmag201503/wikidown_github_project_page.jpg -------------------------------------------------------------------------------- /ymag201502/220px-Aaron_Swartz_profile.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201502/220px-Aaron_Swartz_profile.jpg -------------------------------------------------------------------------------- /ymag201506/120px-AND_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-AND_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-NAND_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-NAND_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-NOR_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-NOR_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-NOT_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-NOT_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-OR_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-OR_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-XNOR_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-XNOR_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/120px-XOR_ANSI_Labelled.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/120px-XOR_ANSI_Labelled.svg.png -------------------------------------------------------------------------------- /ymag201506/220px-1-bit_full-adder.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/220px-1-bit_full-adder.svg.png -------------------------------------------------------------------------------- /ymag201506/Full-adder_logic_diagram.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/Full-adder_logic_diagram.svg.png -------------------------------------------------------------------------------- /ymag201506/220px-SR_Flip-flop_Diagram.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/220px-SR_Flip-flop_Diagram.svg.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/ArrayTest/ArrayTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[8000]|RAM[8001]|RAM[8002]|RAM[8003]| 2 | | 222 | 122 | 100 | 10 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/Hack.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/Hack.jar -------------------------------------------------------------------------------- /ymag201506/675px-Demultiplexer_Example01.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/675px-Demultiplexer_Example01.svg.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/Output.jack: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/12/Output.jack -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/chip.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/chip.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/find.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/find.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/hex.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/hex.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/ok.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/ok.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/ok2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/ok2.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/open.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/open.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/save.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/save.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/HackGUI.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/HackGUI.jar -------------------------------------------------------------------------------- /ymag201506/220px-4-bit_ripple_carry_adder.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/220px-4-bit_ripple_carry_adder.svg.png -------------------------------------------------------------------------------- /ymag201506/300px-D-Type_Transparent_Latch.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/300px-D-Type_Transparent_Latch.svg.png -------------------------------------------------------------------------------- /ymag201506/500px-4-bit_ripple_carry_adder.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/500px-4-bit_ripple_carry_adder.svg.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/09/Jack OS API.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/09/Jack OS API.pdf -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/arrow2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/arrow2.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/cancel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/cancel.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/clock2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/clock2.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/equal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/equal.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/open2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/open2.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/scroll.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/scroll.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/Compilers.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/Compilers.jar -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/ALU.hdl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/ALU.hdl -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Or.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Or.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/PC.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/PC.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/keyboard.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/keyboard.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/opendoc.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/opendoc.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/redflag.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/redflag.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallnew.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallnew.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallok.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallok.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallplus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallplus.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/vcrrewind.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/vcrrewind.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/vcrstop.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/vcrstop.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/AssemblerGUI.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/AssemblerGUI.jar -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/Simulators.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/Simulators.jar -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/ALU.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/ALU.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Add16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Add16.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/And.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/And.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Bit.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Bit.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DFF.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/DFF.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/DMux.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Inc16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Inc16.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Mux.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Nand.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Nand.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Not.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Not.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Not16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Not16.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM4K.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM4K.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM64.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM64.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM8.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM8.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Xor.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Xor.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Math.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Math.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Sys.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Sys.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/05/Add.hack: -------------------------------------------------------------------------------- 1 | 0000000000000010 2 | 1110110000010000 3 | 0000000000000011 4 | 1110000010010000 5 | 0000000000000000 6 | 1110001100001000 7 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/calculator2.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/calculator2.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallcancel.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallcancel.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallequal.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallequal.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/smallminus.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/smallminus.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/vcrforward.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/vcrforward.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/SimulatorsGUI.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/SimulatorsGUI.jar -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/lib/TranslatorsGUI.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/lib/TranslatorsGUI.jar -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Or8Way.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Or8Way.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM16K.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM16K.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RAM512.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RAM512.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/ROM32K.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/ROM32K.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Screen.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Screen.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Array.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Array.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Memory.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Memory.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Output.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Output.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Screen.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Screen.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/String.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/String.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/PointerTest/PointerTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[256]| RAM[3] | RAM[4] |RAM[3032|RAM[3046| 2 | | 6084 | 3030 | 3040 | 32 | 46 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/NestedCall/NestedCall.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] | RAM[1] | RAM[2] | RAM[5] | RAM[6] | 2 | | 261 | 261 | 256 | 135 | 246 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/images/vcrfastforward.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/images/vcrfastforward.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/ARegister.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/ARegister.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux4Way.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/DMux4Way.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux8Way.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/DMux8Way.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DRegister.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/DRegister.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/FullAdder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/FullAdder.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/HalfAdder.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/HalfAdder.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Keyboard.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Keyboard.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux4Way16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Mux4Way16.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux8Way16.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Mux8Way16.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Register.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/Register.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/Keyboard.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/Keyboard.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/classes/TextComparer.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/classes/TextComparer.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInVMCode/JackOSClass.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInVMCode/JackOSClass.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/classes/CPUEmulatorMain.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/classes/CPUEmulatorMain.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/classes/VMEmulatorMain.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/classes/VMEmulatorMain.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/RegisterWithGUI.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/builtInChips/RegisterWithGUI.class -------------------------------------------------------------------------------- /ymag201504/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近由於電影『模仿遊戲』的上演,讓我也再次探索了圖靈這位資訊領域先驅者的傳奇人生,雖然電影和真實的歷史似乎有相當的差距,但仍然讓我更能夠理解當時的技術背景,因此在本期中,我們將帶您重新探索圖靈與 Enigma 密碼機的故事。 4 | 5 | ---- (「少年科技人雜誌」編輯 - 陳鍾誠) 6 | 7 | -------------------------------------------------------------------------------- /ymag201504/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近由於電影『模仿遊戲』的上演,讓我也再次探索了圖靈這位資訊領域先驅者的傳奇人生,雖然電影和真實的歷史似乎有相當的差距,但仍然讓我更能夠理解當時的技術背景,因此在本期中,我們將帶您重新探索圖靈與 Enigma 密碼機的故事。 4 | 5 | ---- (「少年科技人雜誌」編輯 - 陳鍾誠) 6 | 7 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/And.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0 | 0 | 0 | 3 | | 0 | 1 | 0 | 4 | | 1 | 0 | 0 | 5 | | 1 | 1 | 1 | 6 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0 | 0 | 0 | 3 | | 0 | 1 | 1 | 4 | | 1 | 0 | 1 | 5 | | 1 | 1 | 1 | 6 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Xor.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0 | 0 | 0 | 3 | | 0 | 1 | 1 | 4 | | 1 | 0 | 1 | 5 | | 1 | 1 | 0 | 6 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/MemoryTest/MemoryTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[8000]|RAM[8001]|RAM[8002]|RAM[8003]|RAM[8004]|RAM[8005]| 2 | | 333 | 334 | 222 | 122 | 100 | 10 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/classes/HackAssemblerMain.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/classes/HackAssemblerMain.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or8Way.cmp: -------------------------------------------------------------------------------- 1 | | in | out | 2 | | 00000000 | 0 | 3 | | 11111111 | 1 | 4 | | 00010000 | 1 | 5 | | 00000001 | 1 | 6 | | 00100110 | 1 | 7 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/OutputTest/OutputTestOutput.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/12/OutputTest/OutputTestOutput.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/ScreenTest/ScreenTestOutput.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/12/ScreenTest/ScreenTestOutput.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/StringTest/StringTestOutput.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/12/StringTest/StringTestOutput.gif -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/classes/HardwareSimulatorMain.class: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/tools/bin/classes/HardwareSimulatorMain.class -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/SimpleFunction/SimpleFunction.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] | RAM[1] | RAM[2] | RAM[3] | RAM[4] |RAM[310]| 2 | | 311 | 305 | 300 | 3010 | 4010 | 1196 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/KeyboardTest/KeyboardTestOutput.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/nand2tetris/projects/12/KeyboardTest/KeyboardTestOutput.gif -------------------------------------------------------------------------------- /ymag201506/512px-Negative-edge_triggered_master_slave_D_flip-flop.svg.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/programmermagazine/mag/gh-pages/ymag201506/512px-Negative-edge_triggered_master_slave_D_flip-flop.svg.png -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/ProgramFlow/FibonacciSeries/FibonacciSeries.cmp: -------------------------------------------------------------------------------- 1 | |RAM[3000]|RAM[3001]|RAM[3002]|RAM[3003]|RAM[3004]|RAM[3005]| 2 | | 0 | 1 | 1 | 2 | 3 | 5 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/BasicTest/BasicTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[256]|RAM[300]|RAM[401]|RAM[402]|RAM[3006|RAM[3012|RAM[3015|RAM[11] | 2 | | 472 | 10 | 21 | 22 | 36 | 42 | 45 | 510 | 3 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux.cmp: -------------------------------------------------------------------------------- 1 | | in | sel | a | b | 2 | | 0 | 0 | 0 | 0 | 3 | | 0 | 1 | 0 | 0 | 4 | | 1 | 0 | 1 | 0 | 5 | | 1 | 1 | 0 | 1 | 6 | -------------------------------------------------------------------------------- /pmag201505/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近聽到許多用 node.js 的網友改去用 io.js ,然後他們還開始用了 koa.js 這個框架。 4 | 5 | 筆者不看不知道,一看不得了,發現這是個重要的好東西,只好趕快來介紹給大家認識。 6 | 7 | 於是就產生了這期的『JavaScript 語言的新進展 (ES6, io.js 與 koa)』 .... 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /pmag201505/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近聽到許多用 node.js 的網友改去用 io.js ,然後他們還開始用了 koa.js 這個框架。 4 | 5 | 筆者不看不知道,一看不得了,發現這是個重要的好東西,只好趕快來介紹給大家認識。 6 | 7 | 於是就產生了這期的『JavaScript 語言的新進展 (ES6, io.js 與 koa)』 .... 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /pmag201511/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近聽到許多用 node.js 的網友改去用 io.js ,然後他們還開始用了 koa.js 這個框架。 4 | 5 | 筆者不看不知道,一看不得了,發現這是個重要的好東西,只好趕快來介紹給大家認識。 6 | 7 | 於是就產生了這期的『JavaScript 語言的新進展 (ES6, io.js 與 koa)』 .... 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /pmag201511/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近聽到許多用 node.js 的網友改去用 io.js ,然後他們還開始用了 koa.js 這個框架。 4 | 5 | 筆者不看不知道,一看不得了,發現這是個重要的好東西,只好趕快來介紹給大家認識。 6 | 7 | 於是就產生了這期的『JavaScript 語言的新進展 (ES6, io.js 與 koa)』 .... 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/HalfAdder.cmp: -------------------------------------------------------------------------------- 1 | | a | b | sum | carry | 2 | | 0 | 0 | 0 | 0 | 3 | | 0 | 1 | 1 | 0 | 4 | | 1 | 0 | 1 | 0 | 5 | | 1 | 1 | 0 | 1 | 6 | -------------------------------------------------------------------------------- /main/home.wd: -------------------------------------------------------------------------------- 1 | | 主題 | 連結 | 2 | |-------|--------| 3 | | [[陳鍾誠]](ccc:home) | [[知識地圖]](book:map) | [[教科書]](book:home) | [[小說]](novel:home) | [[程式]](ccc:code) | 4 | | [[雜誌]](mag:home) | [[程式人雜誌]](pmag:home) | [[少年科技人雜誌]](ymag:home) | 5 | 6 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/Inc16.cmp: -------------------------------------------------------------------------------- 1 | | in | out | 2 | | 0000000000000000 | 0000000000000001 | 3 | | 1111111111111111 | 0000000000000000 | 4 | | 0000000000000101 | 0000000000000110 | 5 | | 1111111111111011 | 1111111111111100 | 6 | -------------------------------------------------------------------------------- /ymag201502/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 在資訊工業的領域,『開放原始碼』已經是極度重要的工業基礎建設,其影響力遠遠超過 蘋果與微軟等廠商,但對還沒進入 『資訊工業』的少年科技人而言, 通常很難一窺『開放原始碼』領域的奧秘。 4 | 5 | 因此我們將在本期當中全面性的介紹有關『開放原始碼』的『歷史、授權、軟體、硬體、人物』,還有『開放原始碼與工業體系』之間的關係,希望能透過這樣的介紹讓少年科技人對此一領域有更完整深入的瞭解。 6 | 7 | ---- (「少年科技人雜誌」編輯 - 陳鍾誠) 8 | 9 | -------------------------------------------------------------------------------- /ymag201502/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 在資訊工業的領域,『開放原始碼』已經是極度重要的工業基礎建設,其影響力遠遠超過 蘋果與微軟等廠商,但對還沒進入 『資訊工業』的少年科技人而言, 通常很難一窺『開放原始碼』領域的奧秘。 4 | 5 | 因此我們將在本期當中全面性的介紹有關『開放原始碼』的『歷史、授權、軟體、硬體、人物』,還有『開放原始碼與工業體系』之間的關係,希望能透過這樣的介紹讓少年科技人對此一領域有更完整深入的瞭解。 6 | 7 | ---- (「少年科技人雜誌」編輯 - 陳鍾誠) 8 | 9 | -------------------------------------------------------------------------------- /epub.meta: -------------------------------------------------------------------------------- 1 | --- 2 | title: 程式人雜誌, 少年科技人雜誌 3 | - type: main 4 | text: My Book 5 | - type: subtitle 6 | text: 2015年2月號 7 | creator: 8 | - role: editor 9 | text: 陳鍾誠 10 | identifier: 11 | - scheme: DOI 12 | text: doi:10.234234.234/33 13 | publisher: web 14 | rights: CC BY-SA 15 | -------------------------------------------------------------------------------- /main/home.md: -------------------------------------------------------------------------------- 1 | | 主題 | 連結 | 2 | |-------|--------| 3 | | [陳鍾誠](../ccc/home.html) | [知識地圖](../book/map.html) | [教科書](../book/home.html) | [小說](../novel/home.html) | [程式](../ccc/code.html) | 4 | | [雜誌](../mag/home.html) | [程式人雜誌](../pmag/home.html) | [少年科技人雜誌](../ymag/home.html) | 5 | 6 | -------------------------------------------------------------------------------- /ymag201504/book.top: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 4 月 3 | % 本期焦點:圖靈與 Enigma 密碼機 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 圖靈與 Enigma 密碼機 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | # 科技人物 13 | file:people1 14 | 15 | file:info -------------------------------------------------------------------------------- /pmag201503/epub.meta: -------------------------------------------------------------------------------- 1 | --- 2 | title: 程式人雜誌, 少年科技人雜誌 3 | - type: main 4 | text: My Book 5 | - type: subtitle 6 | text: 2015年2月號 7 | creator: 8 | - role: editor 9 | text: 陳鍾誠 10 | identifier: 11 | - scheme: DOI 12 | text: doi:10.234234.234/33 13 | publisher: web 14 | rights: CC BY-SA 15 | -------------------------------------------------------------------------------- /pmag201505/epub.meta: -------------------------------------------------------------------------------- 1 | --- 2 | title: 程式人雜誌, 少年科技人雜誌 3 | - type: main 4 | text: My Book 5 | - type: subtitle 6 | text: 2015年2月號 7 | creator: 8 | - role: editor 9 | text: 陳鍾誠 10 | identifier: 11 | - scheme: DOI 12 | text: doi:10.234234.234/33 13 | publisher: web 14 | rights: CC BY-SA 15 | -------------------------------------------------------------------------------- /pmag201509/book.top: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 9 月 3 | % 本期焦點:向 Nand2Tetris 學習系統軟體設計 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點:向 Nand2Tetris 學習系統軟體設計 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | 14 | file:info 15 | -------------------------------------------------------------------------------- /pmag201511/epub.meta: -------------------------------------------------------------------------------- 1 | --- 2 | title: 程式人雜誌, 少年科技人雜誌 3 | - type: main 4 | text: My Book 5 | - type: subtitle 6 | text: 2015年2月號 7 | creator: 8 | - role: editor 9 | text: 陳鍾誠 10 | identifier: 11 | - scheme: DOI 12 | text: doi:10.234234.234/33 13 | publisher: web 14 | rights: CC BY-SA 15 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not16.cmp: -------------------------------------------------------------------------------- 1 | | in | out | 2 | | 0000000000000000 | 1111111111111111 | 3 | | 1111111111111111 | 0000000000000000 | 4 | | 1010101010101010 | 0101010101010101 | 5 | | 0011110011000011 | 1100001100111100 | 6 | | 0001001000110100 | 1110110111001011 | 7 | -------------------------------------------------------------------------------- /pmag201503/footer.htm: -------------------------------------------------------------------------------- 1 |
2 | 5 | -------------------------------------------------------------------------------- /pmag201505/footer.htm: -------------------------------------------------------------------------------- 1 |
2 | 5 | -------------------------------------------------------------------------------- /pmag201511/footer.htm: -------------------------------------------------------------------------------- 1 |
2 | 5 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/04/mult/Mult.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] | RAM[1] | RAM[2] | 2 | | 0 | 0 | 0 | 3 | | 1 | 0 | 0 | 4 | | 0 | 2 | 0 | 5 | | 3 | 1 | 3 | 6 | | 2 | 4 | 8 | 7 | | 6 | 7 | 42 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/06/add/Add.asm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/06/add/Add.asm 5 | 6 | // Computes R0 = 2 + 3 7 | 8 | @2 9 | D=A 10 | @3 11 | D=D+A 12 | @0 13 | M=D 14 | -------------------------------------------------------------------------------- /pmag201507/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /pmag201509/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201502/book.md: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201502/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201504/book.md: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201504/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201506/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /ymag201508/book.wd: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | # info 18 | -------------------------------------------------------------------------------- /main/ccckmit.wd: -------------------------------------------------------------------------------- 1 | # 關於作者 2 | 3 | | 作者 | 陳鍾誠 | 4 | |--------|-----------| 5 | | 作品 | [[wikidown]] | 6 | | email | | 7 | | 網站 | | 8 | 9 | 10 | 歡迎加入 [程式人雜誌社團](https://www.facebook.com/groups/programmerMagazine/) ! 11 | 12 | 本專案原始碼位於: 13 | 14 | -------------------------------------------------------------------------------- /ymag201502/book.top: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 2 月 3 | % 本期焦點:開放原始碼的世界 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: 開放原始碼的世界 9 | file:focus2 10 | file:focus3 11 | # 科技人物 12 | file:people1 13 | file:people2 14 | file:people4 15 | # 程式人文集 16 | file:article1 17 | 18 | file:info -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/StackTest/StackTest.cmp: -------------------------------------------------------------------------------- 1 | | RAM[0] | RAM[256] | RAM[257] | RAM[258] | RAM[259] | RAM[260] | 2 | | 266 | -1 | 0 | 0 | 0 | -1 | 3 | | RAM[261] | RAM[262] | RAM[263] | RAM[264] | RAM[265] | 4 | | 0 | -1 | 0 | 0 | -91 | 5 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/MathTest/MathTest.cmp: -------------------------------------------------------------------------------- 1 | |RAM[8000]|RAM[8001]|RAM[8002]|RAM[8003]|RAM[8004]|RAM[8005]|RAM[8006]|RAM[8007]|RAM[8008]|RAM[8009]|RAM[8010]|RAM[8011]|RAM[8012]|RAM[8013]| 2 | | 6 | -180 | -18000 | -18000 | 0 | 3 | -3000 | 0 | 3 | 181 | 123 | 123 | 27 | 32767 | 3 | -------------------------------------------------------------------------------- /pmag201507/book.top: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 7 月 3 | % 本期焦點:向 Nand2Tetris 學習電腦硬體設計 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點:向 Nand2Tetris 學習電腦硬體設計 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | file:focus5 14 | file:focus6 15 | file:focus7 16 | 17 | file:info -------------------------------------------------------------------------------- /main/ccckmit.md: -------------------------------------------------------------------------------- 1 | # 關於作者 2 | 3 | | 作者 | 陳鍾誠 | 4 | |--------|-----------| 5 | | 作品 | [wikidown](wikidown.html) | 6 | | email | | 7 | | 網站 | | 8 | 9 | 10 | 歡迎加入 [程式人雜誌社團](https://www.facebook.com/groups/programmerMagazine/) ! 11 | 12 | 本專案原始碼位於: 13 | 14 | -------------------------------------------------------------------------------- /pmag201503/book.top: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | # 程式人文集 14 | file:article1 15 | file:article2 16 | file:article3 17 | 18 | file:info 19 | -------------------------------------------------------------------------------- /pmag201511/book.top: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 3 月 3 | % 本期焦點:Wikidown.js 維基網誌系統 -- 躍上雲端記 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | # 程式人文集 14 | file:article1 15 | file:article2 16 | file:article3 17 | 18 | file:info 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/13/more fun to go.txt: -------------------------------------------------------------------------------- 1 | See Chapter 13 in the book. It's your call! 2 | 3 | And, if you've developed something cool, and you wish to share it with others, please let us know about it. We'll put a link to it from the nand2tetris site. 4 | 5 | We hope that you enjoyed the ride! 6 | 7 | -- Noam and Shimon 8 | 9 | www.nand2tetris.org -------------------------------------------------------------------------------- /pmag201505/book.top: -------------------------------------------------------------------------------- 1 | % [程式人雜誌](http://programmermagazine.github.com/home/) 2 | % 2015 年 5 月 3 | % 本期焦點:JavaScript 語言的新進展 (ES6, io.js 與 koa) 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | file:focus5 14 | # 程式人文集 15 | file:article1 16 | file:article2 17 | file:article3 18 | 19 | file:info 20 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/SimpleAdd/SimpleAdd.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/StackArithmetic/SimpleAdd/SimpleAdd.vm 5 | 6 | // Pushes and adds two constants. 7 | push constant 7 8 | push constant 8 9 | add 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/bin/help/compiler.txt: -------------------------------------------------------------------------------- 1 | Jack Compiler, Version 2.5 2 | 3 | This program is part of www.nand2tetris.org 4 | and the book "The Elements of Computing Systems" 5 | by Nisan and Schocken, MIT Press. 6 | 7 | Software Architects: Yaron Ukrainitz and Yannai A. Gonczarowski 8 | 9 | Usage instruction and tips can be found in the relevant book chapters. 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Not.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Not.hdl 5 | 6 | /** 7 | * Not gate: out = not in 8 | */ 9 | 10 | CHIP Not { 11 | 12 | IN in; 13 | OUT out; 14 | 15 | BUILTIN Not; 16 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/04/mult/Mult.asm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/04/Mult.asm 5 | 6 | // Multiplies R0 and R1 and stores the result in R2. 7 | // (R0, R1, R2 refer to RAM[0], RAM[1], and RAM[2], respectively.) 8 | 9 | // Put your code here. -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux.cmp: -------------------------------------------------------------------------------- 1 | | a | b | sel | out | 2 | | 0 | 0 | 0 | 0 | 3 | | 0 | 0 | 1 | 0 | 4 | | 0 | 1 | 0 | 0 | 5 | | 0 | 1 | 1 | 1 | 6 | | 1 | 0 | 0 | 1 | 7 | | 1 | 0 | 1 | 0 | 8 | | 1 | 1 | 0 | 1 | 9 | | 1 | 1 | 1 | 1 | 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/05/Max.hack: -------------------------------------------------------------------------------- 1 | 0000000000000000 2 | 1111110000010000 3 | 0000000000000001 4 | 1111010011010000 5 | 0000000000001010 6 | 1110001100000001 7 | 0000000000000001 8 | 1111110000010000 9 | 0000000000001100 10 | 1110101010000111 11 | 0000000000000000 12 | 1111110000010000 13 | 0000000000000010 14 | 1110001100001000 15 | 0000000000001110 16 | 1110101010000111 17 | -------------------------------------------------------------------------------- /ymag201506/book.top: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 6 月 3 | % 本期焦點:Nand2Tetris 慕課記 -- 從邏輯閘到方塊遊戲 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: Nand2Tetris 慕課記 -- 從邏輯閘到方塊遊戲 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | file:focus5 14 | file:focus6 15 | file:focus7 16 | file:focus8 17 | file:focus9 18 | 19 | file:info -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Nand.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Nand.hdl 5 | 6 | /** 7 | * Nand gate: out = a Nand b. 8 | */ 9 | 10 | CHIP Nand { 11 | 12 | IN a, b; 13 | OUT out; 14 | 15 | BUILTIN Nand; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Not.hdl 5 | 6 | /** 7 | * Not gate: 8 | * out = not in 9 | */ 10 | 11 | CHIP Not { 12 | IN in; 13 | OUT out; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Xor.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Xor.hdl 5 | 6 | /** 7 | * Exclusive-or gate: out = !(a == b). 8 | */ 9 | 10 | CHIP Xor { 11 | 12 | IN a, b; 13 | OUT out; 14 | 15 | BUILTIN Xor; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201508/book.top: -------------------------------------------------------------------------------- 1 | % [少年科技人雜誌](http://programmermagazine.github.com/ymag/) 2 | % 2015 年 8 月 3 | % 本期焦點:Nand2Tetris Part II 自學記 -- 從組譯器到作業系統 4 | 5 | # 前言 6 | file:editor 7 | file:license 8 | # 本期焦點: Nand2Tetris Part II 自學記 -- 從組譯器到作業系統 9 | file:focus1 10 | file:focus2 11 | file:focus3 12 | file:focus4 13 | file:focus5 14 | file:focus6 15 | file:focus7 16 | file:focus8 17 | 18 | file:info 19 | -------------------------------------------------------------------------------- /reflink.md: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [陳鍾誠]: http://ccckmit.wikidot.com/ 8 | [維基百科]:http://zh.wikipedia.org/ 9 | -------------------------------------------------------------------------------- /pmag201505/code/generator/copyFile.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | 3 | function copyFile(fromFile, toFile) { 4 | fs.readFile(fromFile, "utf8", function(err, data) { 5 | console.log('read %s complete!', fromFile); 6 | fs.writeFile(toFile, data, function(err) { 7 | console.log('write %s complete!', toFile); 8 | }); 9 | }); 10 | } 11 | 12 | copyFile(process.argv[2], process.argv[3]); 13 | -------------------------------------------------------------------------------- /pmag201505/code/generator/copyFile2.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | 3 | function copyFile(fromFile, toFile) { 4 | fs.readFile(fromFile, "utf8", function(err, data) { 5 | console.log('read %s complete!', fromFile); 6 | fs.writeFile(toFile, data, function(err) { 7 | console.log('write %s complete!', toFile); 8 | }); 9 | }); 10 | } 11 | 12 | copyFile(process.argv[2], process.argv[3]); 13 | -------------------------------------------------------------------------------- /pmag201511/code/generator/copyFile.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | 3 | function copyFile(fromFile, toFile) { 4 | fs.readFile(fromFile, "utf8", function(err, data) { 5 | console.log('read %s complete!', fromFile); 6 | fs.writeFile(toFile, data, function(err) { 7 | console.log('write %s complete!', toFile); 8 | }); 9 | }); 10 | } 11 | 12 | copyFile(process.argv[2], process.argv[3]); 13 | -------------------------------------------------------------------------------- /pmag201511/code/generator/copyFile2.js: -------------------------------------------------------------------------------- 1 | var fs = require('fs'); 2 | 3 | function copyFile(fromFile, toFile) { 4 | fs.readFile(fromFile, "utf8", function(err, data) { 5 | console.log('read %s complete!', fromFile); 6 | fs.writeFile(toFile, data, function(err) { 7 | console.log('write %s complete!', toFile); 8 | }); 9 | }); 10 | } 11 | 12 | copyFile(process.argv[2], process.argv[3]); 13 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Xor.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Xor.hdl 5 | 6 | /** 7 | * Exclusive-or gate: 8 | * out = not (a == b) 9 | */ 10 | 11 | CHIP Xor { 12 | IN a, b; 13 | OUT out; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/And.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/And.hdl 5 | 6 | /** 7 | * And gate: out = 1 if {a == 1 and b == 1}, 0 otherwise 8 | */ 9 | 10 | CHIP And { 11 | 12 | IN a, b; 13 | OUT out; 14 | 15 | BUILTIN And; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Mux.hdl 5 | 6 | /** 7 | * Multiplexor. If sel == 1 then out = b else out = a. 8 | */ 9 | 10 | CHIP Mux { 11 | 12 | IN a, b, sel; 13 | OUT out; 14 | 15 | BUILTIN Mux; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Not16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Not16.hdl 5 | 6 | /** 7 | * 16-bit Not gate: for i = 0..15: out[i] = not in[i] 8 | */ 9 | 10 | CHIP Not16 { 11 | 12 | IN in[16]; 13 | OUT out[16]; 14 | 15 | BUILTIN Not16; 16 | } -------------------------------------------------------------------------------- /pmag201507/directory.wd: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [[編輯小語]](editor) 3 | * [[授權聲明]](license) 4 | * 本期焦點: 開放原始碼的世界 5 | * [[開放原始碼授權]](focus2) 6 | * [[進入開放原始碼領域的方法]](focus3) 7 | * 科技人物 8 | * [[開源之父 -- Richard Stallman]](people1) 9 | * [[開源大師 -- Linus Torvalds]](people2) 10 | * [[Markdown 與 RSS 的創造者 -- Aaron Swartz]](people4) 11 | * 程式人文集 12 | * [[我的開放原始碼之路 -- (作者:陳鍾誠)]](article1) 13 | * [[雜誌訊息]](info) 14 | 15 | -------------------------------------------------------------------------------- /ymag201502/directory.wd: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [[編輯小語]](editor) 3 | * [[授權聲明]](license) 4 | * 本期焦點: 開放原始碼的世界 5 | * [[開放原始碼授權]](focus2) 6 | * [[進入開放原始碼領域的方法]](focus3) 7 | * 科技人物 8 | * [[開源之父 -- Richard Stallman]](people1) 9 | * [[開源大師 -- Linus Torvalds]](people2) 10 | * [[Markdown 與 RSS 的創造者 -- Aaron Swartz]](people4) 11 | * 程式人文集 12 | * [[我的開放原始碼之路 -- (作者:陳鍾誠)]](article1) 13 | * [[雜誌訊息]](info) 14 | 15 | -------------------------------------------------------------------------------- /ymag201504/directory.wd: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [[編輯小語]](editor) 3 | * [[授權聲明]](license) 4 | * 本期焦點: 開放原始碼的世界 5 | * [[開放原始碼授權]](focus2) 6 | * [[進入開放原始碼領域的方法]](focus3) 7 | * 科技人物 8 | * [[開源之父 -- Richard Stallman]](people1) 9 | * [[開源大師 -- Linus Torvalds]](people2) 10 | * [[Markdown 與 RSS 的創造者 -- Aaron Swartz]](people4) 11 | * 程式人文集 12 | * [[我的開放原始碼之路 -- (作者:陳鍾誠)]](article1) 13 | * [[雜誌訊息]](info) 14 | 15 | -------------------------------------------------------------------------------- /ymag201506/directory.wd: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [[編輯小語]](editor) 3 | * [[授權聲明]](license) 4 | * 本期焦點: 開放原始碼的世界 5 | * [[開放原始碼授權]](focus2) 6 | * [[進入開放原始碼領域的方法]](focus3) 7 | * 科技人物 8 | * [[開源之父 -- Richard Stallman]](people1) 9 | * [[開源大師 -- Linus Torvalds]](people2) 10 | * [[Markdown 與 RSS 的創造者 -- Aaron Swartz]](people4) 11 | * 程式人文集 12 | * [[我的開放原始碼之路 -- (作者:陳鍾誠)]](article1) 13 | * [[雜誌訊息]](info) 14 | 15 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Not.tst 5 | 6 | load Not.hdl, 7 | output-file Not.out, 8 | compare-to Not.cmp, 9 | output-list in%B3.1.3 out%B3.1.3; 10 | 11 | set in 0, 12 | eval, 13 | output; 14 | 15 | set in 1, 16 | eval, 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Or.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Or.hdl 5 | 6 | /** 7 | * Or gate: out = 1 if {a == 1 or b == 1}, 0 otherwise 8 | */ 9 | 10 | CHIP Or { 11 | 12 | IN a, b; 13 | OUT out; 14 | 15 | BUILTIN Or; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Not16.hdl 5 | 6 | /** 7 | * 16-bit Not: 8 | * for i=0..15: out[i] = not in[i] 9 | */ 10 | 11 | CHIP Not16 { 12 | IN in[16]; 13 | OUT out[16]; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or8Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Or8Way.hdl 5 | 6 | /** 7 | * 8-way Or: 8 | * out = (in[0] or in[1] or ... or in[7]) 9 | */ 10 | 11 | CHIP Or8Way { 12 | IN in[8]; 13 | OUT out; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/04/fill/Fill.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/04/fill/Fill.tst 5 | 6 | load Fill.hack; 7 | echo "First, make sure that 'No Animation' is selected. Then, select the Keyboard, click on any key, and check the screen."; 8 | 9 | repeat { 10 | ticktock; 11 | } 12 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux4Way.cmp: -------------------------------------------------------------------------------- 1 | | in | sel | a | b | c | d | 2 | | 0 | 00 | 0 | 0 | 0 | 0 | 3 | | 0 | 01 | 0 | 0 | 0 | 0 | 4 | | 0 | 10 | 0 | 0 | 0 | 0 | 5 | | 0 | 11 | 0 | 0 | 0 | 0 | 6 | | 1 | 00 | 1 | 0 | 0 | 0 | 7 | | 1 | 01 | 0 | 1 | 0 | 0 | 8 | | 1 | 10 | 0 | 0 | 1 | 0 | 9 | | 1 | 11 | 0 | 0 | 0 | 1 | 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Mux.hdl 5 | 6 | /** 7 | * Multiplexor: 8 | * out = a if sel == 0 9 | * b otherwise 10 | */ 11 | 12 | CHIP Mux { 13 | IN a, b, sel; 14 | OUT out; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/Inc16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/Inc16.hdl 5 | 6 | /** 7 | * 16-bit incrementer: 8 | * out = in + 1 (arithmetic addition) 9 | */ 10 | 11 | CHIP Inc16 { 12 | IN in[16]; 13 | OUT out[16]; 14 | 15 | PARTS: 16 | // Put you code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Or16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Or16.hdl 5 | 6 | /** 7 | * 16-bit bitwise Or gate: for i = 0..15 out[i] = a[i] or b[i]. 8 | */ 9 | 10 | CHIP Or16 { 11 | 12 | IN a[16], b[16]; 13 | OUT out[16]; 14 | 15 | BUILTIN Or; 16 | } 17 | -------------------------------------------------------------------------------- /pmag201503/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201503/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201505/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201505/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201509/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201509/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201511/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /pmag201511/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /ymag201502/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /ymag201502/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /ymag201504/license.md: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /ymag201504/license.wd: -------------------------------------------------------------------------------- 1 | ## 授權聲明 2 | 3 | 本雜誌許多資料修改自維基百科,採用 創作共用:[姓名標示、相同方式分享] 授權,若您想要修改本書產生衍生著作時,至少應該遵守下列授權條件: 4 | 5 | 1. 標示原作者姓名 (包含該文章作者,若有來自維基百科的部份也請一併標示)。 6 | 3. 採用 創作共用:[姓名標示、相同方式分享] 的方式公開衍生著作。 7 | 8 | 另外、當本雜誌中有文章或素材並非採用 [姓名標示、相同方式分享] 時,將會在該文章或素材後面標示其授權,此時該文章將以該標示的方式授權釋出,請修改者注意這些授權標示,以避免產生侵權糾紛。 9 | 10 | 例如有些文章可能不希望被作為「商業性使用」,此時就可能會採用創作共用:[姓名標示、非商業性、相同方式分享] 的授權,此時您就不應當將該文章用於商業用途上。 11 | 12 | 最後、懇請勿移除公益捐贈的相關描述,以便讓愛心得以持續散播! 13 | 14 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Or.hdl 5 | 6 | /** 7 | * Or gate: 8 | * out = 1 if (a == 1 or b == 1) 9 | * 0 otherwise 10 | */ 11 | 12 | CHIP Or { 13 | IN a, b; 14 | OUT out; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/06/max/MaxL.asm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/06/max/MaxL.asm 5 | 6 | // Symbol-less version of the Max.asm program. 7 | 8 | @0 9 | D=M 10 | @1 11 | D=D-M 12 | @10 13 | D;JGT 14 | @1 15 | D=M 16 | @12 17 | 0;JMP 18 | @0 19 | D=M 20 | @2 21 | M=D 22 | @14 23 | 0;JMP 24 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Mux16.hdl 5 | 6 | /** 7 | * 16 bit multiplexor. If sel == 1 then out = b else out = a. 8 | */ 9 | 10 | CHIP Mux16 { 11 | 12 | IN a[16], b[16], sel; 13 | OUT out[16]; 14 | 15 | BUILTIN Mux; 16 | } 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/And.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/And.hdl 5 | 6 | /** 7 | * And gate: 8 | * out = 1 if (a == 1 and b == 1) 9 | * 0 otherwise 10 | */ 11 | 12 | CHIP And { 13 | IN a, b; 14 | OUT out; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Or16.hdl 5 | 6 | /** 7 | * 16-bit bitwise Or: 8 | * for i = 0..15 out[i] = (a[i] or b[i]) 9 | */ 10 | 11 | CHIP Or16 { 12 | IN a[16], b[16]; 13 | OUT out[16]; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/And16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/And16.hdl 5 | 6 | /** 7 | * 16-bit-wise And gate: for i = 0..15: out[i] = a[i] and b[i] 8 | */ 9 | 10 | CHIP And16 { 11 | 12 | IN a[16], b[16]; 13 | OUT out[16]; 14 | 15 | BUILTIN And; 16 | } 17 | 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Or8Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Or8Way.hdl 5 | 6 | /** 7 | * 8-way Or gate: out = in[0] or in[1] or ... or in[7]. 8 | */ 9 | 10 | CHIP Or8Way { 11 | 12 | IN in[8]; 13 | OUT out; 14 | 15 | BUILTIN Or8Way; 16 | } 17 | -------------------------------------------------------------------------------- /pmag201507/directory.md: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [編輯小語](editor.html) 3 | * [授權聲明](license.html) 4 | * 本期焦點: 開放原始碼的世界 5 | * [開放原始碼授權](focus2.html) 6 | * [進入開放原始碼領域的方法](focus3.html) 7 | * 科技人物 8 | * [開源之父 -- Richard Stallman](people1.html) 9 | * [開源大師 -- Linus Torvalds](people2.html) 10 | * [Markdown 與 RSS 的創造者 -- Aaron Swartz](people4.html) 11 | * 程式人文集 12 | * [我的開放原始碼之路 -- (作者:陳鍾誠)](article1.html) 13 | * [雜誌訊息](info.html) 14 | 15 | -------------------------------------------------------------------------------- /ymag201502/directory.md: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [編輯小語](editor.html) 3 | * [授權聲明](license.html) 4 | * 本期焦點: 開放原始碼的世界 5 | * [開放原始碼授權](focus2.html) 6 | * [進入開放原始碼領域的方法](focus3.html) 7 | * 科技人物 8 | * [開源之父 -- Richard Stallman](people1.html) 9 | * [開源大師 -- Linus Torvalds](people2.html) 10 | * [Markdown 與 RSS 的創造者 -- Aaron Swartz](people4.html) 11 | * 程式人文集 12 | * [我的開放原始碼之路 -- (作者:陳鍾誠)](article1.html) 13 | * [雜誌訊息](info.html) 14 | 15 | -------------------------------------------------------------------------------- /ymag201504/directory.md: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [編輯小語](editor.html) 3 | * [授權聲明](license.html) 4 | * 本期焦點: 開放原始碼的世界 5 | * [開放原始碼授權](focus2.html) 6 | * [進入開放原始碼領域的方法](focus3.html) 7 | * 科技人物 8 | * [開源之父 -- Richard Stallman](people1.html) 9 | * [開源大師 -- Linus Torvalds](people2.html) 10 | * [Markdown 與 RSS 的創造者 -- Aaron Swartz](people4.html) 11 | * 程式人文集 12 | * [我的開放原始碼之路 -- (作者:陳鍾誠)](article1.html) 13 | * [雜誌訊息](info.html) 14 | 15 | -------------------------------------------------------------------------------- /ymag201506/directory.md: -------------------------------------------------------------------------------- 1 | * 前言 2 | * [編輯小語](editor.html) 3 | * [授權聲明](license.html) 4 | * 本期焦點: 開放原始碼的世界 5 | * [開放原始碼授權](focus2.html) 6 | * [進入開放原始碼領域的方法](focus3.html) 7 | * 科技人物 8 | * [開源之父 -- Richard Stallman](people1.html) 9 | * [開源大師 -- Linus Torvalds](people2.html) 10 | * [Markdown 與 RSS 的創造者 -- Aaron Swartz](people4.html) 11 | * 程式人文集 12 | * [我的開放原始碼之路 -- (作者:陳鍾誠)](article1.html) 13 | * [雜誌訊息](info.html) 14 | 15 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/And16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/And16.hdl 5 | 6 | /** 7 | * 16-bit bitwise And: 8 | * for i = 0..15: out[i] = (a[i] and b[i]) 9 | */ 10 | 11 | CHIP And16 { 12 | IN a[16], b[16]; 13 | OUT out[16]; 14 | 15 | PARTS: 16 | // Put your code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/Add16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/Adder16.hdl 5 | 6 | /** 7 | * Adds two 16-bit values. 8 | * The most significant carry bit is ignored. 9 | */ 10 | 11 | CHIP Add16 { 12 | IN a[16], b[16]; 13 | OUT out[16]; 14 | 15 | PARTS: 16 | // Put you code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/00/Xor.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | 5 | /** 6 | * Exclusive-or gate: out = !(a == b). 7 | */ 8 | 9 | CHIP Xor { 10 | 11 | IN a, b; 12 | OUT out; 13 | 14 | PARTS: 15 | Nand (a=a, b=b, out= AnandB); 16 | Or (a=a, b=b, out= AorB); 17 | And (a=AnandB, b=AorB, out=out); 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/FullAdder.cmp: -------------------------------------------------------------------------------- 1 | | a | b | c | sum | carry | 2 | | 0 | 0 | 0 | 0 | 0 | 3 | | 0 | 0 | 1 | 1 | 0 | 4 | | 0 | 1 | 0 | 1 | 0 | 5 | | 0 | 1 | 1 | 0 | 1 | 6 | | 1 | 0 | 0 | 1 | 0 | 7 | | 1 | 0 | 1 | 0 | 1 | 8 | | 1 | 1 | 0 | 0 | 1 | 9 | | 1 | 1 | 1 | 1 | 1 | 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Add16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Add16.hdl 5 | 6 | /* 7 | * Adds two 16-bit values. 8 | * The most significant carry bit is ignored. 9 | */ 10 | 11 | CHIP Add16 { 12 | 13 | IN a[16], b[16]; 14 | OUT out[16]; 15 | 16 | BUILTIN Add16; 17 | } 18 | 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/DMux.hdl 5 | 6 | /** 7 | * Demultiplexor: 8 | * {a, b} = {in, 0} if sel == 0 9 | * {0, in} if sel == 1 10 | */ 11 | 12 | CHIP DMux { 13 | IN in, sel; 14 | OUT a, b; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/DMux.hdl 5 | 6 | /** 7 | * Dmultiplexor. 8 | * {a,b} = {in,0} if sel == 0 9 | * {0,in} if sel == 1 10 | */ 11 | 12 | 13 | CHIP DMux { 14 | 15 | IN in, sel; 16 | OUT a, b; 17 | 18 | BUILTIN DMux; 19 | } 20 | 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DFF.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/DFF.hdl 5 | 6 | /** 7 | * Data Flip-flop: out(t) = in(t-1) 8 | * where t is the current time unit, or clock cycle. 9 | */ 10 | 11 | CHIP DFF { 12 | 13 | IN in; 14 | OUT out; 15 | 16 | BUILTIN DFF; 17 | CLOCKED in; 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/And16.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0000000000000000 | 0000000000000000 | 0000000000000000 | 3 | | 0000000000000000 | 1111111111111111 | 0000000000000000 | 4 | | 1111111111111111 | 1111111111111111 | 1111111111111111 | 5 | | 1010101010101010 | 0101010101010101 | 0000000000000000 | 6 | | 0011110011000011 | 0000111111110000 | 0000110011000000 | 7 | | 0001001000110100 | 1001100001110110 | 0001000000110100 | 8 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or16.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0000000000000000 | 0000000000000000 | 0000000000000000 | 3 | | 0000000000000000 | 1111111111111111 | 1111111111111111 | 4 | | 1111111111111111 | 1111111111111111 | 1111111111111111 | 5 | | 1010101010101010 | 0101010101010101 | 1111111111111111 | 6 | | 0011110011000011 | 0000111111110000 | 0011111111110011 | 7 | | 0001001000110100 | 1001100001110110 | 1001101001110110 | 8 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/Add16.cmp: -------------------------------------------------------------------------------- 1 | | a | b | out | 2 | | 0000000000000000 | 0000000000000000 | 0000000000000000 | 3 | | 0000000000000000 | 1111111111111111 | 1111111111111111 | 4 | | 1111111111111111 | 1111111111111111 | 1111111111111110 | 5 | | 1010101010101010 | 0101010101010101 | 1111111111111111 | 6 | | 0011110011000011 | 0000111111110000 | 0100110010110011 | 7 | | 0001001000110100 | 1001100001110110 | 1010101010101010 | 8 | -------------------------------------------------------------------------------- /pmag201507/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /pmag201507/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /pmag201509/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /pmag201509/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /ymag201506/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /ymag201506/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 最近小編發現了一個很棒的網路公開課,是 coursera 課程網站上的 [From Nand to Tetris / Part I](https://www.coursera.org/course/nand2tetris1) 這門課,於是我去修了這門課並作了習題,這是我真正修習的第一門網路公開課。 4 | 5 | 這門課程是教授學生如何從一個最基礎的 nand 邏輯閘開始,一路往上建構出所有基礎元件,像是 and, or, xor, not, MUX, DMUX, Adder, Memory 等等,接著建構出 CPU 與整台電腦,然後再學習如何在建構出這台電腦上的『組譯器、編譯器、作業系統』等等,最後在這個具備軟硬體的電腦上寫一個小型的方塊遊戲。 6 | 7 | 我覺得這門課非常棒,因此小編將整個修課的過程與心得分享給大家,也利用這個機會將這門『神級課程』介紹給大家認識。 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/OS/Array.vm: -------------------------------------------------------------------------------- 1 | function Array.new 0 2 | push argument 0 3 | push constant 0 4 | gt 5 | not 6 | if-goto IF_TRUE0 7 | goto IF_FALSE0 8 | label IF_TRUE0 9 | push constant 2 10 | call Sys.error 1 11 | pop temp 0 12 | label IF_FALSE0 13 | push argument 0 14 | call Memory.alloc 1 15 | return 16 | function Array.dispose 0 17 | push argument 0 18 | pop pointer 0 19 | push pointer 0 20 | call Memory.deAlloc 1 21 | pop temp 0 22 | push constant 0 23 | return 24 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/ArrayTest/ArrayTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/12/ArrayTest/ArrayTest.tst 5 | 6 | load, 7 | output-file ArrayTest.out, 8 | compare-to ArrayTest.cmp, 9 | output-list RAM[8000]%D2.6.1 RAM[8001]%D2.6.1 RAM[8002]%D2.6.1 RAM[8003]%D2.6.1; 10 | 11 | repeat 1000000 { 12 | vmstep; 13 | } 14 | 15 | output; 16 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Inc16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Inc16.hdl 5 | 6 | /** 7 | * 16-bit incrementer. out = in + 1 (16-bit addition). 8 | * Overflow is neither detected nor handled. 9 | */ 10 | 11 | CHIP Inc16 { 12 | 13 | IN in[16]; 14 | OUT out[16]; 15 | 16 | BUILTIN Inc16; 17 | } 18 | 19 | -------------------------------------------------------------------------------- /ymag201508/editor.md: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 在上期的少年科技人雜誌中,我們以 [NandToTetrix 慕課記 -- 從邏輯閘到方塊遊戲](http://ccc.nqu.edu.tw/db/ymag201506/home.html) 為主題,但是目前這門課只開了 Part I。 4 | 5 | 學了 Part I 卻沒有學完整門課,實在讓人覺得不夠過癮,因此小編決定自學 Part II ,反正 nand2tetris 的官網 上也已經有 Part II 所需的投影片和軟體,而且還有 [已經修完這門課的 Havivha 同學提供的 github 專案](https://github.com/havivha/Nand2Tetris) ,我想應該足以讓我們自學完成這門課了。 6 | 7 | 所以在本期雜誌中,我們就延續了上期的主題,將筆者自學的經過寫下來,分享給大家參考! 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /ymag201508/editor.wd: -------------------------------------------------------------------------------- 1 | ## 編輯小語 2 | 3 | 在上期的少年科技人雜誌中,我們以 [NandToTetrix 慕課記 -- 從邏輯閘到方塊遊戲](http://ccc.nqu.edu.tw/db/ymag201506/home.html) 為主題,但是目前這門課只開了 Part I。 4 | 5 | 學了 Part I 卻沒有學完整門課,實在讓人覺得不夠過癮,因此小編決定自學 Part II ,反正 nand2tetris 的官網 上也已經有 Part II 所需的投影片和軟體,而且還有 [已經修完這門課的 Havivha 同學提供的 github 專案](https://github.com/havivha/Nand2Tetris) ,我想應該足以讓我們自學完成這門課了。 6 | 7 | 所以在本期雜誌中,我們就延續了上期的主題,將筆者自學的經過寫下來,分享給大家參考! 8 | 9 | ---- (「少年科技人雜誌」與「程式人雜誌」編輯 - 陳鍾誠) 10 | 11 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/a/Register.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/a/Register.hdl 5 | 6 | /** 7 | * 16-bit register: 8 | * If load[t] == 1 then out[t+1] = in[t] 9 | * else out does not change 10 | */ 11 | 12 | CHIP Register { 13 | IN in[16], load; 14 | OUT out[16]; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /pmag201503/reflink.md: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /pmag201503/reflink.wd: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /pmag201505/reflink.md: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /pmag201505/reflink.wd: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /pmag201511/reflink.md: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /pmag201511/reflink.wd: -------------------------------------------------------------------------------- 1 | 2 | [程式人雜誌社團]: https://www.facebook.com/groups/programmerMagazine/ 3 | [少年科技人社團]: https://www.facebook.com/groups/youngmaker.magazine/ 4 | [少年科技人雜誌]: http://programmermagazine.github.io/youngmaker/ 5 | [程式人雜誌]: http://programmermagazine.github.com/home/ 6 | [姓名標示、相同方式分享]: http://creativecommons.org/licenses/by-sa/3.0/tw/ 7 | [姓名標示、非商業性、相同方式分享]: http://creativecommons.org/licenses/by-nc-sa/3.0/tw/ 8 | [陳鍾誠]: http://ccckmit.wikidot.com/ 9 | [維基百科]:http://zh.wikipedia.org/ 10 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/HalfAdder.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/HalfAdder.hdl 5 | 6 | /** 7 | * Computes the sum of two bits. 8 | */ 9 | 10 | CHIP HalfAdder { 11 | IN a, b; // 1-bit inputs 12 | OUT sum, // Right bit of a + b 13 | carry; // Left bit of a + b 14 | 15 | PARTS: 16 | // Put you code here: 17 | } 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/StaticTest/StaticTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/StaticTest/StaticTest.tst 5 | 6 | load StaticTest.asm, 7 | output-file StaticTest.out, 8 | compare-to StaticTest.cmp, 9 | output-list RAM[256]%D1.6.1; 10 | 11 | set RAM[0] 256, 12 | 13 | repeat 200 { 14 | ticktock; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/StaticTest/StaticTestVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/StaticTest/StaticTestVME.tst 5 | 6 | load StaticTest.vm, 7 | output-file StaticTest.out, 8 | compare-to StaticTest.cmp, 9 | output-list RAM[256]%D1.6.1; 10 | 11 | set sp 256, 12 | 13 | repeat 11 { 14 | vmstep; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201504/home.wd: -------------------------------------------------------------------------------- 1 | # 圖靈與 Enigma 密碼機 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年4月號 | @[[html]](book.html) | @[[epub]](book.epub) | @[[pdf]](book.pdf) | 6 | 7 | * 前言 8 | * [[編輯小語]](editor) 9 | * [[授權聲明]](license) 10 | * 本期焦點: 圖靈與 Enigma 密碼機 11 | * [[模仿遊戲:圖靈的一生]](focus1) 12 | * [[Enigma 密碼機的運作原理]](focus2) 13 | * [[從波蘭數學家到圖靈 - 德軍密碼是如何被破解的?]](focus3) 14 | * 科技人物 15 | * [[破解 Enigma 密碼的三位波蘭英雄]](people1) 16 | * [[雜誌訊息]](info) 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Mux16.hdl 5 | 6 | /** 7 | * 16-bit multiplexor: 8 | * for i = 0..15 out[i] = a[i] if sel == 0 9 | * b[i] if sel == 1 10 | */ 11 | 12 | CHIP Mux16 { 13 | IN a[16], b[16], sel; 14 | OUT out[16]; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/FullAdder.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/FullAdder.hdl 5 | 6 | /** 7 | * Computes the sum of three bits. 8 | */ 9 | 10 | CHIP FullAdder { 11 | IN a, b, c; // 1-bit inputs 12 | OUT sum, // Right bit of a + b + c 13 | carry; // Left bit of a + b + c 14 | 15 | PARTS: 16 | // Put you code here: 17 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/a/Bit.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/a/Bit.hdl 5 | 6 | /** 7 | * 1-bit register: 8 | * If load[t] == 1 then out[t+1] = in[t] 9 | * else out does not change (out[t+1] = out[t]) 10 | */ 11 | 12 | CHIP Bit { 13 | IN in, load; 14 | OUT out; 15 | 16 | PARTS: 17 | // Put your code here: 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/11/Seven/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/11/Seven/Main.jack 5 | 6 | /** 7 | * Computes the value of 1 + (2 * 3) and prints the result 8 | * at the top-left of the screen. 9 | */ 10 | class Main { 11 | 12 | function void main() { 13 | do Output.printInt(1 + (2 * 3)); 14 | return; 15 | } 16 | 17 | } 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Bit.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Bit.hdl 5 | 6 | /** 7 | * 1-bit register. 8 | * If load[t] == 1 then out[t+1] = in[t] 9 | * else out[t+1] = out[t] (no change) 10 | */ 11 | 12 | CHIP Bit { 13 | 14 | IN in, load; 15 | OUT out; 16 | 17 | BUILTIN Bit; 18 | CLOCKED in, load; 19 | } 20 | -------------------------------------------------------------------------------- /ymag201504/home.md: -------------------------------------------------------------------------------- 1 | # 圖靈與 Enigma 密碼機 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年4月號 | [html](book.html) | [epub](book.epub) | [pdf](book.pdf) | 6 | 7 | * 前言 8 | * [編輯小語](editor.html) 9 | * [授權聲明](license.html) 10 | * 本期焦點: 圖靈與 Enigma 密碼機 11 | * [模仿遊戲:圖靈的一生](focus1.html) 12 | * [Enigma 密碼機的運作原理](focus2.html) 13 | * [從波蘭數學家到圖靈 - 德軍密碼是如何被破解的?](focus3.html) 14 | * 科技人物 15 | * [破解 Enigma 密碼的三位波蘭英雄](people1.html) 16 | * [雜誌訊息](info.html) 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/SimpleAdd/SimpleAdd.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/StackArithmetic/SimpleAdd/SimpleAdd.tst 5 | 6 | load SimpleAdd.asm, 7 | output-file SimpleAdd.out, 8 | compare-to SimpleAdd.cmp, 9 | output-list RAM[0]%D2.6.2 RAM[256]%D2.6.2; 10 | 11 | set RAM[0] 256, 12 | 13 | repeat 60 { 14 | ticktock; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/SimpleAdd/SimpleAddVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/StackArithmetic/SimpleAdd/SimpleAddVME.tst 5 | 6 | load SimpleAdd.vm, 7 | output-file SimpleAdd.out, 8 | compare-to SimpleAdd.cmp, 9 | output-list RAM[0]%D2.6.2 RAM[256]%D2.6.2; 10 | 11 | set RAM[0] 256, 12 | 13 | repeat 3 { 14 | vmstep; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/SimpleFunction/SimpleFunction.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/SimpleFunction/SimpleFunction.vm 5 | 6 | // Performs a simple calculation and returns the result. 7 | function SimpleFunction.test 2 8 | push local 0 9 | push local 1 10 | add 11 | not 12 | push argument 0 13 | add 14 | push argument 1 15 | sub 16 | return 17 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/MemoryTest/MemoryTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/12/MemoryTest/MemoryTest.tst 5 | 6 | load, 7 | output-file MemoryTest.out, 8 | compare-to MemoryTest.cmp, 9 | output-list RAM[8000]%D2.6.1 RAM[8001]%D2.6.1 RAM[8002]%D2.6.1 RAM[8003]%D2.6.1 RAM[8004]%D2.6.1 RAM[8005]%D2.6.1; 10 | 11 | repeat 1000000 { 12 | vmstep; 13 | } 14 | 15 | output; 16 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/06/rect/RectL.asm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/06/rect/RectL.asm 5 | 6 | // Symbol-less version of the Rect.asm program. 7 | 8 | @0 9 | D=M 10 | @23 11 | D;JLE 12 | @16 13 | M=D 14 | @16384 15 | D=A 16 | @17 17 | M=D 18 | @17 19 | A=M 20 | M=-1 21 | @17 22 | D=M 23 | @32 24 | D=D+A 25 | @17 26 | M=D 27 | @16 28 | MD=M-1 29 | @10 30 | D;JGT 31 | @23 32 | 0;JMP 33 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Register.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Register.hdl 5 | 6 | /** 7 | * 16-Bit register. 8 | * If load[t-1]=1 then out[t] = in[t-1] 9 | * else out does not change (out[t] = out[t-1]) 10 | */ 11 | 12 | CHIP Register { 13 | 14 | IN in[16], load; 15 | OUT out[16]; 16 | 17 | BUILTIN Register; 18 | CLOCKED in, load; 19 | } 20 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/04/fill/Fill.asm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/04/Fill.asm 5 | 6 | // Runs an infinite loop that listens to the keyboard input. 7 | // When a key is pressed (any key), the program blackens the screen, 8 | // i.e. writes "black" in every pixel. When no key is pressed, the 9 | // program clears the screen, i.e. writes "white" in every pixel. 10 | 11 | // Put your code here. -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/StaticsTest/StaticsTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/StaticsTest/StaticsTest.tst 5 | 6 | load StaticsTest.asm, 7 | output-file StaticsTest.out, 8 | compare-to StaticsTest.cmp, 9 | output-list RAM[0]%D1.6.1 RAM[261]%D1.6.1 RAM[262]%D1.6.1; 10 | 11 | set RAM[0] 256, 12 | 13 | repeat 2500 { 14 | ticktock; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/StaticTest/StaticTest.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/StaticTest/StaticTest.vm 5 | 6 | // Executes pop and push commands using the static segment. 7 | push constant 111 8 | push constant 333 9 | push constant 888 10 | pop static 8 11 | pop static 3 12 | pop static 1 13 | push static 3 14 | push static 1 15 | sub 16 | push static 8 17 | add 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/HalfAdder.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/HalfAdder.hdl 5 | 6 | /** 7 | * Half adder. Computes sum, the least significnat bit of a + b, 8 | * and carry, the most significnat bit of a + b. 9 | */ 10 | 11 | CHIP HalfAdder { 12 | 13 | IN a, b; 14 | OUT sum, // LSB of a + b 15 | carry; // MSB of a + b 16 | 17 | BUILTIN HalfAdder; 18 | } 19 | -------------------------------------------------------------------------------- /ymag/home.md: -------------------------------------------------------------------------------- 1 | ## 關於少年科技人雜誌 2 | 3 | [少年科技人雜誌] 與 [程式人雜誌] 都是結合「開放原始碼與公益捐款活動」的雜誌,簡稱「開放公益雜誌」。開放公益雜誌本著「讀書做善事、寫書做公益」的精神,我們非常歡迎大家認養專欄、或者捐出您的網誌。 4 | 5 | 6 | ## 最新一期 7 | 8 | | 出刊年月 | 焦點主題 | 9 | |-------------|--------------| 10 | | [2015年4月號](../ymag201504/home.html) | 圖靈與 Enigma 密碼機 | 11 | 12 | ## 所有雜誌 13 | 14 | | 出刊年月 | 焦點主題 | 15 | |-------------|--------------| 16 | | [2015年2月號](../ymag201502/home.html) | 開放原始碼的世界 | 17 | 18 | ## 連絡我們 19 | 20 | 竭誠歡迎投稿,或者成為本雜誌的專欄作家,現在就可以加入 [程式人雜誌社團] 一同共襄盛舉。 21 | 22 | 本雜誌編輯為「陳鍾誠」,若要聯絡編輯,請寄信到 。 23 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux4Way16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Mux4Way16.hdl 5 | 6 | /** 7 | * 4-way 16-bit multiplexor: 8 | * out = a if sel == 00 9 | * b if sel == 01 10 | * c if sel == 10 11 | * d if sel == 11 12 | */ 13 | 14 | CHIP Mux4Way16 { 15 | IN a[16], b[16], c[16], d[16], sel[2]; 16 | OUT out[16]; 17 | 18 | PARTS: 19 | // Put your code here: 20 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/DMux.tst 5 | 6 | load DMux.hdl, 7 | output-file DMux.out, 8 | compare-to DMux.cmp, 9 | output-list in%B3.1.3 sel%B3.1.3 a%B3.1.3 b%B3.1.3; 10 | 11 | set in 0, 12 | set sel 0, 13 | eval, 14 | output; 15 | 16 | set sel 1, 17 | eval, 18 | output; 19 | 20 | set in 1, 21 | set sel 0, 22 | eval, 23 | output; 24 | 25 | set sel 1, 26 | eval, 27 | output; 28 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Or.tst 5 | 6 | load Or.hdl, 7 | output-file Or.out, 8 | compare-to Or.cmp, 9 | output-list a%B3.1.3 b%B3.1.3 out%B3.1.3; 10 | 11 | set a 0, 12 | set b 0, 13 | eval, 14 | output; 15 | 16 | set a 0, 17 | set b 1, 18 | eval, 19 | output; 20 | 21 | set a 1, 22 | set b 0, 23 | eval, 24 | output; 25 | 26 | set a 1, 27 | set b 1, 28 | eval, 29 | output; 30 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/Array.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/12/Array.jack 5 | 6 | /** 7 | * Represents an array. Can be used to hold any type of object. 8 | */ 9 | class Array { 10 | 11 | /** Constructs a new Array of the given size. */ 12 | function Array new(int size) { 13 | } 14 | 15 | /** De-allocates the array and frees its space. */ 16 | method void dispose() { 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux4Way16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Mux4Way16.hdl 5 | 6 | /** 7 | * 4-way 16-bit multiplexor. 8 | * out = a if sel == 00 9 | * b if sel == 01 10 | * c if sel == 10 11 | * d if sel == 11 12 | */ 13 | 14 | 15 | CHIP Mux4Way16 { 16 | 17 | IN a[16], b[16], c[16], d[16], sel[2]; 18 | OUT out[16]; 19 | 20 | BUILTIN Mux4Way16; 21 | } 22 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/And.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/And.tst 5 | 6 | load And.hdl, 7 | output-file And.out, 8 | compare-to And.cmp, 9 | output-list a%B3.1.3 b%B3.1.3 out%B3.1.3; 10 | 11 | set a 0, 12 | set b 0, 13 | eval, 14 | output; 15 | 16 | set a 0, 17 | set b 1, 18 | eval, 19 | output; 20 | 21 | set a 1, 22 | set b 0, 23 | eval, 24 | output; 25 | 26 | set a 1, 27 | set b 1, 28 | eval, 29 | output; 30 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Xor.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Xor.tst 5 | 6 | load Xor.hdl, 7 | output-file Xor.out, 8 | compare-to Xor.cmp, 9 | output-list a%B3.1.3 b%B3.1.3 out%B3.1.3; 10 | 11 | set a 0, 12 | set b 0, 13 | eval, 14 | output; 15 | 16 | set a 0, 17 | set b 1, 18 | eval, 19 | output; 20 | 21 | set a 1, 22 | set b 0, 23 | eval, 24 | output; 25 | 26 | set a 1, 27 | set b 1, 28 | eval, 29 | output; 30 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/ProgramFlow/BasicLoop/BasicLoop.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/ProgramFlow/BasicLoop/BasicLoop.tst 5 | 6 | load BasicLoop.asm, 7 | output-file BasicLoop.out, 8 | compare-to BasicLoop.cmp, 9 | output-list RAM[0]%D1.6.1 RAM[256]%D1.6.1; 10 | 11 | set RAM[0] 256, 12 | set RAM[1] 300, 13 | set RAM[2] 400, 14 | set RAM[400] 3, 15 | 16 | repeat 600 { 17 | ticktock; 18 | } 19 | 20 | output; 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/ProgramFlow/BasicLoop/BasicLoopVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/ProgramFlow/BasicLoop/BasicLoopVME.tst 5 | 6 | load BasicLoop.vm, 7 | output-file BasicLoop.out, 8 | compare-to BasicLoop.cmp, 9 | output-list RAM[0]%D1.6.1 RAM[256]%D1.6.1; 10 | 11 | set sp 256, 12 | set local 300, 13 | set argument 400, 14 | set argument[0] 3, 15 | 16 | repeat 33 { 17 | vmstep; 18 | } 19 | 20 | output; 21 | -------------------------------------------------------------------------------- /main/codetest.md: -------------------------------------------------------------------------------- 1 | # 標題:程式碼排版 2 | 3 | ```javascript 4 | window.onhashchange = function () { 5 | filename = window.location.hash.substring(1); 6 | loadFile(filename); 7 | } 8 | 9 | function loadFile(filename) { 10 | if (filename === null || filename === '') 11 | return; 12 | $('#filename').val(filename); 13 | window.location.hash = '#'+filename; 14 | DB.load(filename) 15 | .done(function(md) { 16 | $('#mdBox').val(md); 17 | show(); 18 | }) 19 | .fail(function() { 20 | $('#mdBox').val(mdNewFile); 21 | show(); 22 | }); 23 | } 24 | 25 | ``` -------------------------------------------------------------------------------- /main/codetest.wd: -------------------------------------------------------------------------------- 1 | # 標題:程式碼排版 2 | 3 | ```javascript 4 | window.onhashchange = function () { 5 | filename = window.location.hash.substring(1); 6 | loadFile(filename); 7 | } 8 | 9 | function loadFile(filename) { 10 | if (filename === null || filename === '') 11 | return; 12 | $('#filename').val(filename); 13 | window.location.hash = '#'+filename; 14 | DB.load(filename) 15 | .done(function(md) { 16 | $('#mdBox').val(md); 17 | show(); 18 | }) 19 | .fail(function() { 20 | $('#mdBox').val(mdNewFile); 21 | show(); 22 | }); 23 | } 24 | 25 | ``` -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/StaticsTest/StaticsTestVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/StaticsTest/StaticsTestVME.tst 5 | 6 | load, // Load all the VM files from the current directory. 7 | output-file StaticsTest.out, 8 | compare-to StaticsTest.cmp, 9 | output-list RAM[0]%D1.6.1 RAM[261]%D1.6.1 RAM[262]%D1.6.1; 10 | 11 | set sp 261, 12 | 13 | repeat 36 { 14 | vmstep; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/05/Rect.hack: -------------------------------------------------------------------------------- 1 | 0000000000000000 2 | 1111110000010000 3 | 0000000000010111 4 | 1110001100000110 5 | 0000000000010000 6 | 1110001100001000 7 | 0100000000000000 8 | 1110110000010000 9 | 0000000000010001 10 | 1110001100001000 11 | 0000000000010001 12 | 1111110000100000 13 | 1110111010001000 14 | 0000000000010001 15 | 1111110000010000 16 | 0000000000100000 17 | 1110000010010000 18 | 0000000000010001 19 | 1110001100001000 20 | 0000000000010000 21 | 1111110010011000 22 | 0000000000001010 23 | 1110001100000001 24 | 0000000000010111 25 | 1110101010000111 26 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/FullAdder.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/FullAdder.hdl 5 | 6 | /** 7 | * Full adder. Computes sum, the least significant bit of 8 | * a + b + c, and carry, the most significant bit of a + b + c. 9 | */ 10 | 11 | CHIP FullAdder { 12 | 13 | IN a, b, c; 14 | OUT sum, // LSB of a + b + c 15 | carry; // MSB of a + b + c 16 | 17 | BUILTIN FullAdder; 18 | } 19 | 20 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/NestedCall/NestedCall.tst: -------------------------------------------------------------------------------- 1 | // Test file for NestedCall test. 2 | 3 | load NestedCall.asm, 4 | output-file NestedCall.out, 5 | compare-to NestedCall.cmp, 6 | output-list RAM[0]%D1.6.1 RAM[1]%D1.6.1 RAM[2]%D1.6.1 RAM[5]%D1.6.1 RAM[6]%D1.6.1; 7 | 8 | set RAM[0] 261, 9 | set RAM[1] 261, 10 | set RAM[2] 256, 11 | set RAM[3] -1, 12 | set RAM[4] -1, 13 | set RAM[256] 1234, // fake RIP 14 | set RAM[257] -1, 15 | set RAM[258] -1, 16 | set RAM[259] -1, 17 | set RAM[260] -1, 18 | 19 | repeat 1000 { 20 | ticktock; 21 | } 22 | 23 | output; 24 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/PointerTest/PointerTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/PointerTest/PointerTest.tst 5 | 6 | load PointerTest.asm, 7 | output-file PointerTest.out, 8 | compare-to PointerTest.cmp, 9 | output-list RAM[256]%D1.6.1 RAM[3]%D1.6.1 10 | RAM[4]%D1.6.1 RAM[3032]%D1.6.1 RAM[3046]%D1.6.1; 11 | 12 | set RAM[0] 256, 13 | 14 | repeat 450 { 15 | ticktock; 16 | } 17 | 18 | output; 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/PointerTest/PointerTestVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/PointerTest/PointerTestVME.tst 5 | 6 | load PointerTest.vm, 7 | output-file PointerTest.out, 8 | compare-to PointerTest.cmp, 9 | output-list RAM[256]%D1.6.1 RAM[3]%D1.6.1 RAM[4]%D1.6.1 10 | RAM[3032]%D1.6.1 RAM[3046]%D1.6.1; 11 | 12 | set RAM[0] 256, 13 | 14 | repeat 15 { 15 | vmstep; 16 | } 17 | 18 | output; 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/FibonacciElement/FibonacciElementVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/FibonacciElement/FibonacciElementVME.tst 5 | 6 | load, // Load all the VM files from the current directory 7 | output-file FibonacciElement.out, 8 | compare-to FibonacciElement.cmp, 9 | output-list RAM[0]%D1.6.1 RAM[261]%D1.6.1; 10 | 11 | set sp 261, 12 | 13 | repeat 110 { 14 | vmstep; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux8Way16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Mux8Way16.hdl 5 | 6 | /** 7 | * 8-way 16-bit multiplexor: 8 | * out = a if sel == 000 9 | * b if sel == 001 10 | * etc. 11 | * h if sel == 111 12 | */ 13 | 14 | CHIP Mux8Way16 { 15 | IN a[16], b[16], c[16], d[16], 16 | e[16], f[16], g[16], h[16], 17 | sel[3]; 18 | OUT out[16]; 19 | 20 | PARTS: 21 | // Put your code here: 22 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux4Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/DMux4Way.hdl 5 | 6 | /** 7 | * 4-way demultiplexor. 8 | * {a,b,c,d} = {in,0,0,0} if sel == 00 9 | * {0,in,0,0} if sel == 01 10 | * {0,0,in,0} if sel == 10 11 | * {0,0,0,in} if sel == 11 12 | */ 13 | 14 | 15 | CHIP DMux4Way { 16 | 17 | IN in, sel[2]; 18 | OUT a, b, c, d; 19 | 20 | BUILTIN DMux4Way; 21 | } 22 | 23 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux4Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/DMux4Way.hdl 5 | 6 | /** 7 | * 4-way demultiplexor: 8 | * {a, b, c, d} = {in, 0, 0, 0} if sel == 00 9 | * {0, in, 0, 0} if sel == 01 10 | * {0, 0, in, 0} if sel == 10 11 | * {0, 0, 0, in} if sel == 11 12 | */ 13 | 14 | CHIP DMux4Way { 15 | IN in, sel[2]; 16 | OUT a, b, c, d; 17 | 18 | PARTS: 19 | // Put your code here: 20 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Or8Way.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Or8Way.tst 5 | 6 | load Or8Way.hdl, 7 | output-file Or8Way.out, 8 | compare-to Or8Way.cmp, 9 | output-list in%B2.8.2 out%B2.1.2; 10 | 11 | set in %B00000000, 12 | eval, 13 | output; 14 | 15 | set in %B11111111, 16 | eval, 17 | output; 18 | 19 | set in %B00010000, 20 | eval, 21 | output; 22 | 23 | set in %B00000001, 24 | eval, 25 | output; 26 | 27 | set in %B00100110, 28 | eval, 29 | output; -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/HalfAdder.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/HalfAdder.tst 5 | 6 | load HalfAdder.hdl, 7 | output-file HalfAdder.out, 8 | compare-to HalfAdder.cmp, 9 | output-list a%B3.1.3 b%B3.1.3 sum%B3.1.3 carry%B3.1.3; 10 | 11 | set a 0, 12 | set b 0, 13 | eval, 14 | output; 15 | 16 | set a 0, 17 | set b 1, 18 | eval, 19 | output; 20 | 21 | set a 1, 22 | set b 0, 23 | eval, 24 | output; 25 | 26 | set a 1, 27 | set b 1, 28 | eval, 29 | output; 30 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/StaticsTest/Class1.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/StaticsTest/Class1.vm 5 | 6 | // Stores two supplied arguments in static[0] and static[1]. 7 | function Class1.set 0 8 | push argument 0 9 | pop static 0 10 | push argument 1 11 | pop static 1 12 | push constant 0 13 | return 14 | 15 | // Returns static[0] - static[1]. 16 | function Class1.get 0 17 | push static 0 18 | push static 1 19 | sub 20 | return 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/StaticsTest/Class2.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/StaticsTest/Class2.vm 5 | 6 | // Stores two supplied arguments in static[0] and static[1]. 7 | function Class2.set 0 8 | push argument 0 9 | pop static 0 10 | push argument 1 11 | pop static 1 12 | push constant 0 13 | return 14 | 15 | // Returns static[0] - static[1]. 16 | function Class2.get 0 17 | push static 0 18 | push static 1 19 | sub 20 | return 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/Mux8Way16.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/Mux8Way16.hdl 5 | 6 | /** 7 | * 8-way 16-bit multiplexor. 8 | * out = a if sel == 000 9 | * b if sel == 001 10 | * etc. 11 | * h if sel == 111 12 | */ 13 | 14 | 15 | CHIP Mux8Way16 { 16 | 17 | IN a[16], b[16], c[16], d[16], 18 | e[16], f[16], g[16], h[16], 19 | sel[3]; 20 | 21 | OUT out[16]; 22 | 23 | BUILTIN Mux8Way16; 24 | } -------------------------------------------------------------------------------- /ymag201502/home.wd: -------------------------------------------------------------------------------- 1 | # 開放原始碼的世界 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年2月號 | @[[html]](book.html) | @[[epub]](book.epub) | @[[pdf]](book.pdf) | 6 | 7 | * 前言 8 | * [[編輯小語]](editor) 9 | * [[授權聲明]](license) 10 | * 本期焦點: 開放原始碼的世界 11 | * [[開放原始碼授權]](focus2) 12 | * [[進入開放原始碼領域的方法]](focus3) 13 | * 科技人物 14 | * [[開源之父 -- Richard Stallman]](people1) 15 | * [[開源大師 -- Linus Torvalds]](people2) 16 | * [[Markdown 與 RSS 的創造者 -- Aaron Swartz]](people4) 17 | * 程式人文集 18 | * [[我的開放原始碼之路 -- (作者:陳鍾誠)]](article1) 19 | * [[雜誌訊息]](info) 20 | 21 | -------------------------------------------------------------------------------- /pmag201509/home.wd: -------------------------------------------------------------------------------- 1 | # 向 Nand2Tetris 學習系統軟體設計 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年9月號 | @[[html]](book.html) | @[[epub]](book.epub) | @[[pdf]](book.pdf) | 6 | 7 | * 前言 8 | * [[編輯小語]](editor) 9 | * [[授權聲明]](license) 10 | * 本期焦點: 11 | * [[Nand2Tetris 第 6 週 -- 組譯器]](focus1) 12 | * [[Nand2Tetris 第 7-8 週 -- 中間碼轉組合語言]](focus2) 13 | * [[Nand2Tetris 第 9-11 週 -- 編譯器]](focus3) 14 | * [[Nand2Tetris 第 12 週 -- 作業系統]](focus4) 15 | * [[雜誌訊息]](info) 16 | 17 | 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/FibonacciElement/FibonacciElement.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/FibonacciElement/FibonacciElement.tst 5 | 6 | // FibonacciElement.asm is the result of translating both Main.vm and Sys.vm. 7 | 8 | load FibonacciElement.asm, 9 | output-file FibonacciElement.out, 10 | compare-to FibonacciElement.cmp, 11 | output-list RAM[0]%D1.6.1 RAM[261]%D1.6.1; 12 | 13 | repeat 6000 { 14 | ticktock; 15 | } 16 | 17 | output; 18 | -------------------------------------------------------------------------------- /pmag201505/code/generator/yield1.js: -------------------------------------------------------------------------------- 1 | var c = console; 2 | 3 | function *gen1(array){ 4 | var a=5, b=3; 5 | yield "x"; 6 | c.log("a=%d", a); 7 | yield "y"; 8 | b = a+b; 9 | c.log("b=%d", b); 10 | return "z"; 11 | } 12 | 13 | var g1 = gen1(); 14 | 15 | c.log(g1.next()); // { value: "x", done: false } 16 | c.log(g1.next()); // { value: "y", done: false } 17 | c.log(g1.next()); // { value: "z", done: true } 18 | c.log(g1.next()); // { value: undefined, done: true } 19 | 20 | 21 | /* 22 | 23 | while (true) { 24 | var item = ai.next(); 25 | if (item.done === true) 26 | break; 27 | c.log(item); 28 | } 29 | 30 | */ -------------------------------------------------------------------------------- /pmag201511/code/generator/yield1.js: -------------------------------------------------------------------------------- 1 | var c = console; 2 | 3 | function *gen1(array){ 4 | var a=5, b=3; 5 | yield "x"; 6 | c.log("a=%d", a); 7 | yield "y"; 8 | b = a+b; 9 | c.log("b=%d", b); 10 | return "z"; 11 | } 12 | 13 | var g1 = gen1(); 14 | 15 | c.log(g1.next()); // { value: "x", done: false } 16 | c.log(g1.next()); // { value: "y", done: false } 17 | c.log(g1.next()); // { value: "z", done: true } 18 | c.log(g1.next()); // { value: undefined, done: true } 19 | 20 | 21 | /* 22 | 23 | while (true) { 24 | var item = ai.next(); 25 | if (item.done === true) 26 | break; 27 | c.log(item); 28 | } 29 | 30 | */ -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/10/Square/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/09/Square/Main.jack 5 | 6 | /** 7 | * The Main class initializes a new Square Dance game and starts it. 8 | */ 9 | class Main { 10 | 11 | /** Initializes a new game and starts it. */ 12 | function void main() { 13 | var SquareGame game; 14 | 15 | let game = SquareGame.new(); 16 | do game.run(); 17 | do game.dispose(); 18 | 19 | return; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/11/Pong/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/11/Pong/Main.jack 5 | 6 | /** 7 | * The main class of the Pong game. 8 | */ 9 | class Main { 10 | 11 | /** Initializes the Pong game and starts it. */ 12 | function void main() { 13 | var PongGame game; 14 | 15 | do PongGame.newInstance(); 16 | let game = PongGame.getInstance(); 17 | do game.run(); 18 | do game.dispose(); 19 | 20 | return; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/11/Square/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/09/Square/Main.jack 5 | 6 | /** 7 | * The Main class initializes a new Square Dance game and starts it. 8 | */ 9 | class Main { 10 | 11 | /** Initializes a new game and starts it. */ 12 | function void main() { 13 | var SquareGame game; 14 | 15 | let game = SquareGame.new(); 16 | do game.run(); 17 | do game.dispose(); 18 | 19 | return; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/09/Square/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/09/Square/Main.jack 5 | 6 | /** 7 | * The Main class initializes a new Square Dance game and starts it. 8 | */ 9 | class Main { 10 | 11 | /** Initializes a new game and starts it. */ 12 | function void main() { 13 | var SquareGame game; 14 | 15 | let game = SquareGame.new(); 16 | do game.run(); 17 | do game.dispose(); 18 | 19 | return; 20 | } 21 | } 22 | -------------------------------------------------------------------------------- /pmag201509/home.md: -------------------------------------------------------------------------------- 1 | # 向 Nand2Tetris 學習系統軟體設計 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年9月號 | [html](book.html) | [epub](book.epub) | [pdf](book.pdf) | 6 | 7 | * 前言 8 | * [編輯小語](editor.html) 9 | * [授權聲明](license.html) 10 | * 本期焦點: 11 | * [Nand2Tetris 第 6 週 -- 組譯器](focus1.html) 12 | * [Nand2Tetris 第 7-8 週 -- 中間碼轉組合語言](focus2.html) 13 | * [Nand2Tetris 第 9-11 週 -- 編譯器](focus3.html) 14 | * [Nand2Tetris 第 12 週 -- 作業系統](focus4.html) 15 | * [雜誌訊息](info.html) 16 | 17 | 21 | -------------------------------------------------------------------------------- /ymag201502/home.md: -------------------------------------------------------------------------------- 1 | # 開放原始碼的世界 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年2月號 | [html](book.html) | [epub](book.epub) | [pdf](book.pdf) | 6 | 7 | * 前言 8 | * [編輯小語](editor.html) 9 | * [授權聲明](license.html) 10 | * 本期焦點: 開放原始碼的世界 11 | * [開放原始碼授權](focus2.html) 12 | * [進入開放原始碼領域的方法](focus3.html) 13 | * 科技人物 14 | * [開源之父 -- Richard Stallman](people1.html) 15 | * [開源大師 -- Linus Torvalds](people2.html) 16 | * [Markdown 與 RSS 的創造者 -- Aaron Swartz](people4.html) 17 | * 程式人文集 18 | * [我的開放原始碼之路 -- (作者:陳鍾誠)](article1.html) 19 | * [雜誌訊息](info.html) 20 | 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/02/Inc16.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/02/Inc16.tst 5 | 6 | load Inc16.hdl, 7 | output-file Inc16.out, 8 | compare-to Inc16.cmp, 9 | output-list in%B1.16.1 out%B1.16.1; 10 | 11 | set in %B0000000000000000, // in = 0 12 | eval, 13 | output; 14 | 15 | set in %B1111111111111111, // in = -1 16 | eval, 17 | output; 18 | 19 | set in %B0000000000000101, // in = 5 20 | eval, 21 | output; 22 | 23 | set in %B1111111111111011, // in = -5 24 | eval, 25 | output; 26 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/MemoryAccess/PointerTest/PointerTest.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/MemoryAccess/PointerTest/PointerTest.vm 5 | 6 | // Executes pop and push commands using the 7 | // pointer, this, and that segments. 8 | push constant 3030 9 | pop pointer 0 10 | push constant 3040 11 | pop pointer 1 12 | push constant 32 13 | pop this 2 14 | push constant 46 15 | pop that 6 16 | push pointer 0 17 | push pointer 1 18 | add 19 | push this 2 20 | sub 21 | push that 6 22 | add 23 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Not16.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/Not16.tst 5 | 6 | load Not16.hdl, 7 | output-file Not16.out, 8 | compare-to Not16.cmp, 9 | output-list in%B1.16.1 out%B1.16.1; 10 | 11 | set in %B0000000000000000, 12 | eval, 13 | output; 14 | 15 | set in %B1111111111111111, 16 | eval, 17 | output; 18 | 19 | set in %B1010101010101010, 20 | eval, 21 | output; 22 | 23 | set in %B0011110011000011, 24 | eval, 25 | output; 26 | 27 | set in %B0001001000110100, 28 | eval, 29 | output; -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/12/MathTest/MathTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/12/MathTest/MathTest.tst 5 | 6 | load, 7 | output-file MathTest.out, 8 | compare-to MathTest.cmp, 9 | output-list RAM[8000]%D2.6.1 RAM[8001]%D2.6.1 RAM[8002]%D2.6.1 RAM[8003]%D2.6.1 RAM[8004]%D2.6.1 RAM[8005]%D2.6.1 RAM[8006]%D2.6.1 RAM[8007]%D2.6.1 RAM[8008]%D2.6.1 RAM[8009]%D2.6.1 RAM[8010]%D2.6.1 RAM[8011]%D2.6.1 RAM[8012]%D2.6.1 RAM[8013]%D2.6.1; 10 | 11 | repeat 1000000 { 12 | vmstep; 13 | } 14 | 15 | output; 16 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/DMux8Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/DMux8Way.hdl 5 | 6 | /** 7 | * 8-way demultiplexor. 8 | * {a,b,c,d,e,f,g,h} = {in,0,0,0,0,0,0,0} if sel == 000 9 | * {0,in,0,0,0,0,0,0} if sel == 001 10 | * etc. 11 | * {0,0,0,0,0,0,0,in} if sel == 111 12 | */ 13 | 14 | 15 | CHIP DMux8Way { 16 | 17 | IN in, sel[3]; 18 | OUT a, b, c, d, e, f, g, h; 19 | 20 | BUILTIN DMux8Way; 21 | } 22 | 23 | -------------------------------------------------------------------------------- /main/wikidown.wd: -------------------------------------------------------------------------------- 1 | # 關於 wikidown 系統 2 | 3 | ---- 4 | [[wikidown]] 是一個使用 [markdown] 語法編輯的 [維基] ( wiki) 系統,採用 [node.js] 作為伺服器,但程式可以離線執行。 5 | 6 | 在離線執行時, [[wikidown]] 會將資料暫存在瀏覽器的 [localstorage](http://zh.wikipedia.org/wiki/%E7%BD%91%E9%A1%B5%E5%AD%98%E5%82%A8) 儲存空間中,一旦連上伺服器之後,資料就會被寫回伺服器以檔案的形式保存。 7 | 8 | 於是您在連線或離線的情況下都可以使用 [[wikidown]] 系統,如果您安裝了 [node.js],也可以輕易的將 [[wikidown]] 架設在自己的電腦中執行,這樣就可以將編輯的檔案立刻儲存在自己的電腦中了。 9 | 10 | ---- 11 | 12 | 作者: [[陳鍾誠]](ccckmit) 13 | 14 | 本專案原始碼位於: 15 | 16 | [markdown]:http://markdown.tw/ 17 | [維基]:http://zh.wikipedia.org/wiki/%E7%B6%AD%E5%9F%BA 18 | [node.js]:http://nodejs.org/ 19 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/a/PC.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/a/PC.hdl 5 | 6 | /** 7 | * A 16-bit counter with load and reset control bits. 8 | * if (reset[t] == 1) out[t+1] = 0 9 | * else if (load[t] == 1) out[t+1] = in[t] 10 | * else if (inc[t] == 1) out[t+1] = out[t] + 1 (integer addition) 11 | * else out[t+1] = out[t] 12 | */ 13 | 14 | CHIP PC { 15 | IN in[16],load,inc,reset; 16 | OUT out[16]; 17 | 18 | PARTS: 19 | // Put your code here: 20 | } 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/Mux16.cmp: -------------------------------------------------------------------------------- 1 | | a | b | sel | out | 2 | | 0000000000000000 | 0000000000000000 | 0 | 0000000000000000 | 3 | | 0000000000000000 | 0000000000000000 | 1 | 0000000000000000 | 4 | | 0000000000000000 | 0001001000110100 | 0 | 0000000000000000 | 5 | | 0000000000000000 | 0001001000110100 | 1 | 0001001000110100 | 6 | | 1001100001110110 | 0000000000000000 | 0 | 1001100001110110 | 7 | | 1001100001110110 | 0000000000000000 | 1 | 0000000000000000 | 8 | | 1010101010101010 | 0101010101010101 | 0 | 1010101010101010 | 9 | | 1010101010101010 | 0101010101010101 | 1 | 0101010101010101 | 10 | -------------------------------------------------------------------------------- /pmag201511/home.wd: -------------------------------------------------------------------------------- 1 | # 程式人雜誌 2015 年 7 月號 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年7月號 | @[[html]](book.html) | @[[epub]](book.epub) | @[[pdf]](book.pdf) | 6 | 7 | * 前言 8 | * [[編輯小語]](editor) 9 | * [[授權聲明]](license) 10 | * 本期焦點: *JavaScript 語言的新進展 (ES6, io.js 與 koa)* 11 | * [[JavaScript 語言的新進展]](focus1) 12 | * [[ECMAScript 6 的新語法]](focus2) 13 | * [[Yield 與 Generator -- 讓 callback 不再是 javascript 的痛]](focus3) 14 | * [[Co - 讓 Yield 更好用的套件]](focus4) 15 | * [[Koa - 取代 express 的殺手級套件]](focus5) 16 | * 程式人文集 17 | * [[讓 wikidown 從 express 進化為 koa 版本]](article1) 18 | * [[雜誌訊息]](info) 19 | 20 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/NestedCall/NestedCallVME.tst: -------------------------------------------------------------------------------- 1 | // Test file for NestedCall test. 2 | 3 | load Sys.vm, 4 | output-file NestedCall.out, 5 | compare-to NestedCall.cmp, 6 | output-list RAM[0]%D1.6.1 RAM[1]%D1.6.1 RAM[2]%D1.6.1 RAM[5]%D1.6.1 RAM[6]%D1.6.1; 7 | 8 | set RAM[0] 261, 9 | set RAM[1] 261, 10 | set RAM[2] 256, 11 | set RAM[3] -1, 12 | set RAM[4] -1, 13 | set RAM[256] 1234, // fake RIP 14 | set RAM[257] -1, 15 | set RAM[258] -1, 16 | set RAM[259] -1, 17 | set RAM[260] -1, 18 | 19 | set sp 261, 20 | set local 261, 21 | set argument 256, 22 | set this 3000, 23 | set that 4000; 24 | 25 | repeat 50 { 26 | vmstep; 27 | } 28 | output; 29 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/tools/builtInChips/PC.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: tools/builtIn/PC.hdl 5 | 6 | /** 7 | * 16-bit counter with load and reset controls. 8 | * 9 | * If reset(t-1) then out(t) = 0 10 | * else if load(t-1) then out(t) = in(t-1) 11 | * else if inc(t-1) then out(t) = out(t-1) + 1 (integer addition) 12 | * else out(t) = out(t-1) 13 | */ 14 | 15 | CHIP PC { 16 | 17 | IN in[16], load, inc, reset; 18 | OUT out[16]; 19 | 20 | BUILTIN PC; 21 | CLOCKED in, load, inc, reset; 22 | } 23 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/01/DMux8Way.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/01/DMux8Way.hdl 5 | 6 | /** 7 | * 8-way demultiplexor: 8 | * {a, b, c, d, e, f, g, h} = {in, 0, 0, 0, 0, 0, 0, 0} if sel == 000 9 | * {0, in, 0, 0, 0, 0, 0, 0} if sel == 001 10 | * etc. 11 | * {0, 0, 0, 0, 0, 0, 0, in} if sel == 111 12 | */ 13 | 14 | CHIP DMux8Way { 15 | IN in, sel[3]; 16 | OUT a, b, c, d, e, f, g, h; 17 | 18 | PARTS: 19 | // Put your code here: 20 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/a/RAM8.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/a/RAM8.hdl 5 | 6 | /** 7 | * Memory of 8 registers, each 16 bit-wide. Out holds the value 8 | * stored at the memory location specified by address. If load==1, then 9 | * the in value is loaded into the memory location specified by address 10 | * (the loaded value will be emitted to out from the next time step onward). 11 | */ 12 | 13 | CHIP RAM8 { 14 | IN in[16], load, address[3]; 15 | OUT out[16]; 16 | 17 | PARTS: 18 | // Put your code here: 19 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/08/FunctionCalls/FibonacciElement/Sys.vm: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/08/FunctionCalls/FibonacciElement/Sys.vm 5 | 6 | // Pushes n onto the stack and calls the Main.fibonacii function, 7 | // which computes the n'th element of the Fibonacci series. 8 | // The Sys.init function is called "automatically" by the 9 | // bootstrap code. 10 | 11 | function Sys.init 0 12 | push constant 4 13 | call Main.fibonacci 1 // Compute the 4'th fibonacci element 14 | label WHILE 15 | goto WHILE // Loop infinitely 16 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/10/ExpressionlessSquare/Main.jack: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/10/ExpressionlessSquare/Main.jack 5 | 6 | // Expressionless version of Main.jack. 7 | 8 | /** 9 | * The Main class initializes a new Square Dance game and starts it. 10 | */ 11 | class Main { 12 | 13 | // Initializes the square game and starts it. 14 | function void main() { 15 | var SquareGame game; 16 | 17 | let game = game; 18 | do game.run(); 19 | do game.dispose(); 20 | 21 | return; 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /pmag201511/home.md: -------------------------------------------------------------------------------- 1 | # 程式人雜誌 2015 年 7 月號 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年7月號 | [html](book.html) | [epub](book.epub) | [pdf](book.pdf) | 6 | 7 | * 前言 8 | * [編輯小語](editor.html) 9 | * [授權聲明](license.html) 10 | * 本期焦點: *JavaScript 語言的新進展 (ES6, io.js 與 koa)* 11 | * [JavaScript 語言的新進展](focus1.html) 12 | * [ECMAScript 6 的新語法](focus2.html) 13 | * [Yield 與 Generator -- 讓 callback 不再是 javascript 的痛](focus3.html) 14 | * [Co - 讓 Yield 更好用的套件](focus4.html) 15 | * [Koa - 取代 express 的殺手級套件](focus5.html) 16 | * 程式人文集 17 | * [讓 wikidown 從 express 進化為 koa 版本](article1.html) 18 | * [雜誌訊息](info.html) 19 | 20 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/a/RAM64.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/a/RAM64.hdl 5 | 6 | /** 7 | * Memory of 64 registers, each 16 bit-wide. Out holds the value 8 | * stored at the memory location specified by address. If load==1, then 9 | * the in value is loaded into the memory location specified by address 10 | * (the loaded value will be emitted to out from the next time step onward). 11 | */ 12 | 13 | CHIP RAM64 { 14 | IN in[16], load, address[6]; 15 | OUT out[16]; 16 | 17 | PARTS: 18 | // Put your code here: 19 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/b/RAM4K.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/b/RAM4K.hdl 5 | 6 | /** 7 | * Memory of 4K registers, each 16 bit-wide. Out holds the value 8 | * stored at the memory location specified by address. If load==1, then 9 | * the in value is loaded into the memory location specified by address 10 | * (the loaded value will be emitted to out from the next time step onward). 11 | */ 12 | 13 | CHIP RAM4K { 14 | IN in[16], load, address[12]; 15 | OUT out[16]; 16 | 17 | PARTS: 18 | // Put your code here: 19 | } -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/03/b/RAM16K.hdl: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/03/b/RAM16K.hdl 5 | 6 | /** 7 | * Memory of 16K registers, each 16 bit-wide. Out holds the value 8 | * stored at the memory location specified by address. If load==1, then 9 | * the in value is loaded into the memory location specified by address 10 | * (the loaded value will be emitted to out from the next time step onward). 11 | */ 12 | 13 | CHIP RAM16K { 14 | IN in[16], load, address[14]; 15 | OUT out[16]; 16 | 17 | PARTS: 18 | // Put your code here: 19 | } -------------------------------------------------------------------------------- /pmag201503/home.wd: -------------------------------------------------------------------------------- 1 | # Wikidown.js 維基網誌系統 -- 躍上雲端記 2 | 3 | | 出刊年月 | html | epub | pdf | 4 | |-------------|-------|-------|-------------| 5 | | 2015年3月號 | @[[html]](book.html) | @[[epub]](book.epub) | @[[pdf]](book.pdf) | 6 | 7 | * 前言 8 | * [[編輯小語]](editor) 9 | * [[授權聲明]](license) 10 | * 本期焦點:*Wikidown.js 維基網誌系統 -- 躍上雲端記* 11 | * [[Wikidown 的語法與使用方式]](focus1) 12 | * [[Wikidown 的原始碼解析]](focus2) 13 | * [[將 Wikidown 推上 github 成為開源靜態網站]](focus3) 14 | * [[將 Wikidown 推上 heroku 成為雲端系統]](focus4) 15 | * 程式人文集 16 | * [[單頁應用簡介 -- Single Page Application]](article1) 17 | * [[單頁應用的相關技術與問題]](article2) 18 | * [[精彩的專利問答集 (作者:研發養成所 Bridan)]](article3) 19 | * [[雜誌訊息]](info) 20 | 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/StackTest/StackTest.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/StackArithmetic/StackTest/StackTest.tst 5 | 6 | load StackTest.asm, 7 | output-file StackTest.out, 8 | compare-to StackTest.cmp, 9 | output-list RAM[0]%D2.6.2 10 | RAM[256]%D2.6.2 RAM[257]%D2.6.2 RAM[258]%D2.6.2 RAM[259]%D2.6.2 RAM[260]%D2.6.2; 11 | 12 | set RAM[0] 256, 13 | 14 | repeat 1000 { 15 | ticktock; 16 | } 17 | 18 | output; 19 | output-list RAM[261]%D2.6.2 RAM[262]%D2.6.2 RAM[263]%D2.6.2 RAM[264]%D2.6.2 RAM[265]%D2.6.2; 20 | output; 21 | -------------------------------------------------------------------------------- /ymag201506/nand2tetris/projects/07/StackArithmetic/StackTest/StackTestVME.tst: -------------------------------------------------------------------------------- 1 | // This file is part of www.nand2tetris.org 2 | // and the book "The Elements of Computing Systems" 3 | // by Nisan and Schocken, MIT Press. 4 | // File name: projects/07/StackArithmetic/StackTest/StackTestVME.tst 5 | 6 | load StackTest.vm, 7 | output-file StackTest.out, 8 | compare-to StackTest.cmp, 9 | output-list RAM[0]%D2.6.2 10 | RAM[256]%D2.6.2 RAM[257]%D2.6.2 RAM[258]%D2.6.2 RAM[259]%D2.6.2 RAM[260]%D2.6.2; 11 | 12 | set RAM[0] 256, 13 | 14 | repeat 38 { 15 | vmstep; 16 | } 17 | 18 | output; 19 | output-list RAM[261]%D2.6.2 RAM[262]%D2.6.2 RAM[263]%D2.6.2 RAM[264]%D2.6.2 RAM[265]%D2.6.2; 20 | output; 21 | -------------------------------------------------------------------------------- /main/wikidown.md: -------------------------------------------------------------------------------- 1 | # 關於 wikidown 系統 2 | 3 | ---- 4 | [wikidown](wikidown.html) 是一個使用 [markdown] 語法編輯的 [維基] ( wiki) 系統,採用 [node.js] 作為伺服器,但程式可以離線執行。 5 | 6 | 在離線執行時, [wikidown](wikidown.html) 會將資料暫存在瀏覽器的 [localstorage](http://zh.wikipedia.org/wiki/%E7%BD%91%E9%A1%B5%E5%AD%98%E5%82%A8) 儲存空間中,一旦連上伺服器之後,資料就會被寫回伺服器以檔案的形式保存。 7 | 8 | 於是您在連線或離線的情況下都可以使用 [wikidown](wikidown.html) 系統,如果您安裝了 [node.js],也可以輕易的將 [wikidown](wikidown.html) 架設在自己的電腦中執行,這樣就可以將編輯的檔案立刻儲存在自己的電腦中了。 9 | 10 | ---- 11 | 12 | 作者: [陳鍾誠](ccckmit.html) 13 | 14 | 本專案原始碼位於: 15 | 16 | [markdown]:http://markdown.tw/ 17 | [維基]:http://zh.wikipedia.org/wiki/%E7%B6%AD%E5%9F%BA 18 | [node.js]:http://nodejs.org/ 19 | --------------------------------------------------------------------------------