Memories.<p>If you're interested in this sort of thing there is one book you should read: Arm System on Chip by Steve Furber (original designer of the ARM)<p><a href="http://www.amazon.com/ARM-System---Chip-Architecture-Edition/dp/0201675196/ref=sr_1_1?ie=UTF8&qid=1385345413&sr=8-1&keywords=arm+system+on+chip" rel="nofollow">http://www.amazon.com/ARM-System---Chip-Architecture-Edition...</a>
This was posted two days ago, I found the analysis of a C map function compiled to arm interesting<p><a href="http://www.reddit.com/r/compsci/comments/1r8izo/what_would_it_take_to_learn_arm_at_a_machine_code/" rel="nofollow">http://www.reddit.com/r/compsci/comments/1r8izo/what_would_i...</a>
If only there was a tutorial like this, but for the Cortex-M series — specifically, M0+ and M4.<p>I recently had to dig through tons of documentation just to get started and ARM is really bad at providing overview documentation. As an example: I quickly discovered that the Cortex-M doesn't really have 16 registers. You only get 8 general-purpose registers and 5 kinda-registery-quick-storage-locations, which only certain instructions can access. To this day I couldn't find a clear list of instructions that can access these high registers.
It's about time.<p>I was keen to learn ARM a year or two back and I was absolutely horrified at how dismal the documentation ARM provided was. I had problems even finding an assembler; and what I could find was pay-gated (with a price bracket too high as a personal improvement project). It's crazy that these platforms are toted as the future and yet the entry-level developer experience is by far the worst I have ever come across. Are they selling chips or are they selling manuals? /rant<p>Hopefully ntdebug continues the series.
Nice to see Microsoft encroaching on this territory .. but I already have a pretty good reference on the subject of ARM assembly:<p><a href="http://www.eng.auburn.edu/~nelson/courses/elec5260_6260/ARM_AssyLang.pdf" rel="nofollow">http://www.eng.auburn.edu/~nelson/courses/elec5260_6260/ARM_...</a>