- ... "/>

If Statements

Kategori: MIPS , 15 Ekim 2019 , JanFranco


Koşul durumlarını MIPS'te aşağıdaki instruction'lar ile sağlayacağız:


- beq

Syntax: beq $s, $t, offset
Encoding: 0001 00ss ssst tttt iiii iiii iiii iiii
Bu instruction'ın anlamı şudur, $s == $t ise offset'e (adrese) git.


- bgez

Syntax: bgez $s, offset
Encoding: 0000 01ss sss0 0001 iiii iiii iiii iiii
bgez instruction'ın anlamı $s >= 0 ise offset'e yani adrese git demektir.


- bgtz

Syntax: bgtz $s, offset
Encoding: 0001 11ss sss0 0000 iiii iiii iiii iiii
bgez instruction 0 veya 0'dan büyük durumlar için, bgtz instruction sadece 0'dan büyük durumlar için çalışır.


- blez

Syntax: blez $s, offset
Encoding: 0001 10ss sss0 0000 iiii iiii iiii iiii
blez instruction $s < 0 ise çalışır.


- bltz

Syntax: bltz $s, offset
Encoding: 0000 01ss sss0 0000 iiii iiii iiii iiii
bltz instruction $s <= 0 durumlarında çalışır.


- bne

Syntax: bne $s, $t, offset
Encoding: 0001 01ss ssst tttt iiii iiii iiii iiii
Branch not equal yani bne $s != $t durumunda çalışır. Basit bir örnek yaparak konuyu tamamlayalım:


	.text

li $t0, 12
li $t1, 12

beq $t0, $t1, print_t0

li $v0, 10
syscall

print_t0:
	li $v0, 1
	move $a0, $t0
	syscall


Sonraki Yazı: Shifting Operations
Yorumlar

Henüz bir yorum bulunmuyor.
Yorum bırakın