You are on page 1of 4

AT89S51 MEMORY & REGISTERs

Memory terbagi menjadi 2 bagian :


 Memory program ( ROM ) : - Internal
- Eksternal
 Memory Data ( RAM ) : - Internal
- Eksternal

Memory Program ( ROM )

Eksternal (64K)

Internal (4K)

Aktif 1 (high) aktif 0 (low)


Penjelasan Memory program (ROM)

 Internal
- Memiliki kapasitas memory 4 kbyte
- Memori program internal dapat diakses pada pin diberi logika
High.

 Eksternal
- Memiliki kapasitas memory 64 kbyte
- Memori program internal dapat diakses pada pin diberi logika low.
- Pada gambar memori program terdapat strobe (tanda) untuk akses
memori program eksternal melalui sinyal (Program Strobe
Enable).

Memory data (RAM)

Eksternal RAM

Internal RAM

256 byte
Spesifikasi Internal RAM

SFR

GPR

BIT ADRRESING LOCATION

BANK DEVAULT
Penjelasan memory data (RAM)

 Internal
- Memory data internal dibagi menjadi tiga blok yaitu, 128 lower, 128
upper, dan Register Fungsi Khusus (Special Function Register = SFR).
- Akses data direct and indirect
- Pada memori data internal 128 byte lower terdapat empat bank dan
delapan register (Ro...R7).
- Pengalamatan langsung dari 80H sampai FFH tergolong dalam SFR.
Berikut fungsi yang terdapat dalam SFR.
1. Program Status Word (PSW)
PSW berisi bit-bit status yang berkaitan dengan kondisi CPU saat
itu. PSW terletak dalam ruang SFR pada lokasi D0H.
2. Akumulator
ACC atau akumulator menempati lokasi E0H dan digunakan
sebagai register untuk penyimpanan data sementara dalam
program.
3. Register B
Register B terletak pada lokasi F0H. Register ini digunakan
selama operasi perkalian dan pembagian. Saat intstruksi MUL AB
terjadi perkalian antara akumulator dengan data yang tersimpan
dalam register B dan hasilnya 16 bit disimpan dalam register B
dan akumulator (A). Instruksi DIV AB melakukan pembagian
antara akumulator dengan data yang tersimpan dalam register B.
4. Stack Pointer (SP)
Register SP terletak pada lokasi 81H. SP merupakan register
dengan panjang 8 bit dan digunakan dalam proses simpan dan
ambil dari/ke stack.
5. Data Pointer
Register Data Pointer atau DPTR mengandung byte tinggi (DPH)
dan byte rendah (DPL) masing-masing berada di lokasi 83H dan
82H. DPTR dapat dimanipulasi sebagai dua register 8 bit yang
terpisah.
6. Port 0, Port 1, Port 2, Port 3
P0, P1, P2, P3 masing-masing menempati lokasi 80H, 90H, A0H,
dan B0H.
7. Register Kontrol (Control Register)
Pada register kontrol terdapat TMOD sebagai pewaktu.
8. Timer Register
Timer register merupakan register pencacah 16 bit. Timer 0 high
dan timer 0 low terdapat pada masing-masing 8CH dan 8AH.
Timer 1 high dan Timer 1 low terdapat dilokasi 8DH dan 8BH.

D4 TEM

You might also like