Balancing Low-Level vs. High-Level Programming Knowledge in an Undergraduate Microprocessors Course

No Thumbnail Available
Issue Date
El-Abd, Mohammed
Conference Paper
In this work, we address the issue of balancing low-level vs. high-level programming knowledge and experience in embedded systems courses. On one hand, low-level programming (i.e. Assembly) is important for the students to fully understand how the machine works and have full control over its different capabilities and hardware features. On the other hand, high-level programming experience (i.e. C/C++) is a must to cope with recent industrial and embedded market trends. We aim to investigate one teaching approach that could be used to adequately deliver both learning experiences in an undergraduate microprocessors course. Sample lab sheets and assignments that demonstrate the proposed approach are presented. The approach is tested over two consecutive semesters and both students' feedback and performance are used to evaluate the proposed methodology
External link