June 1993 - ASM AND ARCHITECTURES


FEATURES

COMPUTER SCIENCE AND THE MICROPROCESSOR by Nick Tredennick

You bet it's a hardware problem, but the decisions chip designers make impact the software tools you use, programming techniques you employ, and applications you write. From the 8008 to the Pentium, Nick examines trends in the microprocessor arena.

PROGRAMMING THE PENTIUM PROCESSOR by Ramesh Subramaniam and Kiran Kundargi

Intel's recent entry into the 32-bit microprocessor race ups the performance ante. Our authors describe the Pentium's superscalar, pipelined architecture, focusing on floating-point code. John Dahms shares some of his experiences in writing a Pentium-aware compiler.

PROCESSOR DETECTION SCHEMES by Richard Leinecker

Knowing the processor--286, 386, or 486--means your program can include processor-specific code to improve application performance. Bob Moote adds Pentium-detection code, while Steve Heller discusses 80486 cache detection.

32-BIT FLOATING-POINT MATH by Al Williams

This approach to floating-point math uses 32-bit instructions. Although Al uses the 80386 as an example, these techniques can be applied to other 32-bit processors as well.

BONUS SECTION: SCIENTIFIC & ENGINEERING COMPUTING

DISTRIBUTED COMPUTING NOW: APPLICATION ENVIRONMENTS by Lowell S. Schneider and Stephen S. Murray

Our authors focus on the Astrophysics Data System and other applications that make the most of the distributed-computing paradigm.

OBJECT-ORIENTED FINITE-ELEMENT SOFTWARE by Al Vermeulen

Object-oriented languages promise that you can code at higher levels of abstraction than with traditional languages. Al examines spline-based, finite element models coded in C++, concentrating on bicycle-wheel load-deflection.

EXTENDING A VISUAL LANGUAGE FOR SIMULATION by Peter D. Varhol

Peter uses Turbo Pascal for Windows to extend VisSim, an off-the-shelf simulation package that provides a visual design environment for Microsoft Windows and UNIX/X.

NEURAL NETWORKS AND CHARACTER RECOGNITION by Ken Karnofsky

Ken tackles optical character recognition using Matlab's Neural Network Toolbox. Matlab integrates matrix computation, numerical analysis, and data analysis--and without traditional programming.

A GUI ENVIRONMENT FOR FORTRAN DEVELOPMENT by Vinod Anantharaman

VShell is an icon-based visual tool that aids Fortran development by simplifying the process of creating Fortran DLLs accessible from Visual Basic via drag-and-drop.

EMBEDDED SYSTEMS

DETECTING OUT-OF-RANGE REFERENCES by Chan Y. Lee

You've committed an out-of-range reference violation if you've attempted to access a memory location outside the permitted memory range. Chan discusses the implications of this for embedded systems designers, using AMD's 29200 RISC processor as an example.

NETWORKED SYSTEMS

HIPPI AND HIGH-PERFORMANCE LANS by Andy Nicholson

The high-performnace parallel interface (HIPPI) defines a standard for 100Mbyte/sec and 200-Mbyte/sec point-to-point links using 32- or 64-bit wide copper cabling. Andy examines HIPPI-based LANs and makes the case for peer-to-peer over client/server.

EXAMINING ROOM

EXAMINING MFC 2.0 by Michael Yam

Micrsoft claims that any application written under version 1.0 of the Microsoft Foundation Class Library (MFC) will run unmodified under MFC 2.0. He shows how he ported PT, a Windows-based periodic table originally written using MFC 1.0, to MFC 2.0.

PROGRAMMER'S WORKBENCH

A CROSS-PLATFORM PLUG-IN TOOLKIT by Ramin Firoozye

XPIN, the cross-platform plug-in toolkit Ramin presents here, helps you create portable applications that (currently) run on Windows and the Macintosh. Ramin's toolkit consists of a caller API and a plug-in skeleton.

COLUMNS

PROGRAMMING PARADIGMS by Michael Swaine

Rome wasn't built in three days--and neither BBS Michael set out to wire together using off-the-shelf objects.

C PROGRAMMING by Al Stevens

Al presents JOYKEY, a joystick-driven keyboard simulator designed to provide handicapped computer users with a simple means of interacting with PC's.

ALGORITHM ALLEY by Tom Swan

Permutation algorithms are useful for arranging a sequence in all possible ways. Tom examines how they're implemented by Niklaus Wirth and Robert Sedgewick.

UNDOCUMENTED CORNER edited by Andrew Schulman

Ron Burk uncovers undocumented features of Windows' WinHelp facility, giving you yet another powerful tool for Windows development.

PROGRAMMER'S BOOKSHELF by Jonathan Erickson

Fuzzy systems may or may not be logical. This month we examine fuzzy logic books, conference proceedings, and journals.

FORUM

EDITORIAL by Jonathan Erickson

LETTERS by you

SWAINE'S FLAMES by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST


Copyright © 1993, Dr. Dobb's Journal