MDR (Memory Data Register)

MDR atau MEMORY DATA REGISTER dari namanya saja mungkin kita sudah dapat menangkap apa fungsi nya, langsung saja tersirat dalam ingatan kita bahwa itu merupakan penyimpan data atau pemberi alamat bagi data namun pada dasarnya MDR adalah daftar unit kontrol komputer yang berisi data yang akan disimpan dalam penyimpanan komputer (misalnya RAM),atau data setelah mengambil dari penyimpanan komputer. Kerjanya seperti buffer dan memegang apa pun yang akan disalin dari memori siap untuk prosesor untuk menggunakannya.

MDR adalah setengah dari antarmuka minimal antara microprogram dan penyimpanan komputer, setengah lainnya adalah alamat memori mendaftar.
Antarmuka memori yang jauh lebih kompleks ada, tapi ini adalah yang paling sederhana yang dapat bekerja.MDR berisi nilai data yang diambil atau disimpan. Kita mungkin tergoda untuk mengatakan bahwa MDR harus W bit lebar, di mana W adalah ukuran sel. Namun pada kebanyakan komputer ukuran sel hanya 8-bit, dan sebagian besar nilai data yang menempati beberapa sel. Jadi ukuran MDR biasanya kelipatan dari 8. Nilai-nilai khas lebar MDR adalah 32 dan 64 bit, yang akan memungkinkan kita untuk mengambil, dalam satu langkah, baik integer atau nilai riil.

Proses kerja MDR

Proses penyimpanan data ke dalam memory dilakukan dengan cara menununjuk lokasi memory tempat data akan disimpan, lalu data yang akan disimpan dimasukkan ke MDR untuk disampaikan ke lokasi itu.Misalnya data itu akan disimpan pada lokasi 502 maka pertama yang dilakukan adalah mengisi register serbaguna R0 dengan angka 502.Pindahkan isi register serbaguna R0 ke MAR, sehingga sekarang MAR akan menunjuk lokasi memory 502.






MAR (Memory Address Register)

MAR (Memory Address Register) atau register penunjuk alamat memori merupakan register yang menampung alamat data atau instruksi pada main memory yang akan diakses, baik itu yang akan diambil (dibaca) maupun yang akan diletakkan (disimpan/ditulis). Register ini berisi alamat dari data dan dihubungkan pada bus alamat, sehingga dapat menspesifikasikan alamat di dalam memori untuk operasi baca atau simpan/tulis.
 Alamat dari main memory (tempat data berada), diletakan di MAR dan dikirimkan ke main memory melalui address bus. Selama komputer bekerja, alamat dalam pencacah program ditahan (latched) pada MAR. Setelah itu MAR akan mengirimkan alamat ke dalam RAM dan operasi membaca dilaksanakan.
MAR adalah register yang mencatat alamat memori yang akan diakses (baik yang akan ditulisi maupun yang akan dibaca). (Hariyanto, Bambang. 1997. Sistem Operasi Revisi Keempat)





MAR berfungsi sebagai komponen yang diperintahkan oleh IR dan Control Unit untuk mencari dan menampung alamat data serta instruksi dalam sebuah Main Memory.

Proses kerja MAR (antara CPU dan memory)

MAR merupakan salah satu register yang digunakan sebagai interface antara CPU dan main memory. MAR menampung alamat data atau instruksi yang dikirim dari main Memory ke CPU atau yang akan direkamkan ke Main Memory


untuk lebih lengkap nya berikut saya sisipkan video mengenai MDR & MAR :