Program-program dan data-data pada komputer maupun mikrokontroller disimpan pada memori. Memori yang diakses olehmikrokontroller ini terdiri dari RAM dan ROM. Perbedaan antara RAM dan ROM ini adalahRAM hanya bisa ditulis dan dibaca, sedangkanROM hanya bisa dibaca. RAM bersifat volatile(isinya hilang jika power/sumber tegangan dihilangkan), sedangkan ROM bersifat non-volatile (isinya tidak hilang jika power/sumber tegangan dihilangkan).
Biasanya mikrokontroler tipe AT89S8253 mengimplementasikan pembagian ruang memori untuk data dan program. ROM ini biasanya berisi kode/program untuk mengontrol kerja dari mikrokontroler, sedangkan RAM biasanya berisi data yang akan dieksekusi olehmikrokontroler. Setiap mikrokontroler khususnya keluarga MCS-51memiliki ROM dan RAM internal yang besarnya bervariasi.