What follows is taken from discussion of the MVCL instruction in the current Principles of Operation:

|
| As part of the execution of the instruction, the values
| of the two length fields are compared for the setting
| of the condition code, and a check is made for
| destructive overlap of the operands. Operands are
| said to overlap destructively when the first-operand
| ocation is used as a source after data has been
| moved into it, assuming the inspection for overlap is
| performed by the use of logical operand addresses.
| When the operands overlap destructively, no movement
| takes place, and condition code 3 is set.
|

Of chief interest here is the fact that execution of an MVCL is suppressed when destructive overlap would have occurred if it had been executed.

It is possible to build machines that behave very differently. Many System/360 and System/370 clones were, for example, built not to suppress but to truncate such operations not just ast overlap but at storage-protection boundaries.

Or again, z/Architecture machines and their predecessors can optionally detect FIXEDOVERFLOW. They do not do so in C because C was developed for a machine that could not do so. (As often, an ineluctable limitation was converted into a virtue.)

Literally hundreds of similar points could be made.

Architectures are extraordinarily difficult to compare unless one knows rather more about them than most of the contributors to this thread appear not just to know but even to know that they do not know.


John Gilmore
Ashland, MA 01721-1817
USA

_________________________________________________________________
Don’t just search. Find. Check out the new MSN Search! http://search.msn.click-url.com/go/onm00200636ave/direct/01/

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to