POP

Retrojen Wiki sitesinden
13.45, 18 Aralık 2014 tarihinde Admin (mesaj | katkılar) tarafından oluşturulmuş 67 numaralı sürüm (Yeni sayfa: "kategori:Z80 İşlemci Komutları kategori:Veri Transferi Komutları == Komut detayları == {| class="wikitable" |- ! Komut ! Süre (ts) ! Açıklama ! Bayrak Etk...")
(fark) ← Önceki sürüm | Güncel sürüm (fark) | Sonraki sürüm → (fark)
Gezinti kısmına atla Arama kısmına atla



Komut detayları

Komut Süre (ts) Açıklama Bayrak Etkisi Yapılan İş
POP rr (BC/HL/DE/AF) 10 yazmaç çiftini yığıttan al ve Yığıt imlecini arttır -------- rr=[SP]+
PUSH rr (IX/IY) 14 yazmaç çiftini yığıttan al ve Yığıt imlecini arttır -------- rr=[SP]+


Açıklama

POP (çek) komutu bir Stack (yığıt) işlem komutudur. PUSH, verilen yazmaç çiftini yığıtın en üstündeki değere eşitler ve Stack Pointer (SP / Yığıt İmleci) değerini iki artırır. Bu şekliyle SP, yığıttaki son kullanılmamış veri çiftini işaret eder şekilde bırakılır.

POP her zaman 16 bitlik bir yazmaç çifti kullanır. Bu sebepten Akümülatör (A) ve Bayrak Yazmaçı (F) birleştirilerek AF çifti şeklinde yığıta itilebilir.

Örnek Kod

LD SP, 42192     ;yığıt lokasyonunu ayarla
LD BC,1122       ; BC ve HL'ye değerler yükle
LD HL,3344
PUSH BC          ; değerleri stack'e it
PUSH HL
POP BC           ; değerleri stack'ten geri al (son giren ilk çıkar). 
POP HL           ; DİKKAT! BC ve HL değerleri yer değiştirmiş şekilde gelir.

Ayrıca Bakınız

PUSH | Stack | Stack Pointer

Zx Spectrum Ula Gecikmesi Komut Detayı

POP [48/128] pc:4,sp:3,sp+1:3 [+3/2ab] pc:4,sp:3,sp+1:3