-

assembly 80-80 Branch ve jump kullanımı

branch‘in kelime anlamı dallanmak demektir,branchde  bir durumun kontrolü yapılır,ona  dallanma olur.
assemby 80-80de 2 tane  branch komutu vardır:

BRN:branch on negative (negatife dallan) demektir,sayının negatif  olup olmadığını kontrol eder,sayı negatif ise sonraki satırı atlayıp onun altındaki satırdan devam eder,negatif değilse de normal sırada devam eder.

BRZ:branch on zero (sıfıra dallan) demektir,sayının 0 olup olmadığını kontrol eder,0 ise alttaki satırı atlar,devam eder;0  değilse de normal sırayı takip eder.

jump‘ın  kelime  anlamı atla,zıpla demektir,jump komutu  geldiği zaman  kod akışı  jump edilen adresten devam eder.

örnek bir  kodu inceleyelim:
bir sayının mutlak değerini bulan assembly kodu yazınız,sayı  20 hex adresindedir,mutlak değeri de  20 hex değerine yazınız,r2 ile  point ediliyor.

1         LDI       r5,7            ;jump yapabileceği adresin değerini  r5 registerında tutuyorum
2         LD        r1,r2            ;mutlak değeri alınacak sayıyı r2den r1  registeriına  atıyorum
3        BRN       r1                ;sayının  negatif olup olmadığına  bakıyorum
4          JMP  r5                 ;negatif değilse  birşey yapmaya gerek yok,7. satırdaki komutu işle,yani çıkış
5         NOT  r1,r1           ;negatifse  tersini  al,pozitif yap
6         ST    r2,r1             ;tersini aldığın sayıyı  yerine  yükle
7         Halt                      ;bitir

DERYA GÜNDÜZ

Category: Assembly

Your email address will not be published. Required fields are marked *

*