Assisting Students’ Understanding of Memory Location Concept through Visualization


  • Itaza Afiani Mohtar
  • Normah Ahmad
  • Puteri Nor Hashimah Megat Abdul Rahman
  • Bohari Wahijan





algorithm visualization, novice programmers, memory location concept.


Learning programming for the first time is very difficult to many students. This difficulty negatively influences the students’ interest in learning programming thus poses a challenge to the lecturers to maintain students’ active involvement in learning. Students find it difficult to grasp the abstract concept of memory location, thus affects their understanding in writing programs. A memory location simulation program (MeLSim) is proposed to assist students with a realistic and visual experience of the abstract memory location concept. The objectives of this research are to develop a memory location simulation program and to determine students' understanding of the memory location concept after using the simulation. The students were given a pre-test and then required to use MeLSim for two weeks. They were then given a post-test. It was found that, there is significant difference on median total scores before and after using MeLSim. From the results, it can be concluded that students’ using MeLSim improved their test scores. This research provides evidence that visualization can assist students in achieving better understanding of the lessons taught which in turn positively influence their test results.




[1] Guzdial M (2015), Learner-centered design of computing education: Research on computing for everyone. Synthesis Lectures on Human-centered Informatics 8(6), 1-65.

[2] Quintana C, Krajcik J, Soloway E, Fishman LC & O'Connor-Divelbiss S (2013), Exploring a structured definition for learner-centered design. Proceedings of the 4th International Conference of the Learning Sciences, pp. 256-263.

[3] Jenkins T (2002), On the difficulty of learning to program. Proceedings of the 3rd Annual Conference of the LTSN Centre for Information and Computer Sciences 4, pp. 53-58.

[4] Kinnunen P & Malmi, L (2006), Why students drop out CS1 course? Proceedings of the 2nd International Workshop on Computing Education Research, pp. 97-108.

[5] Isiaq SO & Jamil MG (2018), Enhancing student engagement through simulation in programming sessions. International Journal of Information and Learning Technology 35(2), 105-117.

[6] Denny P, Luxton-Reilly A & Tempero E (2012), All syntax errors are not equal. Proceedings of the 17th ACM Annual Conference on Innovation and Technology in Computer Science Education, pp. 75-80.

[7] Hristova M, Misra A, Rutter M & Mercuri R (2003), Identifying and correcting Java programming errors for introductory computer science students. ACM SIGCSE Bulletin 35(1), 153-156.

[8] Gobil AR, Shukor Z & Mohtar IA (2009), Novice difficulties in selection structure. Proceedings of the International Conference in Electrical Engineering and Informatics 2, pp. 351-356.

[9] Kohn T (2017), Variable evaluation: An exploration of novice programmers’ understanding and common misconceptions. Proceedings of the ACM SIGCSE Technical Symposium on Computer Science Education, pp. 345-350.

[10] Hundhausen CD, Douglas SA & Stasko JD (2002), A meta-study of algorithm visualization effectiveness. Journal of Visual Languages and Computing 13(3), 259-290.

[11] Shaffer CA, Cooper ML, Alon AJ, Akbar M, Stewart M, Ponce S & Edwards SH (2010), Algorithm visualization: The state of the field. ACM Transactions on Computing Education 10(3), 1-22.

[12] Brusilovsky P, Ahn JW, Rasmussen E (2010), Teaching information retrieval with web-based interactive visualization. Journal of Education for Library and Information Science 15(3), 187-200.

[13] Leutenegger S & Edgington J (2007), A games first approach to teaching introductory programming. ACM SIGCSE Bulletin 39(1), 115-118.

[14] Liu A, Newsom J, Schum C & Shoop R (2013), Students learn programming faster through robotic simulation. Tech Directions 72(8), 16-19.

[15] Jiau HC, Chen JC & Ssu KF (2009), Enhancing self-motivation in learning programming using game-based simulation and metrics. IEEE Transactions on Education 52(4), 555-562.

[16] Marcelino M, Mihaylov T & Mendes A (2008), H-SICAS, A handheld algorithm animation and simulation tool to support initial programming learning. Proceedings of the 38th ASEE/IEE Frontiers in Education Conference, pp. 7-12.

[17] Dehnadi S (2006), Testing programming aptitude. Proceedings of the 18th Annual Workshop of the Psychology of Programming Interest Group, pp. 22-37

View Full Article: