Printer Friendly
Dictionary, Encyclopedia and Thesaurus - The Free Dictionary
1,523,234,674 visitors served.
?
Dictionary/
thesaurus
Medical
dictionary
Legal
dictionary
Financial
dictionary
Acronyms
 
Idioms
Encyclopedia
Wikipedia
encyclopedia
?

stack
(redirected from stacked)

   Also found in: Dictionary/thesaurus, Medical, Idioms, Wikipedia, Hutchinson 0.37 sec.

stack

(1) A Macintosh folder view (see Stacks).

(2) A set of hardware registers or a reserved amount of memory used for arithmetic calculations, local variables or to keep track of internal operations (the sequence of routines called in a program). For example, one routine calls another, which calls another and so on. As each routine is completed, the computer returns control to the calling routine all the way back to the first one that started the sequence. Stacks used in this way are LIFO based: the last item, or address, placed (pushed) onto the stack is the first item removed (popped) from the stack.

Stacks are also used to hold interrupts until they can be serviced. Used in this manner, they are FIFO stacks, in which the first item onto the stack is the first one out of the stack. See internal stack failure, stack dump and stack fault.

(3) In a network, a hierarchy of software layers in both clients and servers that are required in order to communicate with each other. See protocol stack.

(4) A hierarchy of software. Starting in the 2000s, the term has become popular to mean any hierarchy of application software. For example, the phrase "they do not offer a complete stack" implies that a software company does not offer the complete set of applications that would be common in that particular industry or niche. See application stack.

(5) An earlier Macintosh development system (see HyperCard).


stack
1. a number of aircraft circling an airport at different altitudes, awaiting their signal to land
2. Brit a measure of coal or wood equal to 108 cubic feet
3. a high column of rock, esp one isolated from the mainland by the erosive action of the sea
4. an area in a computer memory for temporary storage

(programming)stack - (See below for synonyms) A data structure for storing items which are to be accessed in last-in first-out order.

The operations on a stack are to create a new stack, to "push" a new item onto the top of a stack and to "pop" the top item off. Error conditions are raised by attempts to pop an empty stack or to push an item onto a stack which has no room for further items (because of its implementation).

Most processors include support for stacks in their instruction set architectures. Perhaps the most common use of stacks is to store subroutine arguments and return addresses. This is usually supported at the machine code level either directly by "jump to subroutine" and "return from subroutine" instructions or by auto-increment and auto-decrement addressing modes, or both. These allow a contiguous area of memory to be set aside for use as a stack and use either a special-purpose register or a general purpose register, chosen by the user, as a stack pointer.

The use of a stack allows subroutines to be recursive since each call can have its own calling context, represented by a stack frame or activation record. There are many other uses. The programming language Forth uses a data stack in place of variables when possible.

Although a stack may be considered an object by users, implementations of the object and its access details differ. For example, a stack may be either ascending (top of stack is at highest address) or descending. It may also be "full" (the stack pointer points at the top of stack) or "empty" (the stack pointer points just past the top of stack, where the next element would be pushed). The full/empty terminology is used in the Acorn Risc Machine and possibly elsewhere.

In a list-based or functional language, a stack might be implemented as a linked list where a new stack is an empty list, push adds a new element to the head of the list and pop splits the list into its head (the popped element) and tail (the stack in its modified form).

At MIT, pdl used to be a more common synonym for stack, and this may still be true. Knuth ("The Art of Computer Programming", second edition, vol. 1, p. 236) says:

Many people who realised the importance of stacks and queues independently have given other names to these structures: stacks have been called push-down lists, reversion storages, cellars, dumps, nesting stores, piles, last-in first-out ("LIFO") lists, and even yo-yo lists!


?Page tools
Printer friendly
Cite / link
Email
Feedback
? Mentioned in
 
Encyclopedia browser? ? Full browser
 
 
Encyclopedia
?

Disclaimer | Privacy policy | Feedback | Copyright © 2009 Farlex, Inc.
All content on this website, including dictionary, thesaurus, literature, geography, and other reference data is for informational purposes only. This information should not be considered complete, up to date, and is not intended to be used in place of a visit, consultation, or advice of a legal, medical, or any other professional. Terms of Use.