← SEARCHABLE ARCHIVE
Nand2Tetris · 2026-05-18

Nand2Tetris — Kapitel 4

Hack-Maschinensprache

INTERACTIVE READING MODE →

// Mult.asm
//Eingabe: RAM[0]=R0, RAM[1]=R1
//Ausgabe: RAM[2]=R0 * R1
//Aktion: Wiederholen Sie R1-mal und fügen Sie weiterhin R0 hinzu.

    @R2
    M=0

    @i
    M=0

(LOOP)
    @i
    D=M
    @R1
    D=D-M
    @END
    D;JGE

    @R0
    D=M
    @R2
    M=M+D

    @i
    M=M+1

    @LOOP
    0;JMP

(END)
    @END
    0;JMP
// Fill.asm
//Eingabe: Überprüfen Sie, ob die Tastatur gedrückt wurde (KBD)
//Ausgabe: Füllt den gesamten Bildschirm bei Tastendruck mit Schwarz, andernfalls mit Weiß.
//Vorgang: Wert schreiben und dabei 8192 Wörter vom BILDSCHIRM wiederholen

(LOOP)
    @KBD
    D=M
    @BLACK
    D;JNE

    @color
    M=0
    @DRAW
    0;JMP

(BLACK)
    @color
    M=-1

(DRAW)
    @SCREEN
    D=A
    @addr
    M=D

    @8192
    D=A
    @count
    M=D

(DRAW_LOOP)
    @color
    D=M
    @addr
    A=M
    M=D

    @addr
    M=M+1

    @count
    M=M-1
    D=M
    @DRAW_LOOP
    D;JGT

    @LOOP
    0;JMP