January 1993 - POWER PROGRAMMING IN 32-BITS


FEATURES

EXTENDING WINDOWS TO 32 BITS by Steven Baker

Steven discusses the ins and outs of 32-bit Windows development, focusing on 32-bit C compilers and Windows extenders. But he points out that for some applications, moving to 32-bit Windows makes sense only if the potential of 32-bit CPUs can be exploited.

PORTING FROM 16-BIT TO 32-BIT EXTENDED DOS by Joe Huffman

Among the more subtle pitfalls of converting 16-bit applications to 32-bit are those involving memory protection, integer size, and structure size and padding. Joe shows you how to avoid these problems - and what to do when you can't.

64-BIT PROGRAMMING IN A 32-BIT WORLD by Andy Nicholson

Andy presents proven guidelines for writing C code that's portable across 16-, 32-, or 64-bit processors. The rules include handling high-level and low-level structures, structure packing and word alignment, and machine addressing characteristics.

LUC PUBLIC-KEY ENCRYPTION by Peter Smith

LUC public-key encryption may be the first cryptographic scheme to seriously challenge RSA's 15 years of dominance. Unlike RSA, LUC uses calculation of Lucas functions instead of exponentiation for encoding and decoding.

DDJ HANDPRINTING RECOGNITION CONTEST WRAP-UP by Ray Valdes

Who's the fastest? How about the most accurate? And how did they do it? Ray presents the results of the first-ever handprinting-recognition contest.

EMBEDDED SYSTEMS

WINDOWS DDE FOR REAL-TIME APPLICATIONS by Kamal Shah

Window's dynamic data exchange provides a powerful mechanism for communication among applications. Kamal examines how real-time DDE-aware applications can communicate with Windows applications using iRMX for Windows DDE extensions.

NETWORKED SYSTEMS

SIMULATING HYPERCUBES IN UNIX, PART II by Jeffery W. Hamilton and Eileen M. Ormsby

In the second installment of this two-part article, our authors present the source code for a simulated hypercube system that runs under standard UNIX and describe how you can use the system.

EXAMINING ROOM

PORTING TO THE WIN32 API by Peter Handsman

Peter discusses his experiences in porting nearly 35,000 lines of C++ code from the Windows NT 32-bit API.

PROGRAMMER'S WORKBENCH

PROFILING FOR PERFORMANCE by Joseph M. Newcomer

Profiling tools were developed to help identify those parts of a program which are consuming significant computing resources so that you can optimize program performance. Still, its necessary to understand what's being measured, how accurately it's being measured, and the reliability of the resulting numbers.

COLUMNS

PROGRAMMING PARADIGMS by Michael Swaine

Mathematician Steven Wolfram, developer of Mathematica, takes time out to talk with Michael in this two-part column. This month they discuss the nature of programming languages and why they're so slow to change.

C PROGRAMMING by Al Stevens

D-Flat++ development continues, as Al takes a look at the DF++ portability layer that normalizes the code for different compilers and the definition of the base DFWindow class.

STRUCTURED PROGRAMMING by Jeff Duntemann

Jeff dives into the recently released Borland Pascal with Object 7.0, the latest incarnation of the venerable Turbo Pascal. This new version can be Windows or DOS hosted and targeted, and includes a royalty-free DOS extender.

GRAPHICS PROGRAMMING by Michael Abrash

Dirty rectangles can help you clean up the visual quality of graphics animation. With this technique, a copy of display memory is kept in offscreen memory where drawing takes place. Drawings are then copied to the screen in a burst.

PROGRAMMER'S BOOKSHELF by Al Stevens

Pamela McCorduck's Aaron's Code tells the story of Harold Cohen, his Aaron software, and the quest for realistic computer-generated art.

FORUM

EDITORIAL by Jonathan Erickson

LETTERS by you

SWAINE'S FLAMES by Michael Swaine

PROGRAMMER'S SERVICES

OF INTEREST by Tami Zemel


Copyright © 1993, Dr. Dobb's Journal