8086
Object
Module
Formats
Version
4.!.J
2.4
Seqment-R~lative
Offset
Reference
(data
reference)
With
No
Groupinq
And
Both
LSEG's
Created
In
The
Same
Translation
Diagram
in
(2.1)
can
be
used.
LOCATION: OFFSET
PSEG:
TARGET
(this
is
the
most
common
choice)
TARGET:
SI(8)
,dl
or
SI(8)
where
dl
is
applied
to
the
LOCATION
Note
that
this
fixup
is
exactly
the
same
as
the
Seqment-Relative
Pointer
Reference
shown
in
(2.l)
with
one
exception:
the
LOCATION
requires
no
BASE
fixup.
This
means
one
less
fixup
value
to
calculate
at
LOCATE
time.
A
Segment-Relative
Offset
Reference
with
qroupinq
is
exactly
the
same
as
th~
Seqment-Re1ative
Pointer
Reference
with
qroupinq
shown
in
(2.3)
with
the
same
exception
mentioned
above.
NOTE:
for
eX-1mple
LOCATION
could
also
be
HIBYTE,
if
the
source
code
were.
MOV
AH.HIGH(SYM)
Note
that.
unlike
the
8080
R &
L,
this
fixup
will
take
into
account
the
final
location
of
SYM.
If
SYM
has
the
value
190H
as
an
offset
within
its
LSEG
which
is
to
be
LOCATE'd
at
3680H
relati'le
to
tne
PSEG.
we
have
the
followinq:
8080
~
lit
L:
._----
I-OCA'fION: 1
byte
containinq
HIGH(SYM)
= 1
LOCATE
at
3680H
=>
LOCATION
IH
+
HIGH
(3680H)
=
3~~
37H
~ote
that
this
value
is
not
correct!
8
qaf,
R
5r
L:
------Ljt~TION:
1
byte
containinq
zero
F'ixup
record:
2
bItes
containinq
190H
LeCATE
at
3~80H
=>
Fixup
value:
190H
+
Base
Address
3~~0H
39l~H
38H
is
then
applied
to
the
LOCATIO~
(HIBYT~)
118