100% found this document useful (5 votes)
12K views

The 8085 Programming Model

The 8085 microprocessor has 6 general purpose 8-bit registers (B, C, D, E, H, L), an 8-bit accumulator, a flags register, a program counter, and a stack pointer. It has 74 instructions grouped into 5 categories that can be 1, 2, or 3 bytes depending on the operand type. The 8085 supports 4 addressing modes and 4 data formats, and the meaning of data is determined by the user rather than the microprocessor itself.

Uploaded by

api-3850688
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
100% found this document useful (5 votes)
12K views

The 8085 Programming Model

The 8085 microprocessor has 6 general purpose 8-bit registers (B, C, D, E, H, L), an 8-bit accumulator, a flags register, a program counter, and a stack pointer. It has 74 instructions grouped into 5 categories that can be 1, 2, or 3 bytes depending on the operand type. The 8085 supports 4 addressing modes and 4 data formats, and the meaning of data is determined by the user rather than the microprocessor itself.

Uploaded by

api-3850688
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 13

Chapter 5

The 8085 Programming Model

Microprocessors & Interfacing Dr. Bassel Soudan 1


The 8085 Microprocessor
• The 8085 is an 8-bit microprocessor made by Intel.

• It has:
– 6 general purpose registers
– An accumulator Accumulator Flags
B C
– A flag register D E
H L
– A stack pointer Program Counter
Stack Pointer
– A program counter

Microprocessors & Interfacing Dr. Bassel Soudan 2


The 8085 Programming Model
• The Registers
– The 6 general purpose registers are 8-bits wide
each.
• They are to be used as needed.
• They are called B, C, D, E, H, and L.
• They can be used as 16-bit register pairs: BC, DE, HL.

– The accumulator is technically part of the ALU.


• It is 8-bits wide.
• It is one of the inputs to every ALU operation.
• The result of any operation is always stored in it.
• It is known as Register A.

Microprocessors & Interfacing Dr. Bassel Soudan 3


The 8085 Programming Model
– The ALU includes five flag flip-flops that are set or
reset after an operation.
• They are Z (zero), CY (carry), S (sign), P (parity) and AC
(Auxiliary Carry).
• These flags are used when the microprocessor tests for
data conditions.
• These make up the Flags Register.

Microprocessors & Interfacing Dr. Bassel Soudan 4


The 8085 Instructions
– Since the 8085 is an 8-bit device it can have up to
28 (256) instructions.
• However, the 8085 only uses 246 combinations that
represent a total of 74 instructions.
– Most of the instructions have more than one format.

– These instructions can be grouped into five


different groups:
• Data Transfer Operations
• Arithmetic Operations
• Logic Operations
• Branch Operations
• Machine Control Operations

Microprocessors & Interfacing Dr. Bassel Soudan 5


Instruction and Data Formats
• Each instruction has two parts.
– The first part is the task or operation to be
performed.
• This part is called the “opcode” (operation code).

– The second part is the data to be operated on


• Called the “operand”.

Microprocessors & Interfacing Dr. Bassel Soudan 6


Operand Types
• There are different ways for specifying the
operand:
– There may not be an operand (implied operand)
• CMA
– The operand may be an 8-bit number (immediate
data)
• ADI 4FH
– The operand may be an internal register (register)
• SUB B
– The operand may be a 16-bit address (memory
address)
• LDA 4000H

Microprocessors & Interfacing Dr. Bassel Soudan 7


Instruction Size
• Depending on the operand type, the instruction
may have different sizes. It will occupy a different
number of memory bytes.
– Typically, all instructions occupy one byte only.
– The exception is any instruction that contains
immediate data or a memory address.
• Instructions that include immediate data use two bytes.
– One for the opcode and the other for the 8-bit data.
• Instructions that include a memory address occupy three
bytes.
– One for the opcode, and the other two for the 16-bit
address.

Microprocessors & Interfacing Dr. Bassel Soudan 8


Instruction with Immediate Date
• Operation: Load an 8-bit number into the
accumulator.

– MVI A, 32
• Operation: MVI A
• Operand: The number 32
• Binary Code:
0011 1110 3E 1st byte.
0011 0010 32 2nd byte.

Microprocessors & Interfacing Dr. Bassel Soudan 9


Instruction with a Memory Address
• Operation: go to address 2085.

– Instruction: JMP 2085


• Opcode: JMP
• Operand: 2085
• Binary code:
1100 0011 C3 1st byte.
1000 0101 85 2nd byte
0010 0000 20 3rd byte

Note: Error in book on page 146.


Microprocessors & Interfacing Dr. Bassel Soudan 10
Addressing Modes
• The microprocessor has different ways of
specifying the data for the instruction. These are
called “addressing modes”.

• The 8085 has four addressing modes:


– Implied CMA
– Immediate MVI B, 45
– Direct LDA 4000
– Indirect LDAX B
• Load the accumulator with the contents of the memory
location whose address is stored in the register pair BC).

Microprocessors & Interfacing Dr. Bassel Soudan 11


Data Formats
• In an 8-bit microprocessor, data can be
represented in one of four formats:
• ASCII
• BCD
• Signed Integer
• Unsigned Integer.

– It is important to recognize that the


microprocessor deals with 0’s and 1’s.
• It deals with values as strings of bits.
• It is the job of the user to add a meaning to these strings.

Microprocessors & Interfacing Dr. Bassel Soudan 12


Data Formats
• Assume the accumulator contains the following
value: 0100 0001.
– There are four ways of reading this value:
• It is an unsigned integer expressed in binary, the
equivalent decimal number would be 65.
• It is a number expressed in BCD (Binary Coded Decimal)
format. That would make it, 41.
• It is an ASCII representation of a letter. That would make
it the letter A.
• It is a string of 0’s and 1’s where the 0th and the 6th bits
are set to 1 while all other bits are set to 0.

ASCII stands for American Standard Code for Information Interchange.

Microprocessors & Interfacing Dr. Bassel Soudan 13

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy