🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #21957

Re: PUSH on i8088/i80x86

#21957
From: Robert Firth
Date: Fri, 05 Jan 1990 20:02
25 lines
1481 bytes
In article <182DAVISTD@MSU> DAVISTD@MSU.BITNET (Tom Davis) writes:

>In debugging some vendor code (:-) I came across what appears to be a subtle
>difference between the i8088 and i80x86.  Without an i80x86 manual handy, I
>wondered if someone could verify my claim...
>
>On the i8088, a "PUSH SP" decrements SP before pushing it onto the stack.  On
>the i80x86, SP is pushed onto the stack before it is decremented (somehow).

Well, I just checked my manuals for the 8086, 8088, 80286 and 80386.
As best I can determine, all of them agree on this

. PUSH xxx should decrement SP and then push the value of xxx

. PUSH SP is a legal instruction

. There is no difference among the 80xxx processors in the semantics
  of the PUSH instruction

Now, I may have missed it, or there may be a later revision I haven't
got, but hope this helps anyway.

[ Intel: The 8086 Family User's Manual (1979); iAPX 286 Mocroprocessor
  Architecture Overview (1980); 80386 architecture manual [231630] (1985);
  80376 architecture manual [240182] (1988) ]
Technical Details
Message-ID: <5524@bd.sei.cmu.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!rutgers!rochester!pt.cs.cmu.edu!sei!firth
References: <182DAVISTD@MSU>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!cs.utexas.edu!rutgers!rochester!pt.cs.cmu.edu!sei!firth
From: firth@sei.cmu.edu (Robert Firth)
Newsgroups: comp.arch
Subject: Re: PUSH on i8088/i80x86
Message-ID: <5524@bd.sei.cmu.edu>
Date: 5 Jan 90 20:02:12 GMT
References: <182DAVISTD@MSU>
Reply-To: firth@sei.cmu.edu (Robert Firth)
Organization: Software Engineering Institute, Pittsburgh, PA
Lines: 25