Sunteți pe pagina 1din 7

Task 1

A)

.data
a:.byte 12
b: .byte 13
c: .byte 0
d : .byte 15
e : .byte 16

.text

lb $t0,a
lb $t1,b
lb $t2,c
lb $t3,e
lb $t4,d

add $t5,$t0,$t1
sub $t0,$t5,$t4
add $t5,$t0,$t3

sb $t5,c

li $v0,1
lb $a0,c
syscall

B)

.data
a :.byte 12
d :.byte 22
e : .word 0
b : .word 12
c :.word 11

.text
lb $t0,a
lb $t1,d
lw $t2,c
lw $t3,b
add $t5,$t0,$t3
add $t0,$t1,$t2
sub $t3,$t5,$t0

sw $t3,e

li $v0,1
lw $a0,e
syscall

C)

.data
a :.byte 12
d :.byte 22
e : .word 11
b : .word 12
c :.word 11

.text
lb $t0,a
lb $t1,d
lw $t2,c
lw $t3,b
lw $t4,e

sub $t5,$t3,$t1
add $t3,$t0,$t5
add $t1,$t3,$t4

sb $t1,d

li $v0,1
lb $a0,d
syscall

Task 2:

.data
x :.word 1
y :.word 2
z: .half 3
a : .half 4
b : .byte 5
c :.byte 6
.text
li $v0,1
lw $a0,x
syscall

li $v0,11
la $a0,10
syscall

li $v0,1
lw $a0,y
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lh $a0,z
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lh $a0,a
syscall

li $v0,11
la $a0,10
syscall

li $v0,1
lb $a0,b
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lb $a0,c
syscall

li $v0,11
la $a0,10
syscall

li $v0,5
syscall

move $t0,$v0
sw $t0,x
li $v0,5
syscall

move $t0,$v0
sw $t0,y

li $v0,5
syscall

move $t0,$v0
sh $t0,z

li $v0,5
syscall

move $t0,$v0
sh $t0,a

li $v0,5
syscall

move $t0,$v0
sb $t0,b
li $v0,5
syscall

move $t0,$v0
sb $t0,c
li $v0,1
lw $a0,x
syscall

li $v0,11
la $a0,10
syscall

li $v0,1
lw $a0,y
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lh $a0,z
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lh $a0,a
syscall

li $v0,11
la $a0,10
syscall

li $v0,1
lb $a0,b
syscall

li $v0,11
la $a0,10
syscall
li $v0,1
lb $a0,c
syscall

li $v0,11
la $a0,10
syscall

Task3:

Address (PC) Native Instruction Source Course


0x00400000 lui $1,0x00001001 11: lb $t0,a
0x00400004 lb $8,0x00000000($1)
0x00400008 lui $1,0x00001001 12: lb $t1,b
0x0040000c lb $9,0x00000001($1)
0x00400010 lui $1,0x00001001 13: lb $t2,c
0x00400014 lb $10,0x00000002($1)
0x00400018 lui $1,0x00001001 14: lb $t3,e
0x0040001c lb $11,0x00000004($1)
0x00400020 lui $1,0x00001001 15: lb $t4,d
0x00400024 lb $12,0x00000003($1)

b)

Line no Instruction $a0 $v0


Addiu 0x00000000 0x00000000
$2,$0,0x00000001
Lui $1,0x00001001 0x00000000 0x00000001
Lw $4,0x00000000($1) 0x00000000 0x00000001
syscall 0x00000001 0x00000001
Addiu 0x00000001 0x00000001
$2,$0,0x0000000b
Addiu 0x00000001 0x0000000b
$2,$0,0x0000000a
syscall 0x0000000a 0x0000000b
0x0000000a 0x0000000b
0x0000000a 0x00000001
0x0000000a 0x00000001
Task 4)

.text

li $v0,5
syscall
move $s0,$v0

li $v0,5
syscall

move $s1,$v0

move $t0,$s0
move $t1,$s1
add $t2,$t0,$t1
add $t3,$t2,$t1
add $t4,$t3,$t2
add $t5,$t4,$t3
add $t6,$t5,$t4
add $t7,$t6,$t5

li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t0
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t1
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t2
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t3
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t4
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t5
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t6
syscall
li $v0,11
la $a0,10
syscall
li $v0,1
move $a0,$t7
syscall

S-ar putea să vă placă și