8085 microprocessor
DESCRIPTION
a quick and easy note on microprocessor.TRANSCRIPT
8085 Microprocessor
Architectural Differences between SAP1 And SAP2
• 16 bit program Counter(16-bit address bus )• Loadable Program Counter(JMP instruction)• 2-input port , 2-output port• 64k Memory• Memory Data Register(MDR) • Temp, B, and C registers• Arithmetic and Logical Operations• Flags (Zero Flag and Sign Flag)• 8-bit Opcode,42 Instruction• Bidirectional Registers
Instructions
Memory Reference Instruction :LDA , STA, MVI
Register Instruction:MOV, ADD, SUB, INR, DCR
Logical Instruction:ORA/ORI, ANA/ANI, XRA/XRI, CMA
Jump and Return :JMP/JZ/JNZ/JM and CALL/RET
Others: IN, OUT, HLT, NOP, RAR, RAR
Other Topics
• Flags• T-State• Conditional Jumps
Instruction affecting flag
Arithmetic and logical instructions:(ADD,SUB,INR,DCR, ANA/ANI,ORA/ORI, XRA/XRI)
What you should know!!!
• Architecture • Instructions• Basic Programming
(Refer your books for several programming examples )
Bonus Question
WALP to divide 41H by 10H.(Hint: Repetitive subtraction. You may need use Sign flag.)
8085
8085 Architecture
ALU
Both Arithmetic and Logical Operation:Operation PerformedAddition, Subtraction, Increment, Decrement, Logical AND, Logical OR, Logical XOR, Compare ,Complement, Left/ Right Shift
Flags
Five Flags Available in 8085Zero Flag(Z), Carry Flag(C), Auxiliary Carry(A),Sign Flag(S), Parity Flag (P)
Timing and Control Signals
• The timing and control unit synchronizes all the microprocessor operations with the clock and generates the control signals necessary for communication between the microprocessor and peripherals.
INSTRUCTION REGISTER & DECODER:
• When an instruction is fetched from memory it is placed in instruction register. Then it is decoded and encoded into various machine cycles.
REGISTER ARRAY:
• Apart from Accumulator (A-register), there are six general-purpose programmable registers
• B, C, D, E, H and L.• They can be used as 8-bit registers or paired to
store l6-bit data. The allowed pairs are B-C,D-E and H-L.
• The temporary registers W and Z are intended for internal use of the processor and it cannot be used by the programmer.
Register Array:
STACK POINTER (SP):• The stack pointer SP, holds the address of the
top of the stack.• The stack is used to save the content of
registers during the execution of a program.
Register Array:
PROGRAM COUNTER (PC):The program counter (PC) keeps track of program execution. To execute a program the starting address of the program is loaded in program counter. The PC sends out an address to fetch a byte of instruction from memory and increment its content automatically. Hence, when a byte of instruction is fetched, the PC holds the address of the next byte of the instruction or next instruction.
Address Bus
• Consists of 16 address lines: A0 – A15• Operates in unidirectional mode: The address
bits are always sent from the MPU to peripheral devices, not reverse.
• 16 address lines are capable of addressing a total of 216 = 65,536 (64k) memory locations.
• Address locations: 0000 (hex) – FFFF (hex)
Data Bus
• Consists of 8 data lines: D0 – D7• Operates in bidirectional mode: The data bits
are sent from the MPU to peripheral devices, as well as from the peripheral devices to the microprocessor.
• Data range: 00 (hex) – FF (hex)