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

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 differe...

وصف كامل

محفوظ في:
التفاصيل البيبلوغرافية
المؤلف الرئيسي: El-Abd, Mohammed (author)
منشور في: 2018
الوصول للمادة أونلاين:http://hdl.handle.net/11675/5043
الوسوم: إضافة وسم
لا توجد وسوم, كن أول من يضع وسما على هذه التسجيلة!
الوصف
الملخص: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