1. หน่วยความจำสำหรับเก็บโปรแกรม (Program Memory) หรือ Code Memory
2. หน่วยความจำสำหรับเก็บข่อมูล (Data Memory)
3. รีจิสเตอร์ที่ทำหน้าที่เฉพาะ (Special Function)
1.หน่วยความจำสำหรับเก็บโปรแกรม (Program Memory) หรือ (Code Memory)
ทำหน้าที่เช่นเดียวกับรอม (ROM) ทำหน้าที่เก็บชุดคำสั่งเพื่อให้ไมโครคอนโทรลเลอร์ทำตามชุดคำสั่งนั้น ๆ โดยไอซีไมโครคอนโทรลเลอร์เบอร์ AT89C1051,AT89C2051 และ AT89C4051 จะมีหน่วยความจำเก็บโปรแกรมได้ 1Kbytes,2Kbytes และ 4Kbytes ตามลำดับโดยหน่วยความจำนั้นจะเป็นลักษณะแบบแฟลช ซึ่งมีคุณสมบัติในการลบข้อมูลด้วยไฟฟ้า และโปรแกรมให้ไมโครคอนโทรลเลอร์มากกว่า 1000 ครั้ง
2.หน่วยความจำสำหรับเก็บข้อมูล (Data Memory)
ทำหน้าที่เก็บข้อมูล โดยข้อมูลอาจเป้นค่าหลังจากที่ไมโครคอนโทรลเลอร์ประมวลผลเสร็จเรียบร้อยแล้วหรือเก็บค่าของข้อมูลที่ไมโครคอนโทรลเลอร์ประมวลผลขณะนั้น และจะทำหน้าที่เป้น สแตก (Stack)
ตารางตำแหน่งแอดเดรสของหน่วยความจำภายใน (Internal Data Memory)