# You can add comments like this

# This is helpful in seperating instruction sets like this:
# RV32I
# Format: mnemonic rd(1/0)rs1(1/0)rs2(1/0) funct12(1/0)funct7(1/0)funct3(1/0)  machinecode
# Please fill variable parts (rd,rs) with zeros    



# APX

XADD     111 011 10000000000000000000000000110011
XSUB     111 011 11000000000000000000000000110011

XMUL     111 011 10000010000000000000000000110011
XMULH    111 011 10000010000000000001000000110011
XMULHSU  111 011 10000010000000000010000000110011
XMULHU   111 011 10000010000000000011000000110011
XDIV     111 011 10000010000000000100000000110011
XDIVU    111 011 10000010000000000101000000110011
XREM     111 011 10000010000000000110000000110011
XREMU    111 011 10000010000000000111000000110011

 
LUI      100 000 00000000000000000000000000110111
AUIPC    100 000 00000000000000000000000000010111
JAL      100 000 00000000000000000000000001101111
JALR     110 001 00000000000000000000000001100111
BEQ      011 001 00000000000000000000000001100011
BNE      011 001 00000000000000000001000001100011
BLT      011 001 00000000000000000100000001100011
BGE      011 001 00000000000000000101000001100011
BLTU     011 001 00000000000000000110000001100011
BGEU     011 001 00000000000000000111000001100011
LB       110 001 00000000000000000000000000000011
LH       110 001 00000000000000000001000000000011
LW       110 001 00000000000000000010000000000011
LBU      110 001 00000000000000000100000000000011
LHU      110 001 00000000000000000101000000000011
SB       011 001 00000000000000000000000000100011
SH       011 001 00000000000000000001000000100011
SW       011 001 00000000000000000010000000100011
ADDI     110 001 00000000000000000000000000010011
SLTI     110 001 00000000000000000010000000010011
SLTIU    110 001 00000000000000000011000000010011
XORI     110 001 00000000000000000100000000010011
ORI      110 001 00000000000000000110000000010011
ANDI     110 001 00000000000000000111000000010011
SLLI     110 011 00000000000000000001000000010011
SRLI     110 011 00000000000000000101000000010011
SRAI     110 011 01000000000000000101000000010011
ADD      111 011 00000000000000000000000000110011
SUB      111 011 01000000000000000000000000110011
SLL      111 011 00000000000000000001000000110011
SLT      111 011 00000000000000000010000000110011
SLTU     111 011 00000000000000000011000000110011
XOR      111 011 00000000000000000100000000110011
SRL      111 011 00000000000000000101000000110011
SRA      111 011 01000000000000000101000000110011
OR       111 011 00000000000000000110000000110011
AND      111 011 00000000000000000111000000110011
FENCE    000 001 00000000000000000000000000001111
FENCE.I  000 001 00000000000000000001000000001111
ECALL    000 101 00000000000000000000000001110011
EBREAK   000 101 00000000000100000000000001110011
CSRRW    110 001 00000000000000000001000001110011
CSRRS    110 001 00000000000000000010000001110011
CSRRC    110 001 00000000000000000011000001110011
CSRRWI   100 001 00000000000000000101000001110011
CSRRSI   100 001 00000000000000000110000001110011
CSRRCI   100 001 00000000000000000111000001110011


# RV32M

MUL      111 011 00000010000000000000000000110011
MULH     111 011 00000010000000000001000000110011
MULHSU   111 011 00000010000000000010000000110011
MULHU    111 011 00000010000000000011000000110011
DIV      111 011 00000010000000000100000000110011
DIVU     111 011 00000010000000000101000000110011
REM      111 011 00000010000000000110000000110011
REMU     111 011 00000010000000000111000000110011


# Ending Is Done by ENDOFLUT comment
ENDOFLUT