I'm not aware of any branch instructions with a 20-bit offset. For LAY the offset is signed, giving +/- 512 Mi bytes.
I haven't checked, but I believe that all of the relative instructions use signed offsets. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 עַם יִשְׂרָאֵל חַי ________________________________________ From: IBM Mainframe Assembler List <ASSEMBLER-LIST@LISTSERV.UGA.EDU> on behalf of Steve Smith <sasd...@gmail.com> Sent: Friday, November 10, 2023 12:22 AM To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Subject: Re: Based vs. Relative (was: Internal Exit Routine Handling) You forgot the 4th, 20-bit based signed displacement (Y & G-suffixed instructions). Just to have a chance at misremembering, I think that's about +/- half a MB. sas On Thu, Nov 9, 2023 at 1:33 PM Seymour J Metz <sme...@gmu.edu> wrote: > There are only three sizes: > > legacy, 12 bits, unsigned, 4 Ki byts > relative, 16 bits, signed, +/- 32 Ki HW = +/- 64 Ki bytes > relative long, 32 bits, signed, +/- 2 Gi HW = +/- 4 Gi bytes > > -- > Shmuel (Seymour J.) Metz > http://mason.gmu.edu/~smetz3 > עַם יִשְׂרָאֵל חַי > >