🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #21289

Re: 8086 design goals (and Pascal)

#21289
From: Dick Dunn
Date: Tue, 16 May 1989 17:15
35 lines
2392 bytes
In article <362@verdix.verdix.com>, sbq@verdix.com (Sam Quiring) writes:
...
> >In article <912@aber-cs.UUCP> pcg@cs.aber.ac.uk (Piercarlo Grandi) writes:
> >>Well, the problem with the Intel architecture is that it was designed for
> >>Pascal, whose pointers can only point to heap allocated objects ...
...
> The Intel 8086 was definitely *not* designed with Pascal in mind (I did get
> a good belly laugh out of that statement)...

Done laughing?  OK, good, it's our turn to laugh now.  The 8086 architects
most definitely had Pascal in mind when they designed the chip.  The
segment registers reflect this quite directly.  They had wanted more
segment registers to avoid thrashing, but concerns about chip size forced
them to use what they considered the bare minimum of four.  These were
quite closely tied to the notion of a Pascal-ish model of memory: code,
data (global variables), stack (local variables and parameters), and the
extra-segment register, which was nominally for the heap but also the "out"
for cases (such as var parameters) where you didn't know the segment.  BP
also reflects a (perceived) need of a Pascal implementation, and the
addressing modes correspond to what were expected to be common access forms
in Pascal.

In fact, ES did turn out to be a bottleneck with compilers that didn't pay
careful attention to it.  Probably the conceptual failure here was in
underestimating the frequency of use of var parameters and overestimating
the role of the heap.

One of the architects of the 8086 had done a lot of work with Pascal before
he went to intel.  Shortly after the 8086 came out, two of the architects
left intel and started a company to do--guess what?  Pascal compilers and
associated development tools for the 8086!  Trust me; they were thinking
Pascal during the (all too brief) design period.
-- 
Dick Dunn      UUCP: {ncar,nbires}!ico!rcd           (303)449-2870
   ...Relax...don't worry...have a homebrew.
Technical Details
Message-ID: <15766@vail.ICO.ISC.COM>
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cs.utexas.edu!ico!vail!rcd
References: <912@aber-cs.UUCP> <3312@bd.sei.cmu.edu> <362@verdix.verdix.com>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!uunet!cs.utexas.edu!ico!vail!rcd
From: rcd@ico.ISC.COM (Dick Dunn)
Newsgroups: comp.arch
Subject: Re: 8086 design goals (and Pascal)
Summary: Pascal WAS an intended target
Message-ID: <15766@vail.ICO.ISC.COM>
Date: 16 May 89 17:15:58 GMT
References: <912@aber-cs.UUCP> <3312@bd.sei.cmu.edu> <362@verdix.verdix.com>
Organization: Interactive Systems Corp, Boulder, CO
Lines: 35