A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Memory Address Decoding

College Depth 93 in the knowledge graph ☐ I know this ☆ Set as goal
47topics build on this
353prerequisites beneath it
See this on the map →
Memory Organization and AddressingMultiplexers and Demultiplexers→→Memory Access Timing and PerformanceMemory Bus Architecture and Interconnect
address-decoding memory-circuits

Core Idea

Address decoding selects the correct memory location from an n-bit address using decoders. 2D decoding (row/column) reduces complexity; partial and hierarchical decoding further optimize large memories.

Explainer

You already know how decoders work: an n-input decoder activates exactly one of 2n output lines based on the binary input. You also know that memory is organized as an array of storage locations, each holding a fixed number of bits. Address decoding is the bridge between these two concepts — it is the mechanism that translates a binary address from the CPU into the activation of one specific memory cell (or row of cells) within a memory chip.

Consider a simple example: a memory chip with 1,024 locations needs a 10-bit address. A straightforward approach would use a single 10-to-1024 decoder, but that decoder would have 1,024 output lines — an impractical number of wires and gates. Two-dimensional (2D) decoding solves this by splitting the address into two halves. The upper 5 bits select one of 32 rows, and the lower 5 bits select one of 32 columns. Now you need only a 5-to-32 row decoder and a 5-to-32 column decoder — 64 output lines total instead of 1,024. The selected memory cell sits at the intersection of the activated row and column, just like finding a seat in a theater by row letter and seat number.

Real systems take this further with hierarchical decoding. A computer with 4 GB of RAM doesn't have a single monolithic chip — it has many smaller memory chips organized into banks and modules. The highest-order address bits select which chip or bank is active (using a chip-select signal driven by a decoder), while the remaining bits perform the row/column decoding within that chip. Partial decoding is a simpler but less precise technique where not all address bits are decoded — some bits are ignored, causing the same physical memory to appear at multiple addresses (called aliasing). This was common in early microcomputers where simplicity mattered more than full address space utilization, but modern systems use full decoding to avoid wasting address space.

Practice Questions 5 questions

Prerequisite Chain

Understanding Zero → The Number Zero → Counting to Five → Counting to 10 → Counting to 20 → Counting a Set of Objects Up to 20 → Cardinality: The Last Number Counted → Matching Numerals to Quantities → Subitizing Small Quantities → Addition Within 10 → Number Bonds to 10 → Addition Within 20 → Doubles and Near Doubles → Doubles Facts Within 10 → Near Doubles Facts Within 20 → Mental Math Strategies for Addition → Mental Math: Adding and Subtracting Tens → Addition Within 100 → Repeated Addition as Multiplication → Multiplication as Equal Groups → Multiplication: Arrays → Basic Multiplication Facts (0s, 1s, 2s, 5s, 10s) → Multiplication Facts Within 100 → Division as Equal Sharing → Division as Grouping (Measurement Division) → Division: Grouping (Repeated Subtraction) Model → Division: Fair Sharing Model → Division as Equal Sharing → Division as Grouping → Basic Division Facts → Division Facts Within 100 → Multiplication and Division Fact Families → Relationship Between Multiplication and Division → Division Facts as Inverse of Multiplication → Remainders and Quotients in Division → Division Word Problems → Multi-Step Word Problems → Solving Multi-Step Word Problems → Multiplication Word Problems → Division Word Problems → Introduction to Long Division → Factors and Multiples → Prime and Composite Numbers → Equivalent Fractions → Relating Fractions and Decimals → Decimal Place Value → Integers and the Number Line → Comparing and Ordering Integers → Absolute Value → Adding Integers → Subtracting Integers → Multiplying Integers → Introduction to Exponents → Order of Operations → Integer Order of Operations → Variable Expressions → The Distributive Property → Variables and Expressions Review → Introduction to Polynomials → Adding and Subtracting Polynomials → Multiplying Polynomials → Factorial → Permutations → Combinations → Counting Principles: Addition and Multiplication Rules → Introduction to Graph Theory → Propositional Logic Foundations → Logical Equivalences → Boolean Algebra → Boolean Type and Truth Values → Comparison Operators and Boolean Tests → Logical Operators and Boolean Algebra → Boolean Algebra and Fundamental Laws → Logic Gates Fundamentals → Implementing Boolean Functions with Gates → Karnaugh Map Simplification → Combinational Circuit Design → Flip-Flops and Latches → Binary Counters: Design and Analysis → Binary Arithmetic → Fixed-Point Number Representation → Two's Complement Representation → Overflow and Underflow Detection → Binary Adders: Half-Adders and Full-Adders → Full Adder and Carry Propagation → Carry Lookahead Adder Design → Half Adder Circuit Design → Multiplication Circuit Design → Sequential Circuit Design → Registers and Register Files → Instruction Set Architecture (ISA) → Assembly Language Basics → Memory Organization and Addressing → Memory Address Decoding

Longest path: 94 steps · 353 total prerequisite topics

Prerequisites (2)

Leads To (2)