Bilgisayar Programcılığı (Gece) Mikroişlemciler ve Assembly Dili Final Sınavı

Bilgisayar Programcılığı (Gece)
Mikroişlemciler ve Assembly Dili
Final Sınavı

1 – Çıkış portunda 2 rakamını yakmak için gerekli olan komutlar nelerdir? (Display ortak anotludur)

SnapCrab_No-0018

 

CEVAP:

segment

 

Ortak anotlu olduğu için yakmak istediğimiz segmentlere 0 değerini göndeririz.

2 rakamını yakmak için a, b, d, e ve g’ye 0 sinyali göndeririz.

D7 D6 D5 D4 D3 D2 D1 D0
1 0 1 0 0 1 0 0
H G F E D C B A

16’lık tabanda bu sayı A4H eşittir.

MVI A, A4H
OUT PORT0
HLT

 

2 – Aşağıda verilen assembly programı işletildikten sonra register içeriklerinin aldığı değerleri bulunuz.

MVI C, 15H
LXI D, 7099H
INR E
MOV A, E
ADD C
ORA D
MOV H, A

CEVAP:

İşlem:

A B C D E H L
9AH 15H 70H 99H FFH
AFH 9AH
FFH

Sonuç:

A B C D E H L
FFH 15H 70H 9AH FFH

 

3 – FFH dan başlayarak, 00H kadar verileri 55H çıkış portuna gönderen programı yazınız.

MVI A, FFH
atla: OUT 55H
DCR A
JNZ atla
HLT