7.1. Memory Stacks

Operating systems establish at least one stack in memory to support standard operations such as input and output. Most instruction sets and programming environments permit a programmer to establish other stacks in memory.

7.1.1. Stack Addressing for CISC Architectures

Many CISC architectures support auto-indexed addressing modes that make possible a very easy and fully general method for “pushing” and “popping” individual items onto and then off a stack. Items on a stack are accessed with a stack pointer (SP), which may be either purpose-built or a general register.

Two conventions exist for organizing a stack. In one, autoincrementing of the stack pointer is associated with pushing, and autodecrementing with popping. With ...

Get Itanium® Architecture for Programmers: Understanding 64-Bit Processors and EPIC Principles now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.