May 22nd, 2014, 4:49 pm
QuoteOriginally posted by: rmaxQuoteOriginally posted by: Traden4AlphaInteresting and impressive! It might be if I can get to finish it ! (I have my little Fun with Mr Bensford project also on the boil).If you analyze financial documents, I'd bet that 1's are even more prevalent in revenue and profit figures than expected as companies with 999 million in sales try to push to 1,000 million (second digit zeros would also be more common). In cost and loss data, the 9's would be slightly overrepresented.QuoteOriginally posted by: rmaxQuoteSo you seem to be designing for teaching low-level computation as implemented in current processors instead of teaching the concepts of algorithms as an abstract machine.Yes. Really because sometimes abstraction can be helpful, however sometimes it can be so abstract that it does not help. Again this is the reason I went against OISC, and stack based machines etc. The temptation is go down an abstract route, but I am not sure it teaches as much as something that is more realistic.Indeed. Yet perhaps we have two different definitions of abstraction. If the goal is to teach the minimum language features of computing (vs. the basics of processor design) then it becomes an issue of representing a series of steps of an algorithm including some simple categories of control statement (IF/THEN, loop). Things such as binary, octal, registers, and op codes are irrelevant implementation details. An abstraction of a computer might be some analogical physical system such as a train track in which each type of track segment "does something" to the cars of the train.QuoteOriginally posted by: rmaxQuoteI assume you have or plan to have some kind of visual representation of the program, program counter, register values, and animated state transitions (e.g., showing registers A and B feeding the ALU and the result going to register C)?This is the tricky bit. I have gone against going down to the ALU level. It was very very tempting, but feel I have bitten off more than I can chew already. I have stubbed out interfaces for attaching monitors. I.e. it should be possible to access the VM and see each register, the contents of memory locations etc. This is the plan at least....I would think that a visual representation of the processor would really help students/children see what was happening. For better or worse, very few young people have ever seen a command line and the trend toward touch screens is taking computing ever farther from CLI. I suppose it depends on the prerequisite skills of the students.