🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.intel
Article #1484

Re: Clock counts for 8086/88?

#1484
From: David Fox
Date: Thu, 28 Jan 1993 06:48
75 lines
3391 bytes
In article <PHR.93Jan27005427@napa.telebit.com> phr@telebit.com (Paul Rubin) writes:
>I notice that the Intel datasheet for the 8086/88 (Microprocessors
>vol. 2) doesn't give the clock counts for the different instructions,
>unlike the sheets for the 286/386/486.  Is there another reference for
>this info?  In particular I want to know how many clocks it takes to
>do a 16-bit integer multiply, and also a 32->16,16 divide.  Also, does
>anyone know if the NEC V20 does these operations faster than an 8088?
>(Yes, some people still write programs for these processors).  Thanks.

You could call Intel and see if they still provide data sheets and/or
programmer's manuals for the 8088/8086.  They may not, since the chip
is so old :) but you may never know.  If they still provide these
documents, they're free, and can be ordered by writing:

Intel Literature Sales
P.O. Box 7641
Mt. Prospect, IL 60056-7641

Phone number is 800-548-4725.

Another reference I have handy gives the information you want.  This is from
_Assembly Language Programming for the IBM PC, by Karen A. Lemone, published
in 1985 by Little Brown and Co., ISBN 0-316-52069-1.

As you probably know, there are two types of multiply on the 8088/8086, IMUL,
and MUL, and two kinds of division, DIV and IDIV, for signed and unsigned
multiply/divide respectively.

For IMUL:

reg16 operand:    128-154
mem16 operand:     98-104 + EA clocks (additional clocks require to do
                                       effective address calculations)

For MUL:

reg16 operand:   118-133
mem16 operand:   124-139 + EA clocks

For IDIV:

reg16 operand:   165-184
mem16 operand:   171-190 + EA clocks

For DIV:

reg16 operand:   144-162
mem16 operand:   150-168 + EA clocks

The V20 did speed up MUL/DIV, string, and various other operations
(AAM/AAD) on the 8088.  I don't know how much they speeded it up
though, as I don't have that information.  It also added some
real-mode 80186/80286 instructions like push immed, rotate/shift
immediate, etc.

>#include disclaimer.h.
On an 8088?  Naa, that would take too many clocks. :)

BTW, while I'm here, can someone point me to timing and architecture
differences between the Cyrix FasMath chip in comparison with the Intel
387?  I called Intel and got their (nice and complete) data sheet for
the 387, but I have a Cyrix, and when I called Cyrix, they said they don't
publish that information anymore. :(
x


-- 
------------------------------------------------------------------------
in real life: david fox            email: dfox@quack.sac.ca.us
5479 Castle Manor Drive,                  
San Jose, CA 95129                 "Thanks for letting me change some
USA                                 magnetic patterns on your HD" -me
408-253-7992                        
"You've just won an absolutely FREE trip to the Isles of Langerhans" -me
------------------------------------------------------------------------
Technical Details
Message-ID: <fYyJas4@quack.sac.ca.us>
Path: arc1-ca.pugleaf.net!sparky!uunet!indetech!daver!quack!dfox
References: <PHR.93Jan27005427@napa.telebit.com>

Show Full Headers
Complete Article Headers
Newsgroups: comp.sys.intel,comp.arch
Path: arc1-ca.pugleaf.net!sparky!uunet!indetech!daver!quack!dfox
From: dfox@quack.sac.ca.us (David Fox)
Subject: Re: Clock counts for 8086/88?
Message-ID: <fYyJas4@quack.sac.ca.us>
Organization: The Duck Pond public unix: +1 408 249 9630, log in as 'guest'.
References: <PHR.93Jan27005427@napa.telebit.com>
Distribution: usa
Date: 28 Jan 1993 06:48:24 UTC
Lines: 75