Have you ever wondered how to make sense of hexdumps?
e1a02000e5d00000 e3500000012fff1e e3a00000e2800001 e7d23000e3530000 1afffffbe12fff1e
If so, then you should sign up for the introduction to assembly programming and reverse engineering class. You can learn assembly programming and machine architecture using reverse engineering techniques on your own code. In this class we will write code, compile it into an executable and then disassemble it to learn about registers, stacks, branches, function calls and argument passing, structs and other common idioms.
Experience with any programming language is required; the examples in the class with be in C, with dissassembly into ARM assembly. Bring your own laptop with arm-elf-gcc and associated binutils installed to follow along.