3 ms·
Your idea for a foundation of practical computing sounds a lot like MIT's 6.004 Computation Structures [1], which is available on OpenCourseWare and edX. In 6.
by rspeer 10y ago
Your idea for a foundation of practical computing sounds a lot like MIT's 6.004 Computation Structures [1], which is available on OpenCourseWare and edX.
In 6.004, you start by learning about the digital abstraction and MOSFETs, then go on to logic gates, flip-flops, pipelining, instruction sets, and halfway through the course you use a circuit simulator to build a RISC processor called the Beta. Then you go on to I/O buses, virtual memory, and interrupts, and at the end of the course you can compile C programs for the Beta.
To get from having a processor to having a self-contained programming environment, you could work through a variation on jonesforth [2]. (You'd have to port it from i386 to the Beta if you wanted to keep the same architecture.)
[1] https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-004-computation-structures-spring-2009/ https://ocw.mit.edu/courses/electrical-engineering-and-compu...
[2] https://github.com/AlexandreAbreu/jonesforth/blob/master/jonesforth.S https://github.com/AlexandreAbreu/jonesforth/blob/master/jon...