Microprocessor Tutorial

  • Microprocessor Tutorial
  • Microprocessor - Home
  • Microprocessor - Overview
  • Microprocessor - Classification
  • 8085 Microprocessor

Microprocessor - 8085 Architecture

  • 8085 Pin Configuration
  • Addressing Modes & Interrupts
  • 8085 Instruction Sets
  • 8086 Microprocessor
  • Microprocessor - 8086 Overview
  • 8086 Functional Units
  • 8086 Pin Configuration
  • 8086 Instruction Sets
  • Microprocessor - 8086 Interrupts
  • 8086 Addressing Modes
  • Multiprocessor Configuration
  • Configuration Overview
  • 8087 Numeric Data Processor
  • I/O Interfacing
  • I/O Interfacing Overview
  • 8279 Programmable Keyboard
  • 8257 DMA Controller
  • Microcontrollers
  • Microcontrollers - Overview
  • Microcontrollers - 8051 Architecture
  • 8051 Pin Description
  • 8051 Input Output Ports
  • Microcontrollers - 8051 Interrupts
  • Peripheral Devices
  • Programmable Peripheral Interface
  • Intel 8255A - Pin Description
  • 8253 - Programmable Interval Timer
  • 8253/54 - Operational Modes
  • Microprocessor Useful Resources
  • Microprocessor - Quick Guide
  • Microprocessor - Useful Resources
  • Microprocessor - Discussion
  • Selected Reading
  • UPSC IAS Exams Notes
  • Developer's Best Practices
  • Questions and Answers
  • Effective Resume Writing
  • HR Interview Questions
  • Computer Glossary

8085 is pronounced as "eighty-eighty-five" microprocessor. It is an 8-bit microprocessor designed by Intel in 1977 using NMOS technology.

It has the following configuration −

  • 8-bit data bus
  • 16-bit address bus, which can address upto 64KB
  • A 16-bit program counter
  • A 16-bit stack pointer
  • Six 8-bit registers arranged in pairs: BC, DE, HL
  • Requires +5V supply to operate at 3.2 MHZ single phase clock

It is used in washing machines, microwave ovens, mobile phones, etc.

8085 Microprocessor – Functional Units

8085 consists of the following functional units −

Accumulator

It is an 8-bit register used to perform arithmetic, logical, I/O & LOAD/STORE operations. It is connected to internal data bus & ALU.

Arithmetic and logic unit

As the name suggests, it performs arithmetic and logical operations like Addition, Subtraction, AND, OR, etc. on 8-bit data.

General purpose register

There are 6 general purpose registers in 8085 processor, i.e. B, C, D, E, H & L. Each register can hold 8-bit data.

These registers can work in pair to hold 16-bit data and their pairing combination is like B-C, D-E & H-L.

Program counter

It is a 16-bit register used to store the memory address location of the next instruction to be executed. Microprocessor increments the program whenever an instruction is being executed, so that the program counter points to the memory address of the next instruction that is going to be executed.

Stack pointer

It is also a 16-bit register works like stack, which is always incremented/decremented by 2 during push & pop operations.

Temporary register

It is an 8-bit register, which holds the temporary data of arithmetic and logical operations.

Flag register

It is an 8-bit register having five 1-bit flip-flops, which holds either 0 or 1 depending upon the result stored in the accumulator.

These are the set of 5 flip-flops −

  • Auxiliary Carry (AC)

Its bit position is shown in the following table −

Instruction register and decoder

It is an 8-bit register. When an instruction is fetched from memory then it is stored in the Instruction register. Instruction decoder decodes the information present in the Instruction register.

Timing and control unit

It provides timing and control signal to the microprocessor to perform operations. Following are the timing and control signals, which control external and internal circuits −

  • Control Signals: READY, RD’, WR’, ALE
  • Status Signals: S0, S1, IO/M’
  • DMA Signals: HOLD, HLDA
  • RESET Signals: RESET IN, RESET OUT

Interrupt control

As the name suggests it controls the interrupts during a process. When a microprocessor is executing a main program and whenever an interrupt occurs, the microprocessor shifts the control from the main program to process the incoming request. After the request is completed, the control goes back to the main program.

There are 5 interrupt signals in 8085 microprocessor: INTR, RST 7.5, RST 6.5, RST 5.5, TRAP.

Serial Input/output control

It controls the serial data communication by using these two instructions: SID (Serial input data) and SOD (Serial output data).

Address buffer and address-data buffer

The content stored in the stack pointer and program counter is loaded into the address buffer and address-data buffer to communicate with the CPU. The memory and I/O chips are connected to these buses; the CPU can exchange the desired data with the memory and I/O chips.

Address bus and data bus

Data bus carries the data to be stored. It is bidirectional, whereas address bus carries the location to where it should be stored and it is unidirectional. It is used to transfer the data & Address I/O devices.

8085 Architecture

We have tried to depict the architecture of 8085 with this following image −

8085 Architecture

To Continue Learning Please Login

electronics desk logo

8085 Microprocessor

Definition : 8085 is an 8-bit microprocessor as it operates on 8 bits at a time and is created with N-MOS technology . This microprocessor exhibits some unique characteristics and this is the reason it still holds popularity among the microprocessors.

Basically, 8085 was the first commercially successful microprocessor by Intel . As some of the architectural drawbacks associated with 8080 was also eliminated by 8085.

The size of the data bus of 8085 is 8 bits while that of the address bus is 16. Therefore, can address 64 KB (i.e., 2 16 ) memory. Also, as it can perform 8-bit operation thus the size of ALU is also 8-bit.

It also provides operational advantages, as 8085 needs a single +5V supply with only one clock single of width 320 ns. While 8080 requires 3 power supply lines and 2 clock signals of 500 ns.

Architecture of 8085 Microprocessor

The architecture of 8085 microprocessor provides the idea about what are the operations to be executed and how these are performed.

It can perform operations that are given below :

  • Operates on and stores 8-bit data.
  • It executes arithmetic and logic operations.
  • 8085 also sequences the instructions to be executed.
  • Stores data temporarily.

However, in order to perform all such operations, the processor needs a control unit, arithmetic logic unit, registers, buses etc.

We have already discussed how CU, ALU and buses function in a microprocessor. Here, in this article, we will discuss the detailed architecture of 8085 microprocessor and how it operates.

The figure below represents the architectural representation of 8085 microprocessor :

architecture of 8085 microprocessor

Functional Units of 8085:

1. Registers : These are nothing but set of flip flops. These are basically used to hold (store) the data.

General purpose registers –  8085 microprocessors contain 6 general purpose registers that are present inside the microprocessor and stores 8-bit data in order to execute a program.

These general purpose registers are B, C, D, E, H and L . These registers can be combined to form pairs – BC, DE and HL in order to execute the 16-bit operation.

These are programmable registers, that means these registers are accessed by the programmer to insert and transfer the data by making use of instructions.

Temporary registers : These registers are used by the ALU to store the data on temporary basis and these are not accessed by the programmer. These are of 2 types:

  • Temporary data register – It is an 8-bit register that holds the operand and provides it to the ALU for program execution. Also, the immediate results are stored by the ALU in this register.
  • W and Z register – These registers are also used to hold the temporary values. It is used by the control section of the microprocessor so as to store the data during operations.

2. Program Counter (PC) : It is basically a special purpose register that is used to store the memory location of the instruction to be performed. As it is clear that in order to fetch an instruction from the memory the microprocessor needs to know about its address.

It is a 16-bit register as it stores address. This register is used by the microprocessor to line up the instructions that are to be executed in a sequential manner.

It functions in such a way that it fetches the opcode from one memory location and simultaneously get incremented by the next memory location. Thus, it provides sequencing of the program to be executed.

3. Stack Pointer (SP) : It is also a 16-bit register and is a part of memory. The data is stored in the stack in serial format and stack pointer generally stores the address of the last data element stored in the stack. Thus the stack is based on LIFO .

Whenever a new data is added in the stack, then the stack pointer starts pointing towards the very next memory location.

As against, when a data element is removed from the stack, then the stack pointer points to previous occupied memory location.

4. Accumulator : It is an 8-bit register that stores the result of the operation performed by the ALU. It is also known as register A .

5. Flags : Flag register basically holds the status of the current result generated by the ALU and not the actually generated result. Thus we can say it is used to test the data conditions.

8085 has 5 flags that shows 5 different data conditions . These are carry, sign, zero, parity and auxiliary carry flags. However, the mostly used are: sign, carry and zero.

Working of 8085 Microprocessor

Now after having an idea about the functional units of the 8085 microprocessor, let us proceed further to understand the operation of the 8085 microprocessor.

We already know that the function of a microprocessor is to execute instructions. Also, in order to execute an instruction, it first needs to be fetched then decoded and then executed . And in order to fetch an instruction, firstly the address of the instruction must be known.

The address of the instruction is present in the program counter. This address is then placed on the 16-bit address bus and is then forwarded towards the memory. From the memory, the instruction present at that particular memory location is fetched through the 8-bit data bus.

registers of 8085

Here, in the above figure, we can clearly see that we have combinely used data bus and address bus so as to reduce the number of lines. As we know that at a particular time the processor will access either the data bus or the address bus.

Further when the instruction is fetched from the memory, then through internal buses the instruction is provided to the instruction register . At this particular point of time fetching the instruction from the memory is over.

Now, it’s time for the processor to decode the instruction. So, it is then fed to the instruction decoder.

We already have the idea that both data and instruction in the memory is stored in the form of an opcode . So, the fetched opcode is analyzed by the instruction decoder present inside the processor in order to execute the instruction.

But, a noteworthy point over here is that, after an instruction is fetched from the memory, then PC increments itself thereby providing the address location of the next instruction. As PC does not play any role in decoding and executing.

However, after execution of first instruction, the next is fetched form the memory.

Now, this is all about fetching and decoding, now what about the execution of the instruction.

exceution of operation in 8085

In the above figure, we can see the timing and control circuit . This circuit basically sends the control signals to the various units of the microprocessor to execute the instruction.

Suppose, the instruction is ADD A and B. This simply tells the ALU to add the data present in B register with the data present in accumulator i.e., A register. But, in 8085 the decoded instruction is simply ADD B . So, automatically, the ALU adds the value present in the accumulator with the data in register B.

Also, in 8085 the outcome of the operation is stored register A  which is nothing but an accumulator.

Further when an instruction ADD C is decoded by the 8085, then data at C register is added to the data present in register A and is stored at register A. Due to such cumulative action, register A is termed as an accumulator .

Basically, the timing and control circuit timely sends the signals to the accumulator to release its value for proceeding execution. Also, this timing and control circuit sends signals to the register select that tells it to choose the particular register.

Once the data is fetched from a particular register then it is stored in the temporary register and it is used by the ALU. It is to be kept in mind that a programmer can only access the general purpose register as the temporary register is used by the processor to hold the 2 nd operand of the operation.

Now, once the operation is executed, then the result is fed to the accumulator through the data bus. But a flag register is also present that holds the status of the result present at the accumulator.

As we have also discussed in the functional unit that a flag register holds a sign, carry etc. related information of the generated result.

After every instruction execution  performed by the ALU, the status of the flag register gets changed . So, ALU produces the result and its status simultaneously after each operation.

As we have already discussed that W and Z are the temporary registers but these are not accessed by the programmer as both are used by the processor to hold the temporary value stored by it.

So, this is all about the block diagram and working of 8085 microprocessor.

Applications of 8085 microprocessor

8085 finds its major applications in programmable calculators as well as in numerical control and environment monitoring systems. These are also used in switching, banking and financial systems.

Related Terms:

  • Microprocessor
  • Pin Diagram and Description of 8085 Microprocessor
  • Interrupts in 8085 Microprocessor

1 thought on “8085 Microprocessor”

Grt content

Leave a Comment Cancel Reply

Your email address will not be published. Required fields are marked *

A specification of the intel 8085 microprocessor: A case study

  • Part III Rapid Prototyping With Algebraic Specification
  • Conference paper
  • First Online: 01 January 2005
  • Cite this conference paper

case study of 8085 microprocessor

  • Alfons Geser 1  

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 394))

Included in the following conference series:

  • Workshop on Algebraic Methods

4 Citations

As an instance for a large specification, an algebraic specification of the intel 8085 micro-processor is given. The specification is based on the concepts of hierarchical abstract types and conditional equations. With the help of the specification interpreter RAP, the specification is validated against some of its informal requirements. In the design of large software systems, a number of informal specification properties have to be considered such as style, readability, and structuredness of a specification. These properties are talked about using a couple of small examples.

intel is a registered trademark of intel Corporation, Santa Clara, CA.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Unable to display preview.  Download preview PDF.

R. Berghammer, H. Ehler, H. Zierer: Towards an algebraic specification of code generation . Report TUM-I8707, Technische Universität München, June 1987.

Google Scholar  

J. A. Bergstra, J. Heering, P. Klint: Algebraic Definition of a Simple Programming Language . Report CS-R8504, CWI, Amsterdam, Feb. 1985.

M. Broy: Specification and Top Down Design of Distributed Systems . Report MIP-8401, Universität Passau, Dec. 1984, MET. METEOR working paper

M. Broy: An Example for the Design of Distributed Systems in a Formal Setting: The Life Problem . Report MIP-8802, Universität Passau, Feb. 1988

A. Horsch, B. Möller, H. Partsch, O. Paukner, P. Pepper: The Munich Project CIP, Vol. II: The Program Transformation System CIP-S, Part I: Formal Specification . Lecture Notes in Computer Science 292, 1987.

L. M. G. Feijs, H. B. M. Jonkers, C. P. J. Koymans, G. R. Renardel de Lavalette: Formal Definition of the Design Language COLD-K . Technical Report, Philips Research Labs., Eindhoven, 1988, MET. METEOR working paper

J. H. A. Gelissen: Rapid Prototyping of COLD Specifications using RAP . Technical Report, Philips Research Labs., Eindhoven, April 1988, MET. METEOR working paper

A. Geser: A Specification of the intel 8085 Microprocessor: A Case Study . Report MIP-8608, Universität Passau, May 1986, MET. METEOR working paper

A. Geser, H. Hußmann: Rapid Prototyping for Algebraic Specifications — Examples for the Use of the RAP System . Report MIP-8517, Universität Passau, Dec. 1985, MET. METEOR working paper Updated version to appear.

A. Geser, H. Hußmann: Experiences with the RAP system — A Specification Interpreter combining Term Rewriting and Resolution . In: Proc. ESOP 86 Conf., March 1986, LNCS Lecture Notes in Computer Science 213, also as MET. METEOR working paper

A. Geser, H. Hußmann: A Compiler for a Class of Conditional Rewrite Systems . In: Proc. 1st Workshop on Conditional Rewriting, June 1987, LNCS Lecture Notes in Computer Science 308, pp. 84–90.

C. A. R. Hoare: Notes on Communicating Sequential Processes . Technical Monograph PRG-33, Oxford, Aug. 1983.

G. Huet, D. C. Oppen: Equations and Rewrite Rules — A Survey . In: R. V. Book (ed.): Formal Language Theory — Perspectives and Open Problems . Academic Press, 1980.

J. M. Hullot: Canonical Forms and Unification . Proc. 5th CADE Conf., LNCS Lecture Notes in Computer Science 87, pp. 318–334, 1980.

H. Hußmann: Unification in Conditional-Equational Theories . Report MIP-8502, Universität Passau, Passau 1985. Short version also in: Proc. EUROCAL 85 Conf., Vol. 2, LNCS 204, pp. 543–553, April 1985.

H. Hußmann: Rapid Prototyping for Algebraic Specifications — RAP System User's Manual (Second Edition) . Report MIP-8504, Universität Passau, Feb. 1987.

H. Hußmann, A. Geser: The RAP system as a tool for testing COLD specifications . In this volume.

H. Hußmann, C. Rank: Specification and Prototyping of a Compiler for a Small Applicative Language . In this volume.

Intel Corporation: 8080/8085 Assembly Language Programming . Santa Clara, 1979.

Intel Corporation: The MCS-80/85 Family User's Manual . Santa Clara, 1983.

K. E. Iverson: Programming in Systems Design . IBM Systems Journal, Vol. 2, June 1963, pp. 117–128.

H. B. M. Jonkers: An Introduction to COLD-K . Technical Report, Philips Research Labs., Eindhoven, July 1988.

S. Kaplan: A Compiler for Conditional Term Rewriting Systems . Proc. RTA 87 Conf., LNCS 256, pp. 25–41, May 1987.

L. Lavazza, S. Crespi-Reghizzi: Algebraic ADT Specifications of an Extended Relational Algebra and their Conversion into a Working Prototype . To appear as MET. METEOR working paper

P. Padawitz: ECDS — A Rewrite Rule Based Interpreter for a Programming Language with Abstraction and Communication . Report MIP-8703, Universität Passau, Feb. 1987, MET. METEOR working paper

P. Padawitz: Computing in Horn Clause Theories . EATCS Monographs in Theoretical Computer Science Vol. 16, 1988.

H. J. Sint: A Survey of High Level Microprogramming Languages . Proc. 13th Annual Workshop on Microprogramming, 1980.

M. Wirsing, P. Pepper, H. Partsch, W. Dosch, M. Broy: On Hierarchies of Abstract Data Types . Acta Informatica 20, pp. 1–33, 1983.

Article   Google Scholar  

M. Wirsing: Structured Algebraic Specifications: A Kernel Language . Habilitation Thesis, Technische Universitaet Muenchen, 1983. also as: Report MIP-8511, Universitaet Passau, 1985, MET. METEOR working paper also in Theoretical Computer Science.

A. Tarlezki, M. Wirsing: Continuous Abstract Types . In: Proc. MFCS 86, LNCS Lecture Notes in Computer Science 233, 1986, MET. METEOR working paper

Download references

Author information

Authors and affiliations.

Fakultät für Mathematik und Informatik, Universität Passau, Postfach 2540, D-8390, Passau

Alfons Geser

You can also search for this author in PubMed   Google Scholar

Editor information

Rights and permissions.

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper.

Geser, A. (1989). A specification of the intel 8085 microprocessor: A case study. In: Wirsing, M., Bergstra, J.A. (eds) Algebraic Methods: Theory, Tools and Applications. Algebraic Methods 1987. Lecture Notes in Computer Science, vol 394. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0015045

Download citation

DOI : https://doi.org/10.1007/BFb0015045

Published : 23 June 2005

Publisher Name : Springer, Berlin, Heidelberg

Print ISBN : 978-3-540-51698-9

Online ISBN : 978-3-540-46758-8

eBook Packages : Springer Book Archive

Share this paper

Anyone you share the following link with will be able to read this content:

Sorry, a shareable link is not currently available for this article.

Provided by the Springer Nature SharedIt content-sharing initiative

  • Publish with us

Policies and ethics

  • Find a journal
  • Track your research

8085 Microprocessor Course – Learn from scratch

The 8085 is a popular 8-bit microprocessor that is used widely across the world to introduce students to microprocessor concepts and assembly language programming. In this free 8085 course, we will start off with understanding the basics of microprocessor fundamentals, then we will dive deep into the architecture of 8085 and its instruction set. We will then introduce assembly language programming and solve a bunch of programming questions.

Course content

What is the difference between microcontrollers and microprocessors?

An age-old question broken down into a simple conceptual explanation. The difference between microcontrollers and microprocessors is easy to remember with this explanation.

8085 Pins – Understanding the 8085’s pin diagram

The 8085 has 40 pins. Understanding the function of each pin will give you a brief idea about the capabilities of the microprocessor.

Understanding the 8085 Architecture

The architecture of any processor is the key to understanding everything about it. Its purpose, its capacity, and power, everything can be understood from a peek at the innards of the chip. Studying the 8085’s internal architecture will set you up towards understanding any processor in a jiffy.

Addressing Modes in 8085 Microprocessor

All processors and controllers can access data stored in the memory using instructions or commands. However, the method in which they access this data varies on the addressing modes that they are capable of using. So, in short, data access has many types, known as addressing modes. Let’s take a look at the addressing modes available in 8085.

Data Transfer Instructions in 8085 – With example codes

We begin our foray into the instruction set of the 8085 microprocessor with the data transfer instructions. These instructions, as their classification suggests, are used to move around data within, from, or into the microprocessor.

Arithmetic Instructions in 8085 – With example codes

Next up, we’ll take a look at the arithmetic instructions available to us in 8085. Keep an eye out for the subtraction instructions. The 2’s complement aspect can make them seem confusing at first.

Logical Instructions in 8085 – With example codes

The third category of the instruction set is the bunch of instructions that are responsible for implementing logic and helping the ALU perform logical operations.

Buses in 8085 – Demultiplexing and Generating Control Signals

The buses of any processor are the network through which all communication inside an embedded system is done. Both, internal as well as external. Without the buses, it’s like having a Ferrari with no wheels. The bus structure of a processor can tell you a lot about its design and how it can be interfaced with the outside world. For the 8085, we have a few unique processes that we need to run to use its buses. First, we will understand the role of all the buses, and then we will understand the processes that need to be done to use them. Though these processes might seem convoluted right now, rest assured, it has all been done in the interest of optimizing the processor for best usage.

Timing diagrams and Machine cycles – Learn with 8085 instructions

A good embedded systems developer is expected to be in tune with the effect their code is having on the internal circuitry of the device they are programming. This skill develops over time and helps you optimize your code for efficiency and quickly debug it in the event of some nasty bugs. Here’s one of the concepts that zeros in on how instructions execute on a micro-level. Learning how timing diagrams work will come in handy as we progress to much more complex topics like instruction parallelism, multi-threading, and RTOS.

External memory interfacing in 8085: RAM and ROM

The 8085 microprocessor doesn’t have any built-in memory. Thus, to use it in any significant project we need to interface external memory chips to it. This is a complete guide on how you would go about doing that. There’s an example problem to help you get a more application-based explanation too.

Stack, Stack pointer and Subroutines in 8085 – With coding examples

The stack is an important data structure in embedded systems as it allows us to increase our code efficiency by implementing subroutines. Let’s study everything we need to know to start using them.

Interrupt Structure of the 8085

Almost every modern processor has a system to handle interrupts. Let’s take an in-depth look at the entire process of how interrupts work in the 8085 processor. Interrupts classification, their types, and internal circuitry.

Data Transfer Techniques in 8085

A microprocessor deals with a lot of data passing through it. However, not all recipients and senders of this data are alike. They might have many differences in terms of how they send or receive data. Hence, we need different data transfer mechanisms. Let’s take a look at all the different ways in which the 8085 transfers data between peripherals and itself.

Difference between Memory mapped I/O and I/O mapped I/O

Interfacing I/O devices with a processor is an integral part of any embedded system. With the 8085, there are two methods to interface I/O devices; I/O mapped I/O and memory-mapped I/O. Both of these methods have their perks and snags. This is an important concept. So pay attention and understand the difference between the two methods. We’ll revisit this in the ARM Cortex M course.

8255 Programmable Peripheral Interface – In-depth simple explanation

The 8255 is/was a very common IC primarily used to increase the number of I/O pins that a microprocessor could address. However, the 8255 is extremely powerful and does a lot more than simple I/O data transfers. Here’s a simplified and in-depth explanation of the 8255 programmable peripheral interface. This is your one stop guide to completely understand its working.

Interfacing of 8085 with 8255 Programmable Peripheral Interface

Now that we are familiar with the working of the 8255, let’s interface it with the 8085.

8085 Microprocessor MCQ | Quiz | Interview Questions

This 8085 quiz has been crafted to test skills in a wide range of concepts that we have covered in this free course. Competitive exam takers will find the detailed solutions helpful. Clearing this quiz will unlock the final certification test. For detailed performance analysis, please ensure that you are logged in before attempting the quiz.

More details

New posts are still being added to this course. 

What will you learn in this course?

  • Basic concepts of microprocessors and their essential functionalities.
  • Ability to comprehend microprocessor architecture.
  • Ability to read instruction set documentation and understand its implementation and execution.
  • Identify common peripherals.
  • Understand different methods of interfacing I/O peripherals.
  • Understand and design timing diagrams for various instructions.

Are there any software or hardware requirements for this course?

Yes. We will be using an online simulator ( Sim8085 ) for simulating our assembly language programs. It is a very straightforward and simple simulator that allows us to check for flag status, changes in memory locations, and register contents. Using this simulator we will understand how assembly language instructions affect the internal components of the 8085 microprocessor.

Generally, we would advise you to get a physical 8085 learning kit ( like this one ). However, looking at the bigger picture in terms of our embedded systems track, we would advise that you save your money. Instead, learn the basics of microprocessors in this course and invest in a good development kit when you begin the course on the ARM Cortex M processor .

What is the target of this course?

This course is part of our tracks in Embedded Systems, IoT, and Robotics. We have designed these tracks and their constituent courses (like this one) to equip learners with the basic requirements of entry-level jobs or internships in the respective fields. Head over to the pages of any of these tracks to get more information.

Are there any pre-requisites for this course?

  • Digital Electronics (Strongly recommended)
  • Knowledge of basic electronic components

How many quizzes are there in this course?

I would like to suggest some topics to be covered, how can i do that.

You can visit the contact page linked in the footer of this webpage. Just select “Suggest Topics” from the subject dropdown menu of the form, mention the course and why you think your suggestion makes sense to be part of the curriculum.

Academia.edu no longer supports Internet Explorer.

To browse Academia.edu and the wider internet faster and more securely, please take a few seconds to  upgrade your browser .

Enter the email address you signed up with and we'll email you a reset link.

  • We're Hiring!
  • Help Center

paper cover thumbnail

The Design and Implementation of an Intel 8085 microprocessor trainer

Profile image of Peter Magbo

Microprocessor architecture is a course commonly taught to ECE students in universities around the globe. The subject is best taught with practical tools or trainers to aid students in understanding the internals of a microprocessor. The cost of purchasing such tools can however be prohibitive to Third World institutions. This paper details the design and subsequent construction of an effective Intel 8085 trainer to serve as proof-of-concept that electronic engineering departments in Nigerian universities can manufacture these devices independently at relatively low costs.

Related Papers

Mohamed Mohandes

The rapid advancement in educational tools experienced over the recent decades has introduced online teaching environments that can facilitate or help develop virtual universities. As more and more students are obtaining free Internet access, we see instructors starting to provide class information, events, lectures, labs, tutorials, etc. on-line. The King Fahd University of Petroleum and Minerals (KFUPM) has embarked on an initiative to develop courses across all its engineering departments for web-based learning. This paper outlines the development of Digital Systems Engineering (8086 microprocessor) course as part of this initiative. This course is now in its first year of implementation. Initially, it was used entirely as supporting or supplementary material. Feedback taken from students indicated that the e-material enhanced their understanding of the course.

case study of 8085 microprocessor

IEEE Transactions on Education

Fernando Vallejo

Information Technology Based Proceedings of the FIfth International Conference onHigher Education and Training, 2004. ITHET 2004.

Valfredo Pilla Jr

Jean-Daniel Nicoud

Martha Sloan

HARISH BHATIA

heri surachman

Shahzad Hyder Soomro H Y D E R Soomro

MATSOFT385 is the creation of a flexible framework that is competent of providing real-time simulation and visualization services for users moving in the computational field of "Microprocessor" (µP). The most interesting aspect of this system is that learn the art of programming in machine language with the awareness of design and debugging techniques, etc. mounted on an elegant cabinet. It is the system that enables the students at home or at their personnel PCs to get same ability and knowledge as hardware kit gives. The attribute which differentiate with other systems is that it is not constrained to run on a single specific machine (PC) [3]. MATSOFT385 system allows the users to quickly master the software in an environment very similar to the real hardware. The scope of this simulation is to perform the Instruction set of 8085 µP and load, examine and modifying the contents of memory location. It also examines and modifies the contents of Processor registers and It wi...

L.S.K. Udugama

34th Annual Frontiers in Education, 2004. FIE 2004.

RELATED PAPERS

jace carter

Journal of Human Lactation

Vishnu khanal

Mitchell de Sousa

Journal of Marine Science and Engineering

Joaquim Pais Barbosa

Bilgi Dünyasi

Meral Alakuş

[email protected] Carvajal Fernandez

Jurnal Riset Teknologi Pencegahan Pencemaran Industri

Rizal Malik

Environmental Pollution

Nobuaki Negishi

Research Journal of Finance and Accounting

John Mungai

Akbar Hossain

Barrie Dunn

Aging Clinical and Experimental Research

Bulent Saka

Ian Hamerton

Ednaldo Rufino

Ekaterina Budnik

Exchange of Gifts: The Vision of Simon Barrington-Ward edited by Graham Kings & Ian Randall

Linda Ochola- Adolwa

Erich Wenneker

charles jebuni

Behavioural Neurology

Maria Råstam

Sita Noviani

RELATED TOPICS

  •   We're Hiring!
  •   Help Center
  • Find new research papers in:
  • Health Sciences
  • Earth Sciences
  • Cognitive Science
  • Mathematics
  • Computer Science
  • Academia ©2024

ElProCus – Electronic Projects for Engineering Students

Instruction Set of 8085 Microprocessor & Its Classification

The first commercially successful microprocessor is the 8085 microprocessor by Intel. This microprocessor was mainly developed to eliminate the drawbacks of 8080 architecture. 8085 microprocessor is an 8-bit microprocessor because at a time it works on 8-bits and the technology used to design this processor is N-MOS technology . As compared to other microprocessors , this microprocessor is very popular because it has some unique characteristics like it is an 8-bit device, designed with a single NMOS IC including 6200 transistors. In this processor, a total of 80 instructions and246 operational codes are present. It includes an internal CLK generator and works on a CLK cycle including 50% duty cycle.  This article discusses an overview of the instruction set of 8085 microprocessor , types with examples.

What is Instruction Set in 8085 Microprocessor?

A binary command that is used to perform a function in the microprocessor over provided data is known as instruction. A set of instructions is known as an instruction set that decides the microprocessor function. Every instruction includes two parts like Opcode & the Operand where Opcode is used to specify the function to be executed & operand gives the data to be functioned on.

8085 Microprocessor

Classification of Instruction Set of 8085

The instruction set of 8085 microprocessor is classified into five types which include the following.

Classification of Instruction Set of 8085 Microprocessor

Data Transfer Instruction

  • Arithmetic Instruction

Logical Instruction

Branching instruction.

Control Instruction

An instruction that is used to transfer the data from one register to another is known as data transfer instruction. So, the data transfer can be done from source to destination without changing the source contents. Data transfer mainly occurs from one register to another register, from memory location to register, register to memory, and between an I/O device & accumulator. Following are the list of Data Transfer Instruction

This data transfer instruction is used to transfer data present within the memory (M) to the register (r). But, the memory location address must be there within the HL register.

Example: MOV r, 1020H

Mov M, Data

This type of instruction specifies the data transfer immediately to a location of memory. This memory location address can be specified at the H-L registers.

Example: MOV M, 28H

MVI r, Data (Move Immediate)

In this type of instruction, the transmission of data can be done immediately toward the particular register.

Example: MVI r, 32H

LDA address (Load Accumulator)

LDA is a load accumulator instruction that is mainly used for copying the data available in the address of memory indicated as the instruction’s operand to the accumulator. Particularly, in this case, the available data in the 16-bit address memory is transferred toward the accumulator.

Example: LDA 500H

LDAX (LoaD Accumulator by eXtended Register Pair)

It is a load accumulator from an address in the register pair. In this type of data transfer instruction, the register holds the address of the data that needs to be loaded to the accumulator.

Example: LDAX C/D

LHLD (Load H & L Registers Direct)

LHLD instruction is a direct load instruction, where it loads the H-L register with the data from the memory. In this type of instruction, the data which is available in the address specified is copied to the L register first and then the available data within the next memory location will be loaded in the H register.

Example: LHLD 2500H

STA Address (Store Accumulator Contents in Memory)

STA stands for stored accumulator direct instruction. Once this instruction is accepted, then the available data within the accumulator can be transferred to the address of memory indicated within the operand.

Example: STA 2030H

In the above example data stored in the accumulator will be stored to  memory location 2030. LSB followed by MSB will be stored in the memory location.

STAX Register (Store Accumulator by Extended Register)

It is a stored accumulator indirect instruction. In this instruction, the register is available as the operand that holds a memory address. Thus, the accumulator data can be copied to that specific memory location.

Example: STAX D

XCHG (Exchange)

This type of data transfer instruction can be used to exchange the data available within two registers.

Example: XCHG H-L & D-E. In this, the contents of H & D and L & E are exchanged.

SPHL (Stack Pointer HL Register)

In this data transfer instruction, the data of H &L can be moved to the stack pointer.

PCHL (Program Counter with HL Data)

Similar to SPHL instruction, this PCHL instruction simply copies the H-L register’s data into the SP by loading the high order bytes at H & low order bytes at L.

In this type of instruction, the stack can be loaded with the available data within the register provided in the operand. Initially, the stack pointer gets decreased & high order bytes are copied to the stack. Further stack pointer gets decreased to load the low order register bytes.

Example: PUSH D

This instruction indicates the data transfer from the top of the stack to the register provided as the operand.

Example: POP C

In this type of data transfer instruction, the data available at the accumulator can be copied toward the I/O port. An 8-bit port address at the operand is present.

Example: OUT 36 H

This type of instruction is used to load the data available at the I/O port to the accumulator. The operand simply holds the port address from where the data can be copied.

Example: IN, 6B H

Arithmetic Instruction of 8085

The arithmetic instructions perform different operations like addition, subtraction, increment & decrement on the data within memory & register in the 8085 microprocessor.

This arithmetic instruction adds the data which is available in the register to the data available within the accumulator & the final result will be stored in the accumulator.

Example: ADD C

This type of instruction is mainly used to add the date in the memory address data denoted at the operand to the data available at the accumulator. So the addition result will be stored within the accumulator.

Example: ADD 28H

ADI Data (Add Immediate)

In this instruction, the 8-bit data is specified as an operand is added immediately to the data available at the accumulator & the result is stored at the accumulator.

Example: ADI 24 H

ACI Data (Add with Carry Immediate)

This type of instruction simply adds the 8-bit data available at the operand & carries the flag by the data available at the accumulator. After every addition, the flag reproduces the output of the addition.

Example: ACI 35H

ADC r (Add with Carry)

In this type of instruction, the data present at the register can be added to the data available at the accumulator with the carry bit & output is simply reflected at the accumulator.

Example: ADC D

This type of instruction is mainly used to add the available data at the location of memory whose address is denoted within the operand specified & the carry bit with the data available within the accumulator. So the output of addition can be stored within the accumulator.

Example: AMC 25H

This type of instruction is used to subtract the available data at the register given at the operand from the data present in the accumulator. The final result will be stored at the accumulator.

Example: SUB C

This instruction is used to subtract the available data at the location of memory whose address is provided by the H-L register from the data present at the accumulator.

Example: SUB 128H

SUI Data (Subtract Immediate from Accumulator)

This type of instruction is mainly used to instantly subtract the data available as operand within the instruction from the available data at the accumulator. After every subtraction, the flag can be changed to show the result of subtraction.

Example: SUI 35H

SBI Data (Subtract with Borrow Immediate from Accumulator)

This type of instruction helps subtract the 8-bit data provided as the operand & the borrow bit from the available data at the accumulator, and the result will be stored within the accumulator.

Example: SBI 24H

This instruction is used to subtract the data present at the register & the borrow bit from the data present at the accumulator.

Example: SBB C

SBB M (Subtraction with Borrow)

This instruction is used to specify the subtraction of data available at the memory location, whose address is available at the H-L register & the borrow bit from the data present at the accumulator.

Example: SBB 1000H

INX r (Increment Extended Register)

This type of instruction is used to increase the data by 1 which is available at the register provided at the operand. The result will be stored at the same register.

Example: INX C

DCX r (Decrement Extended Register)

This type of instruction decreases the data available at the register by 1 & the result will be stored in the same register.

Example: DCX C

DCR M (Decrement Register)

In an instruction, sometimes the operand holds a location of memory. The memory location address is available at the H-L pair. Thus the data available at that specific location will be decreased by 1.

Example: DCR 28H

DAA (Decimal Adjust Accumulator)

DAA is a decimal adjust accumulator, used to break the binary number from 8-bit to two 4-bit binary-coded decimal numbers.

Logical instructions are mainly used to perform different operations like logical or Boolean over the data available in either memory or register. These instructions will modify the flag bits based on the operation executed.

CMP R/M (Compare the Register/Memory with the Accumulator) 

This instruction is used to compare the data at the accumulator with the data present at the register or memory which is given as operand. According to the result obtained by the comparison, the flags are set. While the data that is compared remains unchanged.

Example: CMP B

CPI Data (Compare immediate through the Accumulator)

This type of instruction compares the 8-bit data provided as operand within the instruction by the data available within the accumulator. This result is shown through the flags.

Example: CPI 50

ANA R/M (Logical AND register or memory with the accumulator)

This instruction executes the AND operation of the data available within the accumulator to the data available in the memory or register. After the operation of AND, S, P, Z will be changed to show the outcome of the comparison.

Example: ANA C

ANI data (And Immediate with Accumulator)

This instruction executes AND operation for the immediate 8-bit data provided as operand by the data available in the accumulator.

Example: ANI 35H

ORA R/M (OR Accumulator Register or Memory)

This instruction is used to perform OR operation of the data available within the accumulator by the data available in the memory location or register.

Example: ORA C

ORI data (OR Immediate Data)

The 8-bit data provided as an operand is ORed logically with the data within the accumulator. So, the output of this instruction can be saved within the accumulator.

Example: ORI 36H

XRA R/M (Exclusive OR Immediate with Accumulator)

This instruction is used to execute XOR operation through data available at the accumulator & the data present at the memory or register.

Example: XRA 2030

XRI data (Exclusive OR Accumulator)

This type of instruction is used to execute the XOR operation of the 8-bit data specified as operand & the data present at the accumulator. The output will be stored at the accumulator.

Example: XRI 30

RLC (Rotate Left Accumulator)

This instruction holds significance when there exists a need to rotate the bits present in the accumulator. Basically, for an 8-bit value, each bit is rotated or shifted left by one position. Also, the rotation of the last bit of the sequence i.e., D7, sets the CY flag.

RRC (Right Rotate Accumulator)

This instruction is used to rotate the bit toward the right with one position. So, in this case, D0 sets the CY flag.

Example: RRC

RAL (Rotate Accumulator Left)

This type of instruction is used to rotate the bits toward the left with one of the data available within the accumulator through the carry flag. Here, D7 can be shifted to hold the flag & the bit within the carry flag can be shifted to D0.

Example: RAL

RAR (Rotate Accumulator Right)

This type of instruction is mainly used to rotate the data bits to the right which are available within the accumulator by the carry flag. Here, D0 can be shifted to hold the flag & the carry bit can be moved to the D7 position.

Example: RAR

STC (Set the Carry Flag)

This type of instruction is used to set the carry flag (CF) to 1 by not affecting any other flags.

Example: STC

CMA (Complement the Accumulator)

This type of instruction generates the complement of data at the accumulator. So, this function does not change any of the flags.

Example: CMA

CMC (Complement the Carry Flag)

This type of instruction is used to complement the data available at the carry flag (CF). So this instruction does not affect any other flag.

Example: CMC

These types of instructions are mainly used to transfer or switch the microprocessor from one location to another. So, it simply changes the general sequential flow.

JMP address (Jump unconditionally)

This type of instruction is mainly used to transfer the series of the current program to that location of memory whose 16-bit address can be simply specified within the operand of the instruction.

Example: JMP 2014H

This is a conditional branching type instruction, where the series of current programs can be transferred to that specific location whose address can be provided at the operand. However this transferring mainly depends on the specified PSX flag.

Example: JZ 1200H

CALL address

This instruction shifts the control of a series of current programs toward the memory address available at the operand. However the PC gets decreased before transferring,

Example: CALL 2400H

RET (Return from the Subroutine)

This type of instruction can cause the unconditional return of the sub-routine to the actual program.

RST(Restart Instruction)

This type of instruction is mainly used to transfer the series from the main program to the interrupt service routine. Mostly, the transfer can be performed above one of the 8-bits which are indicated within the operand.

These instructions are mainly used to control the microprocessor operations. These instructions are discussed below.

NOP (No operation)

NOP stands for no operation. Once the 8085 microprocessor gets this instruction, then it does not perform any operation based on execution.

DI (Disable Interrupts)

DI is the disabling of the interrupt that is generated within the microprocessor. Interrupt resetting will allow disabling all the interrupts apart from TRAP.

EI (Enable Interrupts)

This type of instruction is mainly used to allow the interrupt. Once the interrupt enable pin is set then leads to enabling the interrupts within the system.

HLT (Halt & Enter Wait State)

Once the HLT interrupt is decoded through the microprocessor, it stops the current operation and waits for further instruction. To escape from the halt condition either a reset or an interrupt is necessary.

SIM (Set Interrupt Mask)

SIM is the set interrupt mask, which is used to execute the hardware interrupts programming & serial output.

RIM (Read Interrupt Mask)

RIM is the read interrupt mask that is used to situate the preferred data at the accumulator based on the serial input & interrupt.

Thus, this is all about an overview of the Instruction Set of the 8085 Microprocessor. The main function of instruction in an 8085 microprocessor is, it is a binary command used for executing an operation within the microprocessor over provided data. So, a set of instructions supported by the 8085 microprocessor is called an instruction set. Here is a question for you, what are the applications of the 8085 microprocessor?

Share This Post:

Meissner Effect in Superconductor

Javatpoint Logo

  • Microprocessor
  • Computer Fundamentals

Computer Network

Microprocessor Tutorial

JavaTpoint

Intel 8085 Instructions

An instruction of a computer is a command given to the computer to perform a specified operation on given data. In microprocessor, the instruction set is the collection of the instructions that the microprocessor is designed to execute.

The programmer writes a program in assembly language using these instructions. These instructions have been classified into the following groups:

Data Transfer Group

Instructions which are used to transfer the data from a register to another register from memory to register or register to memory come under this group.

Arithmetic Group

The instructions of this group perform arithmetic operations such as addition, subtraction, increment or decrement of the content of a register or a memory.

Logical Group

The instructions in this group perform logical operation such as AND, OR, compare, rotate, etc.

Branch Control Group

This group contains the instructions for conditional and unconditional jump, subroutine call and return, and restart.

Unconditional Jump

Conditional Jump

Unconditional CALL

Conditional CALL

Unconditional Return

Conditional Return

The restart instructions and locations are as follows:

Stack, I/O and Machine Control Group

This group contains the instructions for input/output ports, stack and machine control.

Youtube

  • Send your Feedback to [email protected]

Help Others, Please Share

facebook

Learn Latest Tutorials

Splunk tutorial

Transact-SQL

Tumblr tutorial

Reinforcement Learning

R Programming tutorial

R Programming

RxJS tutorial

React Native

Python Design Patterns

Python Design Patterns

Python Pillow tutorial

Python Pillow

Python Turtle tutorial

Python Turtle

Keras tutorial

Preparation

Aptitude

Verbal Ability

Interview Questions

Interview Questions

Company Interview Questions

Company Questions

Trending Technologies

Artificial Intelligence

Artificial Intelligence

AWS Tutorial

Cloud Computing

Hadoop tutorial

Data Science

Angular 7 Tutorial

Machine Learning

DevOps Tutorial

B.Tech / MCA

DBMS tutorial

Data Structures

DAA tutorial

Operating System

Computer Network tutorial

Compiler Design

Computer Organization and Architecture

Computer Organization

Discrete Mathematics Tutorial

Discrete Mathematics

Ethical Hacking

Ethical Hacking

Computer Graphics Tutorial

Computer Graphics

Software Engineering

Software Engineering

html tutorial

Web Technology

Cyber Security tutorial

Cyber Security

Automata Tutorial

C Programming

C++ tutorial

Control System

Data Mining Tutorial

Data Mining

Data Warehouse Tutorial

Data Warehouse

RSS Feed

  • Trending Now
  • Foundational Courses
  • Data Science
  • Practice Problem
  • Machine Learning
  • System Design
  • DevOps Tutorial
  • Registers of 8085 microprocessor
  • Flag register of 8086 microprocessor
  • Flag register in 8085 microprocessor
  • 80386 Microprocessor State After Reset
  • Types of Microprocessors
  • Bus organization of 8085 microprocessor
  • Serial I/O Lines in 8085 Microprocessor
  • Pin diagram of 8085 microprocessor
  • Addressing modes in 8086 microprocessor
  • Memory Segmentation in 8086 Microprocessor
  • Operating Modes of 80386 Microprocessors
  • Data Types and Addressing Modes of 80386/80386DX Microprocessor
  • Bus Cycles of 8086 Microprocessor
  • Architecture of 8085 microprocessor
  • 8255 microprocessor operating modes
  • Data transfer instructions in 8086 microprocessor
  • Reset Accumulator (8085 & 8086 microprocessor)
  • EFLAGS Registers of 80386 Microprocessor
  • General purpose registers in 8086 microprocessor

Types of Registers in 8086 Microprocessor

A microprocessor is a register-based clock-driven digital device that is used for data processing. It is a multipurpose device that is capable of producing outputs when provided binary data as input. In computers, the microprocessor is like the brain, handling tasks and calculations. Inside the microprocessor are tiny storage units called registers.

An 8086 microprocessor is 40 pin microprocessor, which was designed by INTEL in 1976. It is a 16-bit microprocessor that has 20 address lines and provides storage up to 1MB. It provides two modes of operation:

  • Minimum Mode, suitable for systems having multiple processors
  • Maximum Mode, suitable for systems having single processors.

Table of Content

General Purpose Registers

Segment Registers

Special Purpose Registers

Flag Register

Registers are storage blocks for temporary storage in microprocessors . They hold important information temporarily while the microprocessor works on it. Think of registers as tiny boxes where the microprocessor keeps things it needs to use right away.

In other words, one may also say that registers are like the memory of a computer’s brain, storing tiny bits of information that the microprocessor needs to work with quickly.

In 8086 microprocessor, the registers are categorized under following four types:

  • Flag Registers

These different types of registers of 8086 microprocessor are briefly discussed below.

The general purpose registers are present in execution unit of 8086 microprocessor . These are versatile registers that can be used for various tasks, such as storing numbers for calculations or holding memory addresses for data access. Each register serves a specific purpose, aiding the microprocessor in different types of tasks.

A general purpose register contains eight registers namely, AH,AL,BH,BL,CH,CL,DH,DL in which each register carries 8-bit data. It is used for temporary storage. When there is requirement to store data is which greater than 8-bit then these registers are used in pairs as AX,BX,CX,DX thus it effectively double their storage capacity. These register pairs can hold a maximum of 16-bit data.

General-Purpose-Registers

The functions of each general purpose registers are stated below:

  • Accumulator Register(AX): When ALU performs arithmetic and logical operations then accumulator register stores the operands of such operations.
  • Base Register(BX): The base register is used to hold the base address of memory location for reading and writing data into the memory.
  • Counter Register(CX): The counter register is used to hold 8-bit data during the rotate and shift instructions. It is also used to store loop counter during loop instructions.
  • Data Register(DX): During the multiplication and division operations, if the result is of 32-bits, then 16 bits from MSB is stored in DX register and bits from LSB is stored in AX register. This register is also used to hold the address and instruction for I/O

The Bus Interface Unit (BIU) of 8086 microprocessor. The segment registers are responsible for managing memory access. As the computer memory is segmented, the segment registers tracks the memory location of each and every segment. The segment registers contains four 16-bit registers namely, Code Segment(CS), Data Segment(DS), Stack segment(SS) and Extra Segment(ES). These registers are used to hold the 16 bits of starting address. Each segment register holds the starting address of its respective memory segment, allowing the microprocessor to quickly locate and access the data it needs during program execution.

Segment-Registers

The function of each segment registers are stated below:

  • Code Segment(CS): This register is used to store the address of the memory in which the program which is to be executed is stored.
  • Data Segment(DS): It is used to data which is used by the program frequently. It also stores the offset address or the data of the register that holds the offset address.
  • Stack Segment(SS): It is used to store the address as well as data in the memory while the subprogram is executing.
  • Extra Segment(ES): This register is used to hold the extra data by providing additional data segment in the memory.

The index and pointer registers are collectively called as special purpose registers. These are 16-bit registers used as memory pointers and These registers generates 20- bit physical address. There are five 16-bit special purpose registers namely, Stack Pointer(SP), Base Pointer(BP), Source Index(SI), Destination Index(DI) and Instruction Pointer(IP).

Special-Purpose-Registers

The function of each general purpose registers are stated below:

  • Stack Pointer(SP): Stack Pointer register is used to hold the topmost address of the stack memory, i.e., it stores the address of the memory location in which data was recently stored.
  • Base Pointer(BP): It is used to store the base address of the memory.
  • Source Index(SI): It is a memory pointer which is used to store the offset address of the source.
  • Destination Index(DI): It is a memory pointer which is used to store the offset address of the destination.
  • Instruction Pointer(IP): This register is used to hold the address of the next instruction which is to be executed.

The flag register is also called as status register. It is a 16-bit register which is a set of flip-flops. There are nine flags in this register.

Screenshot-2024-05-10-210808

The flag register is classified into two categories:

Conditional Flags

These flags are used to hold the result obtained by ALU i.e., by arithmetical and logical operations. There are six conditional flags:

  • Carry Flag(CF): If any arithmetic operation results in the production of carry in the MSB position then this extra bit is stored in the carry flag. The carry flag is set i.e. 1 when the carry is generated, otherwise is reset, i.e. 0.
  • Auxiliary Carry Flag(AF): If the carry is generated in the 4th bit from the LSB then that carry is called as auxiliary carry. The auxiliary carry flag is set i.e. 1 when the auxiliary carry carry is generated, otherwise is reset, i.e. 0.
  • Parity Flag(PF): This flag is used to store the parity of the result of any arithmetic and logical operation. The value of parity flag is 1 (i.e., set) when the result is of even parity(the number of 1’s in result is odd) whereas the value of parity flag is 0(i.e., reset) when the result is of odd parity(the number of 1’s in result is even).
  • Zero Flag(ZF): If the result of any arithmetic and logical operations results in zero, then this flag is set otherwise reset.
  • Sign Flag(SF): The value of sign flag is 1 (i.e., set) when the result of any operation performed by ALU results in a negative number, whereas its value is 0 (i.e., reset) when the result is a positive number.
  • Overflow Flag(OF): If the result is within the capacity of the register then overflow flag is reset, whereas if the result exceeds the value of the register then the flag is set.

Control Flags

These flags are used to control some specific operations of the processor with the help of some specific instructions. The 8086 microprocessor provides three control flags:

  • Trap Flag(TF): When the trap flag is set then the processor will execute the whole program at once, whereas the trap flag is reset the program will be executed in step-by-step sequence.
  • Interrupt Flag(IF): This flag is set when the maskable interrupt is enabled, whereas it is reset when the the maskable interrupt is disabled.
  • Direction Flag(DF): This flag is reset when the bits are accessed from higher memory address to lower memory address, whereas the direction flag is reset when the bits are accessed from lower memory address to higher memory address.

In this article we have gone through the types of registers in 8086,we have gone through different types of flags and gone their working in brief. As we have already seen there are four types of registers in 8086 microprocessor named as General Purpose Registers, Segment Registers, Special Purpose Registers and Flag Register.

Types of Registers in 8086 Microprocessor – FAQs

What is a microprocessor.

A microprocessor is a register-based clock-driven digital device which is used for data processing. It is a multipurpose device which is capable of producing outputs when provided binary data as input.

What is an interrupt in 8086 microprocessor?

An interrupt refers to a mechanism by which external devices or internal conditions can request the CPU’s attention to perform a specific task or handle an event.

What role does register plays in a microprocessor?

A register is a critical component of computer memory that stores data and instructions for quick processing. It serves as an efficient temporary storage area where information can be accessed and manipulated quickly in order to carry out complex tasks.

Please Login to comment...

Similar reads.

  • microprocessor
  • Electronics Engineering
  • Microprocessor

Improve your Coding Skills with Practice

 alt=

What kind of Experience do you want to share?

IMAGES

  1. 8085 Microprocessor and its General Architecture

    case study of 8085 microprocessor

  2. The Architecture of 8085 Microprocessor

    case study of 8085 microprocessor

  3. Architecture of 8085 microprocessor

    case study of 8085 microprocessor

  4. Architecture of 8085 microprocessor

    case study of 8085 microprocessor

  5. The Block Diagram of 8085 Microprocessor

    case study of 8085 microprocessor

  6. 8085 microprocessor IC

    case study of 8085 microprocessor

VIDEO

  1. 8085 simulator ||program of 8085 microprocessor #study #8085 @Mmkifamily... #nerist

  2. Lecture 2 / Microprocessors / 8085 Microprocessor Review and Architecture

  3. LEKHPAL BHARTI 8085 अपडेट ।COURT CASE । Joining कब तक।सोलर &NH2 केस से स्टे।

  4. 8085 Microprocessor

  5. PIN CONFIGURATION OF 8085 MICROPROCESSOR

  6. instruction set of 8085 in tamil

COMMENTS

  1. Architecture of 8085 microprocessor

    The 8085 microprocessor is an 8-bit microprocessor that was developed by Intel in the mid-1970s. It was widely used in the early days of personal computing and was a popular choice for hobbyists and enthusiasts due to its simplicity and ease of use. The architecture of the 8085 microprocessor consists of several key components, including the ...

  2. PDF A Specification of the intel 1 8085 Microprocessor: A Case Study

    A Specification of the intel 1 8085 Microprocessor: A Case Study Alfons Geser, Universit~t Passau, Fakultilt fiir Mathematik und Informatik, Postfach P540, D-8390 Passau ... and if so, what the precise reasons are. The case studies must have a "nontriviar' size, i.e. the modularization of the specification must be essential for an adequate ...

  3. Case Study

    Case Study - 8085 Microprocessor - Free download as PDF File (.pdf), Text File (.txt) or read online for free. The document discusses the 8085 microprocessor. It provides details about its architecture, features, advantages and disadvantages. Specifically, it notes that the 8085 is an 8-bit microprocessor introduced in 1977 with an 8-bit data ...

  4. Microprocessor

    When a microprocessor is executing a main program and whenever an interrupt occurs, the microprocessor shifts the control from the main program to process the incoming request. After the request is completed, the control goes back to the main program. There are 5 interrupt signals in 8085 microprocessor: INTR, RST 7.5, RST 6.5, RST 5.5, TRAP.

  5. A specification of the Intel 8085 microprocessor: a case study

    A specification of the Intel 8085 microprocessor: a case study; chapter . Free Access. Share on. A specification of the Intel 8085 microprocessor: a case study. Author: A. Geser. View Profile. Authors Info & Claims . Algebraic methods: theory, tools and applications October 1989 Pages 347-401. Published: 01 October 1989 Publication History.

  6. Intel 8085

    The Intel 8085 ("eighty-eighty-five") is an 8-bit microprocessor produced by Intel and introduced in March 1976. It is the last 8-bit microprocessor developed by Intel. It is software-binary compatible with the more-famous Intel 8080 with only two minor instructions added to support its added interrupt and serial input/output features.However, it requires less support circuitry, allowing ...

  7. 8085 Microprocessor

    Definition: 8085 is an 8-bit microprocessor as it operates on 8 bits at a time and is created with N-MOS technology.This microprocessor exhibits some unique characteristics and this is the reason it still holds popularity among the microprocessors.. Basically, 8085 was the first commercially successful microprocessor by Intel.As some of the architectural drawbacks associated with 8080 was also ...

  8. A specification of the intel 8085 microprocessor: A case study

    Abstract. As an instance for a large specification, an algebraic specification of the intel 8085 micro-processor is given. The specification is based on the concepts of hierarchical abstract types and conditional equations. With the help of the specification interpreter RAP, the specification is validated against some of its informal requirements.

  9. Exploring the Architecture of the 8085 Microprocessor: A ...

    The 8085 microprocessor communicates with external devices through input and output ports, facilitating data transfer and interaction with peripheral devices such as keyboards, displays, and ...

  10. A Specification of the intel 8085 Microprocessor: A Case Study

    An algebraic specification of the intel 8085 micro-processor is given, based on the concepts of hierarchical abstract types and conditional equations, which is validated against some of its informal requirements. As an instance for a large specification, an algebraic specification of the intel 8085 micro-processor is given. The specification is based on the concepts of hierarchical abstract ...

  11. PDF Over view of Microprocessor 8085 and its application

    III. Intel 8085 Microprocessor: Intel 8085 is an 8-bitNMOS microprocessor. It is 40 pin IC, requires 3 MHz speed of operation and clock cycle is 320 ns. It has 80 instructions and 246 commands(9).8-bit microprocessor is capable of addressing up to 64 K bytes (i.e. 216= 65536 bytes) of memory. Fig 1: Block diagram of Microprocessor 8085 (1 ...

  12. 8085 Microprocessor Course

    The 8085 is a popular 8-bit microprocessor that is used widely across the world to introduce students to microprocessor concepts and assembly language programming. In this free 8085 course, we will start off with understanding the basics of microprocessor fundamentals, then we will dive deep into the architecture of 8085 and its instruction set ...

  13. (DOC) 8085 Case study

    CASE-STUDY on 8085 Microprocessor : 8085 Micro Processor is a single board Microprocessor training/ Development Kit configured around the most widely used Microprocessor of today's world. 8085 provides 8K/32K bytes of RAM and 8K bytes of EPROM. The total on board memory can be very easily expanded to 64K bytes in an appropriate combination of ...

  14. 8085 Microprocessor Architecture : Features and Its Working

    What is the 8085 Microprocessor? Generally, the 8085 is an 8-bit microprocessor, and it was launched by the Intel team in the year of 1976 with the help of NMOS technology. This processor is the updated version of the microprocessor. The configurations of 8085 microprocessor mainly include data bus-8-bit, address bus-16 bit, program counter-16-bit, stack pointer-16 bit, registers 8-bit, +5V ...

  15. (PDF) The Design and Implementation of an Intel 8085 microprocessor

    Though the Intel 8085 is an obsolete microprocessor, it was chosen for this project as the focus primarily because the current EEE 401 syllabus uses the Intel 8085 as a case study into the architecture and programming of microprocessors.

  16. Instruction cycle in 8085 microprocessor

    The instruction cycle of the 8085 microprocessor consists of four basic steps, which are: Fetch: In this step, the microprocessor fetches the instruction from the memory location pointed to by the program counter (PC). The PC is incremented by one after the fetch operation. Decode: Once the instruction is fetched, the microprocessor decodes it ...

  17. Understanding 8085 Instruction Set and Assembly Language ...

    The 8085 microprocessor is a fundamental component in the realm of computer architecture, renowned for its versatility and widespread application. One of the crucial aspects of programming and…

  18. Unravelling the Wonders of Microprocessor 8085: A-Z Guide for Little

    In a nutshell, the Microprocessor 8085 is like the superhero of computers, making them work like a charm. It's a tiny genius that deserves a special place in the heart of every tech lover. Call to Action. So, dear readers, dive into the world of Microprocessor 8085 and explore the magic it brings to the tech universe.

  19. Instruction Set of 8085 Microprocessor & Its Classification

    The first commercially successful microprocessor is the 8085 microprocessor by Intel. This microprocessor was mainly developed to eliminate the drawbacks of 8080 architecture. 8085 microprocessor is an 8-bit microprocessor because at a time it works on 8-bits and the technology used to design this processor is N-MOS technology.As compared to other microprocessors, this microprocessor is very ...

  20. Bus organization of 8085 microprocessor

    The 8085 microprocessor has a 16-bit address bus, an 8-bit data bus, and various control signals that are used to manage data transfer and other operations. The address bus is used to specify the memory location or device with which the microprocessor wants to communicate. It is 16 bits wide, which allows the microprocessor to address up to 64K ...

  21. Instruction Set of 8085

    Intel 8085 Instructions. An instruction of a computer is a command given to the computer to perform a specified operation on given data. In microprocessor, the instruction set is the collection of the instructions that the microprocessor is designed to execute.. The programmer writes a program in assembly language using these instructions. These instructions have been classified into the ...

  22. Microprocessor Tutorials

    A microprocessor is a form of computer processor comprising a single integrated circuit, responsible for executing logic functions and controlling data processing operations. It integrates the logic, arithmetic, and control circuitry essential for fulfilling the duties of a computer's central processing unit within a compact architecture.

  23. Types of Registers in 8086 Microprocessor

    8085 Microprocessor 8085 Microprocessor is a predecessor of version 8086 Microprocessor, designed by Intel in 1976 with the help of NMOS technology. It includes a data bus of 8 bits, and 16 bits of the address bus, having a +5V voltage supply, and operates at 3.2 MHz single segment CLK. It has an internal clock generator and functions on a clock cy