PUSH: Revizyonlar arasındaki fark

Retrojen Wiki sitesinden
Gezinti kısmına atla Arama kısmına atla
Yeni sayfa: "category:Z80 İşlemci Komutları category:Durum Komutları PUSH (it) komutu bir Stack (yığıt) işlem komutudur. PUSH, Stack Pointer (SP / Yığıt İmleci) değ..."
 
Değişiklik özeti yok
19. satır: 19. satır:
|Yığıt imlecini artır ve yazmaç çiftini yığıttan al
|Yığıt imlecini artır ve yazmaç çiftini yığıttan al
| --------
| --------
|-[SP]=rr
| -[SP]=rr
|-
|-
|PUSH rr (IX/IY)
|PUSH rr (IX/IY)
25. satır: 25. satır:
|Yığıt imlecini azalt ve yazmaç çiftini yığıttan al
|Yığıt imlecini azalt ve yazmaç çiftini yığıttan al
| --------
| --------
|-[SP]=rr
| -[SP]=rr
|}
|}



13.35, 18 Aralık 2014 tarihindeki hâli


PUSH (it) komutu bir Stack (yığıt) işlem komutudur. PUSH, Stack Pointer (SP / Yığıt İmleci) değerini iki azaltır ve verilen yazmaç çiftini yığıtın en üstüne koyar. Bu şekliyle SP, yığıttaki son veri çiftini işaret eder şekilde bırakılır.

PUSH 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.

Komut detayları

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


Açıklama

Nop komutuna rastlandığında herhangi bir işlem yapılmaz ve PC normal şekilde 1 yükseltilir.

Nop komutunun

Ö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

POP | Stack | Stack Pointer

Zx Spectrum Ula Gecikmesi Komut Detayı

PUSH pc:4,ir:1,sp-1:3,sp-2:3 pc:5,sp-1:3,sp-2:3