Well, there's no doubt a more witty response to this unpleasant bit of JG calumny, but I'm getting too old to bother that much, and anyway, why waste it? Just read POP where it states under Operand-Address Generation "The base address (B) is a 64-bit number contained in a general register specified by the program in a four bit field, called the B field, in the instruction...The displacement (D) is a 12-bit or 20-bit number contained in a field, called the D field, in the instruction". Also in HLASM describing DSECTs it states "Provide [a] USING statement that specifies...a general register that the assembler can use as a base register for the dummy section..."
So that's a base register (or two) in an instruction such as MVC, whether JG agrees or not. Which is also the common usage I've encountered programming (z/)OS assembler since around 1966, and still do. And which is what Steve Hobson apparently said as well, funnily enough. That a DSECT maps storage no one will dispute, but no one outside of forums like this actually says "I've mapped the storage with this DSECT" since we all know what a DSECT does. -----Ursprüngliche Nachricht----- Von: IBM Mainframe Assembler List [mailto:[email protected]] Im Auftrag von John Gilmore Gesendet: Montag, 26. Mai 2014 14:16 An: [email protected] Betreff: Re: MVCL It is now clear that we are dealing here with neither confusion nor disagreement alone but with an unholy admixture of both. It cannot be remedied by fiat. David Stokes writes of addressing a field in a DSECT using a base register, 'basing' a DSECT. I do not. I talk and write about 'mapping' storage using a DSECT as a template. In any case a register is [usually] required, and David is free to call it a base register if he wishes. Steve Hobson's second-time-around distinction: <begin extract> Both MVC and MVCL use registers to locate their operands. I am aware that S-type operands (as in MVC) comprise a base register and a displacement whereas R-type operands that contain an address (as in MVCL) are not actually called "base registers". </end extract> is the one I was trying to preserve. [I should have written "whereas the registers that contain R-type operands" instead, but I am a notorious use-and-mention pedant.] -- John Gilmore, Ashland, MA 01721 - USA
