Registers: The 8085 includes six registers, one accumulator, and one flag register, as shown in Figure. In addition, it has two 16-bit registers: the stack pointer and the program counter. The 8085 has six generalpurpose registers to store 8-bit data; these are identified as B, C, D, E, H, and L.
Program Counter (PC): This 16-bit register deals with sequencing the execution of instructions. This register is a memory pointer. The microprocessor uses this register to sequence the execution of the instructions. The function of the program counter is to point to the memory address from which the next byte is to be fetched. When a byte is being fetched, the program counter is automatically incremented by one to point to the next memory location.
Stack Pointer (SP): The stack pointer is also a 16-bit register, used as a memory pointer. It points to a memory location in R/W memory, called stack. The beginning of the stack is defined by loading 16-bit address in the stack pointer.
Arithmetic & Logic Unit (ALU) : It performs various arithmetic and logic operations. The data is available in accumulator and temporary/general purpose registers.
Arithmetic Operations: Addition, Subtraction, Increment, Decrement etc.
Logic Operations: AND, OR, X-OR, Complement etc.