lc4-disassembler / obj_files_for_testing / test2_.asm
test2_.asm
Raw


    .CODE
    .ADDR x0000
INIT
    TRAP #1
    CONST R0, #255
    HICONST R0, #255
    RTI

    .ADDR x0005

START
    ADD R0, R1, R2
    MUL R3, R4, R5
    SUB R6, R7, R0
    DIV R1, R3, R2

    .ADDR x000B

IMMS_XB
    ADD R0, R4, #15
    ADD R7, R7, #-16
BRANCH
    BRn END
    BRnz IMMS_XB
    BRnp START
    BRz LOGICALS
    BRzp COMPARES
    BRp BRANCH
    BRnzp START
LOGICALS
    AND R1, R2, R3
    OR R1, R3, R2
    XOR R1, R3, R2
    AND R1, R2, #-1
    NOT R0, R7
COMPARES
    CMP R0, R1
    CMPU R2, R3
    CMPI R4, #-64
    CMPI R5, #63
    CMPIU R6, #127
    CMPIU R7, #0
DMEM
    LDR R1, R2, #31
    STR R1, R2, #-32
SHIFTERS_MOD
    SLL R3, R4, #15
    SRA R5, R6, #0
    SRL R7, R0, #10
    MOD R1, R2, R3
NOP
JUMPS
    JSR SUBROUTINE
    JSRR R0
    JMPR R1
END
NOP

    .ADDR x00F0

SUBROUTINE
    ADD R0, R0, #10
    JMP SHIFTERS_MOD
END_SUBROUTINE
NOP

    .DATA
    .ADDR x2000
VALUES
.FILL x8000
.FILL x7FFF
.FILL x52D2
.FILL x1042
.FILL x0DFC
.FILL x297B