Difficulty: Easy
Correct Answer: Applies (two 8-bit locations store a 16-bit address)
Explanation:
Introduction / Context:The Intel 8085 has a 16-bit address space (0000H–FFFFH). Memory is byte addressed, and every memory location stores exactly 8 bits. This question clarifies how a 16-bit address value itself is stored in memory.
Given Data / Assumptions:
Concept / Approach:A 16-bit quantity occupies two bytes. Therefore, to store an address value (e.g., the contents of the program counter or a pointer), two consecutive memory locations are used—each holding 8 bits. Any wording that says “two memory locations (16 bits each)” is incorrect because standard memory locations are 8 bits on 8085-class systems.
Step-by-Step Solution:
1) Recognize: one memory location = 8 bits (1 byte). 2) A 16-bit address therefore needs 2 bytes. 3) Store low-order byte in the lower address and high-order byte in the higher address (or per ISA convention). 4) Reading back two bytes reconstructs the 16-bit address.Verification / Alternative check:Instruction encodings for CALL/JMP and stack PUSH/POP on 8085 show low-byte/high-byte storage across two consecutive bytes.
Why Other Options Are Wrong:“Two 16-bit locations” do not exist on byte-addressable 8085 memory. “Three bytes due to parity” is irrelevant. “Only the stack” is false; any memory can store addresses.
Common Pitfalls:Confusing word-sized storage with location size; overlooking endianness when reading/writing multi-byte quantities.
Final Answer:Applies (two 8-bit locations store a 16-bit address)
Discussion & Comments