I'm pretty sure that given the context, the question is about AMODE 64 on
z/Architecture.

To the original question: the sign is never "ignored".  But there is no
sign on base or index addresses.  They are treated as unsigned numbers with
the length of addresses of the current AMODE.  When added up, along with
displacement, any overflow is ignored, effectively making the result
modulo-2**AMODE (I'm pretty sure that B. Dissen meant modulo 2**64).

So, what you call -1 is actually 18,446,744,073,709,551,615, but because of
overflow/wrap-around, it works like -1.

For instructions with signed displacements, the displacement is
sign-extended as needed; otherwise it's the same.

sas


On Sat, Oct 23, 2021 at 4:45 PM Mike Schwab <[email protected]> wrote:

> On Sat, Oct 23, 2021 at 7:41 PM Paul Gilmartin
> <[email protected]> wrote:
> >
> > On Sat, 23 Oct 2021 11:33:33 -0500, Joe Monk wrote:
> > >
> > >I know this will probably be an easy answer for somebody... but I dont
> deal
> > >with AM64 much.
> > >
>

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to