ARM-based processors are becoming ubiquitous in mobile devices today. With major operating systems, including the latest Windows RT, iOS, Linux and Android, supporting such platforms, understanding the low level operations of these processors and/or being able to directly program them can serve to better develop, optimize and debug software stacks running atop. Such ability would benefit seasoned high level language (HLL) programmers who want to have a deeper understanding of computer architecture, hobbyists who work to build embedded systems, or anyone who want to jump into the booming mobile app development arena.
The supervisors are developing an introductory course about the fundamentals of ARM microprocessors with focus on ARM assembly language programming. We're looking for enthusiastic students to join the team.

Course type:

UROP1000 UROP1100

Applicant's Roles:

Work with UROP supervisor to explore, design and develop learning materials and programming project for a MOOC course of ARM assembly. Student should be strong in programming, with background of assembly language (e.g. MIPS, x86 or ARM).

Applicant's Learning Objectives:

Applicants can learn ARM assembly, major ARM processor architectures, and get involved of every aspects of developing a MOOC course.
The project is expected to be continued till Fall 2017 semester.