MMIX: Bedingte Sprünge



  • Hey Leute,
    ich hab nen hartes Problem mit nem MMIX Programm. Ich (= Anfänger) weiß einfach nicht wo der (Denk-)Fehler ist.
    Das Programm soll "TRUE" ausgeben, für x>a und "TRUE" sonst. Leider gibt es immer "FALSE" aus.
    Jede Hilfe ist willkommen. Danke, styler.

    LOC #100
        GREG    @
    
    $0  BYTE    4
    $1  BYTE    2
    
    x   IS  $0
    a   IS  $1
    
    tr  BYTE    "TRUE",0
    fal BYTE    "FALSE",0
    
    Main              SWYM  0
    
        SUB               a,x,a a=x-a
        BNN a,say_true        Branch-Non-Negative
    
    say_false   LDA $255,fal
        TRAP    0,Fputs,StdOut
        TRAP    0,Halt,0
    
    say_true    LDA $255,tr
        TRAP    0,Fputs,StdOut
        TRAP    0,Halt,0
    

    edit: sorry, die formatierung des codes is irgendwie kaputtgegangen...

    [ Dieser Beitrag wurde am 28.05.2003 um 18:52 Uhr von the_styler editiert. ]


Anmelden zum Antworten