Uploaded by Münir Yenigül

Mikroişlemciler2020Vize

advertisement
MİKROİŞLEMCİLER VİZE
1. a) Aşağıdaki data segment tanımlaması için bellek yerleşimini yapınız .
b) Tabloda komutlar çalıştırıldığında yapılan atamaları ayrılan yerlere yazınız.
MY_DATA SEGMENT PARA 'DATA'
LIST_A db 1, 2 dup(3), 4, 8, 32
NUM1 db 10100111b
LIST_B dw 09h, 0C1Dh, 10FCh
NUM2 dw -4
NUM3 EQU 134
MY_DATA ENDS
Offset
Address
Memory
Content
0000h
Örnek:
MOV AX, 0000H
0001h
MOV AX, LIST_A[3]
0002h
ADD AX, NUM2
0003h
MOV BX, OFFSET LIST_B
0004h
MOV AL, [BX]+2
0005h
ADD AL, 07H
0006h
MUL BX
0007h
0008h
0009h
000Ah
000Bh
000Ch
000Dh
000Eh
SUB AX, LIST_B[2][2]
MOV AX, NUM3
MOV BL, LIST_B
DIV BL
Register
High
Low
AX
00
00
2. DS=1300H, SS=1400H , BP=1500H ve SI=0100H için aşağıda verilen komutlar için hangi adrese
erişileceğini bulunuz (real mode için).
a)
MOV EAX, [BP+200H]
Effektif Adres:
b)
MOV AL, [BP+SI-200H]
Effektif Adres:
c)
MOV AL, [SI-0100H]
Effektif Adres:
3.
LDS CX, [DI]
Opcode:
REG:
mod:
D:
W:
R/M:
Displacement:
Data:
Tüm komut hexadecimal formda:
DEC BYTE PTR [SI+1000H]
Opcode:
REG:
mod:
R/M:
Displacement:
Data:
Tüm komut hexadecimal formda:
D:
W:
MOV BX, DS
Opcode:
REG:
mod:
D:
W:
R/M:
Displacement:
Data:
Tüm komut hexadecimal formda:
MOV WORD PTR [BX-4H], 1004H
Opcode:
REG:
mod:
D:
W:
D:
W:
R/M:
Displacement:
Data:
Tüm komut hexadecimal formda:
ADC [1000H], DI
Opcode:
REG:
mod:
R/M:
Displacement:
Data:
Tüm komut hexadecimal formda:
4. a) SP=1236, AX=24B6, DI=85C2 ve DX=5F93 ise aşağıdaki komutlar işlendiğinde yığıtın (stack)
içeriğinin nasıl değişeceğini kademeli olarak aşağıdaki şekil üzerinde gösterip SP’nin alacağı değeri
yazınız.
PUSH AX
PUSH DI
PUSH DX
b) SP=18FA iken yığıtın içeriği aşağıdaki şekilde verilmiştir. Aşağıdaki komutlar işlendiğinde
yığıtın (stack) içeriğinin nasıl değişeceğini kademeli olarak aşağıdaki şekil üzerinde gösterip
SP’nin ve ilgili registerların alacağı değerleri yazınız.
POP CX
POP DX
POP BX
5) Bir veri segmenti için aşağıda verilen bellek gösteriminde 0007H offset adresinden itibaren
sırasıyla LIST1 adında byte tipinde 5 elemanlı bir liste, LIST2 adında word tipinde 4 elemanlı bir
liste vardır. Buna göre; verilen bellek gösterimi için aşağıdaki soruları yanıtlayınız.
Offset
Address
Memory
Content
0007H
0AEH
0008H
0ADH
0009H
0ACH
000AH
0ABH
000BH
0AAH
000CH
0A9H
000DH
0A8H
000EH
0A7H
000FH
0A6H
0010H
0A5H
0011H
0A4H
0012H
0A3H
0013H
0A2H
0014H
00A2H
a) Aşağıdaki kod çalıştırıldığı zaman register'ların değerlerinin nasıl değiştiğini yazınız.
MOV DI,2
DI =
LEA BX, LIST2
BX =
MOV DX, [BX][DI]+1
DX =
MOV BX, OFFSET LIST1
BX =
INC DI
DI =
SUB BX, DI
BX =
MOV CL, LIST1[BX]
CL =
b) 0014H adresindeki 1 byte'lık veriyi, 000DH adresine kopyalayan kodu yazınız.
c) LIST2'nin 3. elemanını, LIST2'nin 0. elemanına kopyalayan kodu yazınız.
6. A)Aşağıdaki boşlukları doldurunuz.
I.
Segment ve offset değerler tarafından oluşturulmuş adrese ..................................denir.
II.
BP,................................'i adresler. BX,DI,SI ise .................................'i adresler.
III.
16 bitlik POP komutu, SP'yi ............ arttırır.
IV.
İki blok arasındaki verinin transferini sağlayan komut ...................dır.
V.
İki register arasındaki bilginin değiş tokuşunu sağlayan komut ..........'dır.
VI.
Memory lokasyonu ile al,ax ve eax arasında veri transferini gerçekleştiren adresleme
yöntemi ..................................'dir.
VII.
Near CALL komutu .......... byte uzunluğundadır.
VIII.
.............komutu,bir register(segment registerlar hariç) veya hafıza alanın içeriğine 1 ekler.
IX.
............komutu, tablodan veri çekmek için kullanılır.
B) Doğru /Yanlış sorularını yapınız.
I.
MOV register-register veya register-memory arasında 8086-80286 işlemciler için byte veya
word, 80386 ve üstü işlemciler için byte,word veya doubleword data transfer eder. (
)
II.
MOV komutu sadece hedef register'ı değiştirir, CMP komutu hedef register'ı değiştirmez. ( )
III.
Register Addresleme Modunda her iki operand segment register’ı olabilir. (
IV.
MOV BX,OFFSET LIST=LEA BX,LIST (
V.
DIV komutunda flag değişimi önceden belirlenemez.(
)
)
)
Download