- Trending Categories
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
Physics
Chemistry
Biology
Mathematics
English
Economics
Psychology
Social Studies
Fashion Studies
Legal Studies
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Instruction type POP rp in 8085 Microprocessor
In 8085 Instruction set, with the mnemonic POP, we can pop out 2-Bytes from the top of the stack through rp i.e. register pair e.g. BC, DE, HL or AF. Here AF is a register pair formed with Flag and Accumulator registers and also known as PSW (Processor Status Word). In PSW, Accumulator is the MS Byte, and Flags register is the LS Byte.
Mnemonics, Operand | Opcode(in HEX) | Bytes |
---|---|---|
POP B | C1 | 1 |
POP D | D1 | 1 |
POP H | E1 | 1 |
POP PSW | F1 | 1 |
In the above mention Opcodes, 2-bits are occupied to mention the register pair. 2-bits can have 4 combinations. So 4 register pairs can be mentioned with POP. As mentioned earlier, they are BC, DE, HL and AF or PSW.
Note with LXI instruction, we are having 4 possible register pairs can be used i.e. BC, DE, HL and SP. So at the same time we can’t have SP and PSW applicable with the same instruction.
rp Code | Register Pair |
---|---|
0 0 | BC |
0 1 | DE |
1 0 | HL |
1 1 | SP or PSW, but never both at the same time. |
Let us consider the following example for better understanding of the operation of the instruction.
Here we are considering the instruction POP D which is an instruction falling in the category. As rp can have any of the four values, there are four opcodes for this type of instruction. It occupies only 1-Byte in memory. POP D is an example instruction of this type. It is a 1-Byte instruction. The result of execution of this instruction is shown below with an example.
Before | After | |
---|---|---|
(BC) |
AABBH | AABBH |
(SP) |
3FFEH | 4000H |
(3FFFH) |
AAH | AAH |
(3FFEH) |
BBH | BBH |
(DE) |
Any value | AABBH |
Address | Hex Codes | Mnemonic | Comment |
---|---|---|---|
2000 | 01 | LXI B, AABBH | Initializing BC register pair with AABBH |
2001 | BB | Low order Byte BBH | |
2002 | AA | High order Byte AAH | |
2003 | 31 | LXI SP,4000H | Initializing SP with 4000H |
2004 | 00 | Low order Byte 00H | |
2005 | 40 | High order Byte 40H | |
2006 | C5 | PUSH B | At 3FFFH, AAH and at 3FFEH,BBH will be moved |
2007 | D1 | POP D | Popping and initializing DE register pair with stack contents |
The timing diagram against this instruction POP D execution is as follows −

Summary − So this instruction POP requires 1-Byte, 3-Machine Cycles (Opcode Fetch, Memory Read, Memory Read) and 10 T-States for execution as shown in the timing diagram.
- Related Articles
- Instruction type INX rp in 8085 Microprocessor
- Instruction type DCX rp in 8085 Microprocessor
- Instruction type DAD rp in 8085 Microprocessor
- Instruction type PUSH rp in 8085 Microprocessor
- Instruction type LDAX rp in 8085 Microprocessor
- Instruction type STAX rp in 8085 Microprocessor
- Instruction Type LXI rp, d16 in 8085 Microprocessor
- Instruction type CMC in 8085 Microprocessor
- Instruction type STC in 8085 Microprocessor
- Instruction type RLC in 8085 Microprocessor
- Instruction type RAL in 8085 Microprocessor
- Instruction type RRC in 8085 Microprocessor
- Instruction type RAR in 8085 Microprocessor
- Instruction type SPHL in 8085 Microprocessor
- Instruction type XTHL in 8085 Microprocessor
