Re: hex addresses in setup.S

H. Peter Anvin
2002-01-16T20:04:06Z

Followup to: <BJEJJDPJOCEPDBLPFDKJCEACCCAA.ceswiedler@mindspring.com>
By author: "Chris Swiedler" <ceswiedler@mindspring.com>
In newsgroup: linux.dev.kernel
>
> Why does setup.S define the default system load address as 0x1000, and the
> comment on the line explain this to be 0x10000(and gives the decimal
> translation of 65536, so it's not a typo)? This seems to be true for several
> addresss (0x9000 = 0x90000, etc). I'm sure there's something simple I'm
> missing...what is it?
>

In real mode:

linear_address := (segment << 4) + offset

Those addresses are "segment" addresses, with (implied) offset == 0.
These kinds of addresses are sometimes referred to as "paragraph
addresses" (paragraph being bigger than words but smaller than pages,
I guess.)

-hpa
--
<hpa@transmeta.com> at work, <hpa@zytor.com> in private!
"Unix gives you enough rope to shoot yourself in the foot."
http://www.zytor.com/~hpa/puzzle.txt <amsp@zytor.com>