Published by: Nuru
Published date: 18 Jun 2021
Assembly language is specific to a given processor. E.g. assembly language of 8085 is different than that of Motorola 6800 microprocessors. The microprocessor cannot understand a program written in Assembly language. A program known as Assembler is used to convert an Assembly language program to machine language.
1. Six general-purpose Registers
2. Accumulator Register
3. Flag Register
4. Program Counter Register
5. Stack Pointer Register
Six general-purpose registers
– B, C, D, E, H, L
– Can be combined as register pairs to perform 16-bit operations (BC, DE, HL)
Accumulator – identified by name A
– This register is a part of ALU
– 8-bit data storage
– Performs arithmetic and logical operations
– Result of an operation is stored in an accumulator
Flag Register
– This is also a part of ALU
– 8085 has five flags named
• Zero flags (Z)
• Carry flag (CY)
• Sign flag (S)
• Parity flag (P)
• Auxiliary Carry flag (AC) –These flags are five flip-flops in the flag register
–Execution of an arithmetic/logic operation can set or reset these flags
–Condition of flags (set or reset) can be tested through software instructions
–8085 uses these flags in the decision-making process
Program Counter (PC)
– A 16-bit memory pointer register
– Used to sequence execution of a program instructions
– Stores address of a memory location
• where next instruction byte is to be fetched by the 8085
– when 8085 gets busy fetching current instruction from memory
• PC is incremented by one
• PC is now pointing to the address of the next instruction
Stack Pointer Register
– a 16-bit memory pointer register
– Points to a location in Stack memory
– Beginning of the stack is defined by loading a 16-bit address in the stack pointer register