> From: Mouse >> simulating a segmented machine on a non-segmented machine, i.e. one >> with large unidirectional addresses (segmented being a >> bi-directionally addressed machine) - [...]
> Hm, "unidirectional" and "bidirectional" are terms I'm having trouble > figuring out the meaning of here. You seem to be using them as, > effectively, synonyms for "non-segmented" and "segmented" Yes. > but I don't see any way in which directionality makes any sense for > either, so I can only infer I'm missing something. Imagine a graphic model of the memory in non-segmented, and segmented, machines. The former can be modeled as a linear array of memory cells - hence 'uni-directional'. The latter can be modelled by a two-dimensional array - segment number along one axis, word/byte within segment on the other - hence 'bi-directional'. Maybe 'uni-axis' or 'bi-axis' would have been a bit more techically correct, but 'uni-directional' and 'bi-directional' were the first terms that came to mind - and I didn't think of how they could be confusing (in terms of their common meanings, when used for flows). Sorry! Noel PS: I'm trying to remember all my thoughts about simulating a segmented memory with a large flat address space. One was that one can prevent pointer incrementing from 'walking' from one segment into another by leaving a 'guard band' of a few empty pages between each 'segment'. However, this points out an issue with such simulation: one cannot easily grow a 'segment' once another 'segment' has been assigned space above it.