| 1 | .data |
|---|
| 2 | A: .word 0x335e |
|---|
| 3 | B: .word 0x0d21 |
|---|
| 4 | C: .word 0xc |
|---|
| 5 | SW_RSLT: .word 0 |
|---|
| 6 | ADD_RSLT: .word 0 |
|---|
| 7 | SUB_RSLT: .word 0 |
|---|
| 8 | ADDI_RSLT: .word 0 |
|---|
| 9 | AND_RSLT: .word 0 |
|---|
| 10 | OR_RSLT: .word 0 |
|---|
| 11 | ANDI_RSLT: .word 0 |
|---|
| 12 | ORI_RSLT: .word 0 |
|---|
| 13 | J_RSLT: .word 0 |
|---|
| 14 | BEQ_NT_RSLT: .word 0 |
|---|
| 15 | BEQ_T_RSLT: .word 0 |
|---|
| 16 | SLT0_RSLT: .word 0 |
|---|
| 17 | SLT1_RSLT: .word 0 |
|---|
| 18 | SLTI0_RSLT: .word 0 |
|---|
| 19 | SLTI1_RSLT: .word 0 |
|---|
| 20 | |
|---|
| 21 | .text |
|---|
| 22 | main: |
|---|
| 23 | lw $5, A # lw ¤Î¥Æ¥¹¥È |
|---|
| 24 | lw $6, B # lw ¤Î¥Æ¥¹¥È |
|---|
| 25 | lw $7, C # lw ¤Î¥Æ¥¹¥È |
|---|
| 26 | sw $5, A($7) # sw ¤Î¥Æ¥¹¥È (´üÂÔ·ë²Ì = 0x335e) |
|---|
| 27 | |
|---|
| 28 | add $8, $5, $6 # add ¤Î¥Æ¥¹¥È |
|---|
| 29 | sw $8, ADD_RSLT # ´üÂÔ·ë²Ì = 0x407f |
|---|
| 30 | |
|---|
| 31 | sub $9, $5, $6 # sub ¤Î¥Æ¥¹¥È |
|---|
| 32 | sw $9, SUB_RSLT # ´üÂÔ·ë²Ì = 0x263d |
|---|
| 33 | |
|---|
| 34 | addi $10, $5, 0x100 # addi ¤Î¥Æ¥¹¥È |
|---|
| 35 | sw $10, ADDI_RSLT # ´üÂÔ·ë²Ì = 0x345e |
|---|
| 36 | |
|---|
| 37 | and $11, $5, $6 # and ¤Î¥Æ¥¹¥È |
|---|
| 38 | sw $11, AND_RSLT # ´üÂÔ·ë²Ì = 0x100 |
|---|
| 39 | |
|---|
| 40 | or $12, $5, $6 # or ¤Î¥Æ¥¹¥È |
|---|
| 41 | sw $12, OR_RSLT # ´üÂÔ·ë²Ì = 0x3f7f |
|---|
| 42 | |
|---|
| 43 | andi $13, $5, 0x1ff # andi ¤Î¥Æ¥¹¥È |
|---|
| 44 | sw $13, ANDI_RSLT # ´üÂÔ·ë²Ì = 0x15e |
|---|
| 45 | |
|---|
| 46 | ori $14, $5, 0x1ff # ori ¤Î¥Æ¥¹¥È |
|---|
| 47 | sw $14, ORI_RSLT # ´üÂÔ·ë²Ì = 0x33ff |
|---|
| 48 | |
|---|
| 49 | ori $15, $0, 1 # j ¤Î¥Æ¥¹¥È¤Î¤¿¤á¤Î½é´üÀßÄê |
|---|
| 50 | j skip1 |
|---|
| 51 | ori $15, $0, 0 |
|---|
| 52 | skip1: |
|---|
| 53 | sw $15, J_RSLT # ´üÂÔ·ë²Ì = 1 |
|---|
| 54 | |
|---|
| 55 | ori $15, $0, 1 # beq ¤Î¥Æ¥¹¥È¤Î¤¿¤á¤Î½é´üÀßÄê |
|---|
| 56 | ori $16, $0, 2 # beq ¤Î¥Æ¥¹¥È¤Î¤¿¤á¤Î½é´üÀßÄê |
|---|
| 57 | beq $15, $16, skip2 # beq ¤Î¥Æ¥¹¥È (not taken) |
|---|
| 58 | ori $16, $0, 3 |
|---|
| 59 | skip2: |
|---|
| 60 | sw $16, BEQ_NT_RSLT # ´üÂÔ·ë²Ì = 3 |
|---|
| 61 | |
|---|
| 62 | ori $16, $0, 1 |
|---|
| 63 | beq $15, $16, skip3 # beq ¤Î¥Æ¥¹¥È (taken) |
|---|
| 64 | ori $16, $0, 3 |
|---|
| 65 | skip3: |
|---|
| 66 | sw $16, BEQ_T_RSLT # ´üÂÔ·ë²Ì = 1 |
|---|
| 67 | |
|---|
| 68 | slt $17, $5, $6 # slt ¤Î¥Æ¥¹¥È |
|---|
| 69 | sw $17, SLT0_RSLT # ´üÂÔ·ë²Ì = 0 |
|---|
| 70 | slt $18, $6, $5 # |
|---|
| 71 | sw $18, SLT1_RSLT # ´üÂÔ·ë²Ì = 1 |
|---|
| 72 | |
|---|
| 73 | slti $19, $5, 0x1000 # slti ¤Î¥Æ¥¹¥È |
|---|
| 74 | sw $19, SLTI0_RSLT # ´üÂÔ·ë²Ì = 0 |
|---|
| 75 | slti $20, $5, 0x5000 # |
|---|
| 76 | sw $20, SLTI1_RSLT # ´üÂÔ·ë²Ì = 1 |
|---|
| 77 | exit: |
|---|
| 78 | j exit |
|---|