I must really be getting old, because I actually remember the origin of the
convention.
The convention of "*-*" in a length field was based upon an interpretation
of the expression "{address-of-last-byte}-{address-of-first-byte}" which
calculates the "machine length" of the field, which is one less than the
actual length of the field.
When moving a variable length field, the instruction had to be "EX(ecuted)",
so the programmer likely did not know the value of "{address-of-last-byte}"
at assembly time and in many cases did not know the value of
"{address-of-first-byte}" at assembly time, so the programmer simply
replaced each unknown with "*" and voila, we had "*-*".
We discussed this in assembler programming class some 47 years ago.
John P. Baker
Software Developer
-----Original Message-----
From: IBM Mainframe Assembler List <[email protected]> On
Behalf Of [email protected]
Sent: Thursday, April 30, 2020 4:46 AM
To: [email protected]
Subject: Re: *-*
On 2020-04-30 18:15, Martin Ward wrote:
> On 30/04/2020 03:48, [email protected] wrote:
>>
>> What's wrong with a comment?
>
> It *is* a comment (in the broader sense).
No it isn't. *-* doesn't explain anything.
If it did, people wouldn't be asking what on earth is it.
A comment that explains that the length is planted by some other instruction
or whatever else is it, is the only way to document it.