Remix.run Logo
imtringued 3 hours ago

Teaching how computer hardware works is pretty smart. There is no need to do it in depth though.

Writing assembly is probably completely irrelevant. You should still know how programming language concepts map to basic operations though. Simple things like strict field offsets, calling conventions, function calls, dynamic linking, etc.

sgarland 2 hours ago | parent [-]

> Writing assembly is probably completely irrelevant.

ffmpeg disagrees.

More broadly, though, it’s a logical step if you want to go from “here’s how PN junctions work” to “let’s run code on a microprocessor.” There was a game up here yesterday about building a GPU, in the same vein of nand2tetris, Turing Complete, etc. I find those quite fun, and if you wanted to do something like Ben Eater’s 8-bit computer, it would probably make sense to continue with assembly before going into C, and then a higher-level language.