How to Create Jump Tables via Function Pointer Arrays in C and C++

Jump tables, also called branch tables, are an efficient means of handling similar events in software. Here's a look at the use of arrays of function pointers in C/C++ as jump tables.

How to Choose an C Compiler for Embedded Systems

 Printable PDF

Let's face it, there's nothing sexy about the topic of cross compilers. Embedded programmers couldn't get the job done without one, but spend very little time thinking about how they work or how they could make our work easier.

Efficient C Code for 8-bit Microcontrollers

The 8051, 68HC11, and Microchip PIC are popular microcontrollers, but they aren't necessarily easy to program. This article shows how the use of ANSI C and compiler-specific constructs can help generate tighter code.

How Reconfigurable Computing Works

 Printable PDF

Designers of embedded systems face three significant challenges in today's ultra-competitive marketplace. Products must always: do more, cost less, and arrive to market faster. Fortunately, new flexible hardware design techniques are emerging from the study of reconfigurable computing.

Java Compilers for Embedded Systems

Java compilers (also known as ahead-of-time or AOT compilers) may be the breakthrough needed to propagate widespread use of Java throughout the embedded industry.

How to Design Safer Systems via Better User Interfaces

 Printable PDF

The information that a user gets from a life-critical system may spell the difference between a slight mishap and a serious accident. This article addresses the issue of safety in the design of a user interface.

Kaffe: A Compact Open Source Java Virtual Machine

Quite a few embedded programmers are considering adopting the Java programming language. But it's not as easy to run Java programs in an embedded environment as you might think.

How to Use Java in Embedded Systems

Should you consider using Java as an embedded programming language? This article describes when and where Java works for embedded development.

Pages