🎓 BookMCQ
← Back to An Introduction To Microprocessor 8085

📖 12. Direct Memory Access Controller: 8257

📖 From An Introduction To Microprocessor 8085 • 122 questions available

About 12. Direct Memory Access Controller: 8257

Normally, for the CPU to move data from an external device (like a hard drive) into memory, it has to do it step-by-step, reading a byte and then writing a byte. This is slow and uses up the CPU's valuable time. The 8257 is a special chip that enables Direct Memory Access (DMA). It acts like a "data transport truck" that can move large blocks of data directly between an I/O device and memory, completely bypassing the CPU. The CPU just tells the 8257 where to start, how much data to move, and then goes back to its main job while the 8257 handles the transfer.

How It Works: The 8257 has four independent DMA channels. To start a transfer, the CPU sets up the channel with a starting memory address and a byte count. Then, the I/O device sends a "DMA Request" (DRQ) to the 8257. The 8257 then sends a "Hold Request" (HOLD) to the 8085, asking for control of the system buses. The 8085 finishes its current cycle, sends a "Hold Acknowledge" (HLDA) back, and then "tri-states" its address/data pins (effectively disconnecting itself from the buses). The 8257 then takes over control of the buses and directly moves the data from the I/O device to memory (or vice versa) at very high speed, byte by byte, until the count reaches zero.


Practice MCQs for 12. Direct Memory Access Controller: 8257. Test your knowledge with carefully crafted questions across easy, medium, and hard difficulty levels.

🔄 Last updated: 2026-07-30

26
Easy
56
Medium
40
Hard

📌 Topics in this Chapter

Block Diagram of 8257
7 MCQsView →
Control Logic of 8257
18 MCQsView →
Data Bus Buffer of 8257
8 MCQsView →
DMA Channels of 8257
10 MCQsView →
DMA Interfacing Circuit of 8257
21 MCQsView →
Mode Set Register of 8257
21 MCQsView →
Programming of 8257
16 MCQsView →
Read/ Write Logic of 8257
12 MCQsView →
Status Word Register of 8257
9 MCQsView →