2 ms·
> Well, I had in mind something more useful and realistic, not less; namely teaching assembly in normal Linux environment. This might sound odd, but as someone
by msla 8y ago
> Well, I had in mind something more useful and realistic, not less; namely teaching assembly in normal Linux environment.
This might sound odd, but as someone who's done some assembly programming under Linux, it usually isn't different enough from C to be worth the effort. Even if you eschew libc, the kernel APIs are still fairly high-level and, more to the point, there are no new concepts relative to C: You have pointers and pointer arithmetic, you have fixed-size buffers, you have ints and doubles, and the rest is just syntax.
The exception is doing something like a really tight high-performance kernel using SIMD opcodes, which necessarily involves learning a lot about the specific SIMD hardware and data organization to optimize cache use and other details C can't express.