N. A tiny single-board computer manufactured by Parallax based on an 8051, PIC, or other microcontroller. The BASIC Stamp is about the size of a postage stamp (hence the name) and executes a variant of BASIC called PBASIC. Inexpensive, self-contained, and easy to program, they're used in education and simple embedded systems that require little horsepower but rapid delivery.

Basic Stamp Microcontrollers

A BASIC Stamp collection


adj. Describes a type of device or bus that supports two-way data transfers. To reduce wiring, connectors, and pin counts, it's common to share data on one bus. Data can move from device A to B or from B to A, though not at the same time.

EXAMPLE: A bidirectional data bus is present on pretty much every microprocessor. A single bus transfers data to and from memory and I/O. Control signals police the transfers, ensuring that there are no attempts to transfer data in both directions at the same time.

Contrast with unidirectional.


adj. A data representation for a multibyte value that has the most significant byte stored at the lowest memory address. Note that only the bytes are reordered, never the nibbles or bits that comprise them. Every processor stores its data in either big-endian or little-endian format. Sun's SPARC, Motorola's 68k, and the PowerPC families are all big-endian. The Java virtual machine is big-endian as well. Similarly, every communications protocol must define the byte order of its multibyte values. TCP/IP uses big-endian representation. [more]

EXAMPLE: If the 32-bit value 0x12345678 is located at address 1000d in memory, its most significant byte, 0x12, would be found at location 1000d. Location 1001d would contain the next most significant byte, 0x34; location 1002d would contain 0x56; and location 1003d would contain the least significant byte, 0x78.

binary semaphore

n. A type of semaphore with just two states. Often used to guarantee mutual exclusion.

Compare to mutex.

board support package

n. Part of a software package that is processor or platform dependent. Abbreviated BSP. Typically, sample source code for the BSP is provided by the package developer. To port the larger package, only the code in the board support package must be modified. Most commercial real-time operating systems have a BSP to make porting easy.

bond-out processor

n. A special version of a processor that has some of the internal signals brought out to external pins. Bond-out processors are designed to be used within an in-circuit emulator and are not typically used in any other kind of system.


n. A location in a program at which execution is to be stopped and control of the processor switched to the debugger. Mechanisms for creating and removing breakpoints are provided by most debugging tools.

See also tracepoint, hardware breakpoint.


(as letters) abbr. See board support package.


N. A Japanese company that, in 1971, used Intel's new single-chip 4004 processor to create what were arguably the world's first embedded systems: a family of 12 business calculators.

HISTORY: Prior to the 4004 microprocessor, which then memory maker Intel had just conceived, software was only used in stand-alone and mainframe computers. Devices like Busicom's previous business calculators were designed entirely with custom hardware. For its new line of 12 calculators, which differed only in feature sets, though, Intel engineer Ted Hoff proposed that using the same hardware in each device, coupled with device-specific software (stored in an Intel memory chip, of course) would reduce development costs. The calculators were a bust, but the 4004 a big hit. Processors soon found their way into traffic signal controllers, telecom network components, ICBMs, and, eventually, virtually every electronic device.

busy wait

v. To waste precious CPU cycles polling.