diff options
Diffstat (limited to 'lang/mips/chapter-2/exercise-5.s')
-rw-r--r-- | lang/mips/chapter-2/exercise-5.s | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/lang/mips/chapter-2/exercise-5.s b/lang/mips/chapter-2/exercise-5.s new file mode 100644 index 0000000..ffb4058 --- /dev/null +++ b/lang/mips/chapter-2/exercise-5.s @@ -0,0 +1,22 @@ +# t0 = s0/8 - s1*2 + s2 + .text +main: + li $s0, 69 # s0 = 20 + li $s1, 4 # s1 = 4 + li $s2, 20 # s2 = 20 + + sra $t0, $s0, 3 # t0 = s0 >> 3 + sll $t1, $s1, 1 # t1 = s1 << 1 + sub $t0, $t0, $t1 # t0 -= t1 + add $t0, $t0, $s2 # t0 += s2 + + li $v0, 1 # print integer + move $a0, $t0 # at t0 + syscall + + li $v0, 11 # print character + li $a0, 10 # newline + syscall + + li $v0, 10 # terminate + syscall |