Tuesday, February 8, 2011

REGISTERS
The 8085 has six general purpose registers to store 8 bit data. These are identified as B, C, D, E, H, L. they can be combined as register pairs BC, DE, and HL, to perform 16 bit operations.

ACCUMULATOR
The acc is an 8 bit register that is part of the arithmetic logic unit [ALU]. This register is used to store 8 bit data and to perform arithmetic and logical operations. The result of the operation is stored in the accumulator and identified as A.

FLAGS
The arithmetic logic unit [ALU] includes 5 flip flops which are set or reset after an operation according to data conditions of the result in the accumulator and other registers. They are called zero (Z), carry (CY), sign(S), parity (P), and auxiliary carry (AC). The microprocessor used these flags to test data conditions.

PROGRAM COUNTER
The microprocessor uses the PC register to sequence the execution of the instructions. The function of the pc is to point to the memory address from which the next byte is to be fetched. When a byte is being fetched, the pc is increased by one to point to the next memory location.

STACK POINTER
The sp is also a 16 bit register used as a memory pointer. It points to a memory location in R/W memory, called the stack.

8085 PROGRAMMING MODEL


The programming model consists of some segments of the arithmetic logic unit [ALU] and the registers. This model does not reflect the physical structure of the 8085 but includes the information that is critical in writing assembly language programs. The model includes six registers, one accumulator and one flag. In addition, it has two 16 bit registers, the stack pointer and the program counter.

8085 HARDWARE MODEL


The hardware model in fig (a) shows two major segments. One segment includes arithmetic logic unit [ALU] and an 8 bit register called an accumulator, instruction decoder, and flags. The second segment shows 8 bit and 16 bit registers. Both segments are connected with various internal connections called an internal bus. The arithmetic and logic operations are performed in the arithmetic logic unit [ALU]. Results are stored in the accumulator, and flip-flops, called flags, are set or reset to reflect the results. There are 3 buses- a 16 bit unidirectional address bus, an 8 bit bidirectional data bus, and a control bus.

THE 8085 PROGRAMMING MODEL


A model is conceptual representation of a real object. It can take many forms such as text description; a drawing etc. similarly the microprocessor can be represented in terms of its hardware (physical electronic components) and programming model (information needed to write programs).


8085 ASSEMBLY LANGUAGE


Even though the instruction can be written in hexadecimal code, it is still difficult to understand a program written in hexadecimal numbers. Therefore, each manufacturer of a microprocessor has devised a symbolic code for each instruction called mnemonic. The mnemonic for a particular instruction consists of letters that suggest the operation to be performed by that instruction.
Example- the binary code 0011 1100 of the 8085 microprocessor is represented by the mnemonic INR A.

8085 MACHINE LANGUAGE


The 8085 is a microprocessor with 8 bit word length. Its instruction set is designed by using various combinations of these 8 bits. The 8085 is an improved version of the earlier processor 8080A.
An instruction is a binary pattern entered through an input device in memory to command the microprocessor to perform that specific function.
The 8085 microprocessor has 246 such bit patterns, amounting to 74 different instructions for performing various operations. These 74 different instructions are called its instruction set.

HOW DOES MICROPROCESSOR WORK?


The instructions are stored sequentially in the memory. The microprocessor fetches the first instruction from its memory sheet, decodes it and executes that instruction. The sequence of fetch, decode, and execute is continued until the microprocessor comes across an instruction to stop. During the entire process, the microprocessor uses the system bus to fetch the binary instructions and data from the memory. It uses register from the register section to store data temporarily and it performs computing function in arithmetic logic unit [ALU] section. Finally, it sends out the result in binary using the same bus lines.