MIPS Assembly beq

Tanım;

  • Programlama dillerinde karar verme deyimi "if"dir. Fakat MIPS Assembly dilinde 2 adet karar komutu vardır. ( beq, bne )
  • beq ( Branch if equel) türkçe anlamıyla "eşitse dallan"dır.
  • Bu komutla 2 registeri karşılaştırıp eşitse istenilen adrese dallanılabilir.


Yazım Kuralı;

beq $s0,$s1,dallanacak_adres

$s0 : karşılaştırılacak 1.register

$s1 : karşılaştırılacak 2. register

dallanacak_adres : eğer 2 register eşitse dallanılacak ana bellek ( RAM ) adresi yada belirlenen etiket



Örnek;

MIPS Assembly Dilindeki Kod;

			addi	$s0,$s0,5       # burada i değişkenini tanımladım.
			addi	$s1,$s1,6	# burada j değişkenini tanımladım.

			beq	$s0,$s1,esit	# i ve j eşitmi onu kontrol ediyorum eğer eşitse esit etiketine dallan.
			add	$s2,$s0,$s1	# eşit değilse burayı yapsın.
			j	cikis		# eşit değilin işini yaptıktan sonra aşağıdaki kodun çalışmasını istemiyorum bu yüzden cikis etiketine dallanıyorum.
esit:		sub	$s2,$s0,$s1	# eşitse burayı yapmasını istiyorum.


cikis:			# karşılaştırma işlemleri bittikten sonraki işlemler...


Yüksek Seviye Programlama Dilindeki Kod;

int i = 5;
int j = 6;
int sonuc;

if( i == j )
	sonuc = i - j;
else
	sonuc = i + j;


MIPS Assembly dilinde yazılanla kodla yüksek seviyeli dildeki yazılan kodlar aynı işlemi yapmaktadır bunu kafanıza tam otursun diye yaptım =)

Girl Eating Pizza

MIPS Assembly programlama dilinde yazılmış üs alma ( Xn ) programıdır.Üs sonuçunu $s4 registerına kaydeder. Kod.datax .word 701y .word 701.textmain addi $16,$0,0 # i degeri ( üs ka

Girl Eating Pizza

MIPS Assembly programlama dilinde yazılmış yaşınızı saate çeviren program.Consoldan aldığı değerlerle işlem yapar. Kod# örnek program yaşanan yıl değerinin ekrandan girilmesiyle bu d

Girl Eating Pizza

PS Assembly programlama dilinde yazılmış üs alma ( Xn ) programıdır.Consoldan aldığı değerlerle işlem yapar.Üs sonuçunu $s0 registerına kaydeder. Kod.datastr .asciiz x=str1 .asciiz

Girl Eating Pizza

PIC Assembly programlama dilinde, timer2 kullanarak PORB bağlı ledleri yakıp söndüren uygulaması yapılmıştır.

Girl Eating Pizza

RC2 ve RC1 pinlerinden elde edeceğiniz PWM sinyallerini kullanarak bir DC motorun hız ayarını ve bir led in ışık şiddetini değiştiren uuygulama yapılmıştır.

Girl Eating Pizza

16 LDCnin ilk satırında 0-200 arası 0.5 saniyede bir artarak sayan ve ikinci satırda başlangıç değeri 100 olan ve butonlarla arttırılıp azaltılan uygulama yapılmıştır.

Girl Eating Pizza

Joystick çalışma mantığına uyarak, ayarlı direnç ile joystick'in X yönündeki okuduğumuz analoğ değerini onluk tabanda ledlerde gösteren uygulamadır.

Girl Eating Pizza

Kendi yaptığımız pull-up tuş taşımı ( keypad ) ile tuş kontrolü yapan uygulaması yapılmıştır. Bastığımız tuşa karşıklık ikilik tabandaki karşılığını PORTC göstermektedir.

Girl Eating Pizza

Decoder ile 0-1000 arası sayıları artan bir şekilde led'de gösterme işlemini yapan uygulama yapılmıştır. PORB ve PORTD'nin bütün pinleri çıkış yapılmıştır.