Article View: comp.sys.atari.st
Article #38237Re: Is this right?
From: Chuck McManis
Date: Tue, 25 Apr 1989 19:45
Date: Tue, 25 Apr 1989 19:45
59 lines
3723 bytes
3723 bytes
In article <8904241544.AA21773@ucbvax.Berkeley.EDU> (Greg Csullog) writes:
>Someone please correct me if I am wrong, but my understanding of the 8088,
>80286 and 80386 family is that the junior member (the 8088) requires memory
>segmentation to work (i.e. 10 banks of 64K).
Not exactly. the x86 architecture uses a combination of segment registers
and 16 bit offsets to allow programs access to about 256K of ram (anywhere as
long it is on a 16 byte [aka a paragraph] boundary). The segment registers
can be reloaded to change the 64K area that is available. The segment register
contains a 16 bit value that is shifted left by four bits and then added to
the "offset" value (immediate, in a register, whatever) so if your segment
register contained $C018 you could use it to access $C0180 - $D017F.
There are four segment registers in the base architecture CS (code),
SS (stack), DS (data), ES (extra often used for globals). Is that more clear?
> Even if you have an 80286 or
>an 80386, most codes out there are compiled to run on the 8088 and still
>use the memory segmentation protocols.
True, but the same "segmentation protocols" are available on all members of
the family. The 286 and 386 offer additional models that extend the address
space to 16M and 4G respectively.
> Therefore, even if you have an 80286 or an 80386, with these segmented
> codes, you cannot use the true power of the processors - all you can take
> advantage of is the faster clock times. Is this right?
For the most part. Most PC's out there are running like fast 8086 processors.
Some programs like DesqView use the other modes to simulate several fast
8086 processors.
> I also understand that Windows 286 and 386 DO take advantage of the newer
> processors. Is this right?
Yes, Windows does use the 16 bit and 32 bit modes of the processors. This
results in a greater speed up than simply emulating a fast 8086.
> Seems to me, if you use segmented codes on a 80286 machine, you're
> bound to have a lower performance standard than a Mac or an ST with
> a 68000 and their codes which are not segmented. Is this right?
Yes and no, it is possible to write programs for both architectures that
outperform one or the other. The x86 machines do well with string
instructions (and hence the dhrystone benchmark) and the 68xxx processors
do better when working with large data arrays. At Sun we have a machine
based on the 386 called the 386i and several machines based on the 68xxx
architecture. Generally, they are about the same speed for the same clock
rate. In the PC marketplace, a 68000 will always be faster than an 8088
and about the same speed as a compably equipped '286. When you start
using MMU's the x86 architecture saves a clock cycle with it's builtin
MMU so you have to compare them to the 68030 rather than the '020. If
I were writing a code generator for a compiler I'd rather have a 68xxx
or SPARC architecture to write to, but from the users perspective they
shouldn't notice a difference.
--Chuck McManis
uucp: {anywhere}!sun!cmcmanis BIX: cmcmanis ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.
"A most excellent barbarian ... Genghis Kahn!"
Technical Details
Message-ID:
<101091@sun.Eng.Sun.COM>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!oliveb!sun!pepper!cmcmanisReferences:
<8904241544.AA21773@ucbvax.Berkeley.EDU>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!ames!oliveb!sun!pepper!cmcmanis From: cmcmanis%pepper@Sun.COM (Chuck McManis) Newsgroups: comp.sys.atari.st Subject: Re: Is this right? Message-ID: <101091@sun.Eng.Sun.COM> Date: 25 Apr 89 19:45:17 GMT References: <8904241544.AA21773@ucbvax.Berkeley.EDU> Sender: news@sun.Eng.Sun.COM Reply-To: cmcmanis@sun.UUCP (Chuck McManis) Organization: Sun Microsystems, Mountain View Lines: 59