0% found this document useful (0 votes)
14 views13 pages

G25 Mic

This project report details the implementation of a program to find a given character in a string using the Intel 8086 microprocessor. It includes an introduction to the 8086 architecture, the methodology used, a flowchart, and the assembly code for the task. The report also discusses the resources used, conclusions drawn from the project, and potential future enhancements.

Uploaded by

ijmrset64
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
14 views13 pages

G25 Mic

This project report details the implementation of a program to find a given character in a string using the Intel 8086 microprocessor. It includes an introduction to the 8086 architecture, the methodology used, a flowchart, and the assembly code for the task. The report also discusses the resources used, conclusions drawn from the project, and potential future enhancements.

Uploaded by

ijmrset64
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 13

MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION

MUMBAI PROJECT REPORT ON


“FIND THE GIVEN CHARACTER IN A
STRING”
UNDER THE GUIDANCE OF
Ms.S.A.Tone

DEPARTMENT OF COMPUTER
ENGINEERING DR. D. Y. PATILPOLYTECHNIC,
KASBA BAWADA KOLHAPUR
SEMESTER :-IV

YEAR :- 2023-24
SUBMITTED BY :-

Sr. Roll No Name


No
1. 2206 Sanket Dadaso Shinde
2. 2207 Harshvardhan Deepak
Gharge
3. 2208 Sarthak Vinod Shinde
4. 2209 Sujal Mahesh Powar
5. 2210 Sakshi Sham Jadhav
Certificate
This to certify that Mr/Ms………….…………………G25……………………………………
Roll No 2206-2210 of 4th semester of Diploma in Computer Engineering of
Institute, Dr . D. Y. Patil Polytechnic (Code : 0539) has completed the
Micro- Project satisfactorily in subject – MIC(22415) for the academic year
2023 – 2024 as prescribed in the curriculum.

Place: Kolhapur Enrollment No: 2205390173


2205390174
2205390175
2205390178
2205390181

Date Exam Seat No : 200422-200426

Subject Teacher Head of the department Principal


ACKNOWLEDGMENT

The success & find outcome of this project required a lot of guidance &
assistance from many people and I am extremely privileged to have got all
along the completion of our project All that we have done is only due to such
supervision & assistance & I would not for get to thanks them.

I owe my deep gratitude to our project guide Ms.S.A.Tone who took keen
interest on our project work & guides us all along , till the completion of our
project work by providing all the necessary information for developing a
good system.

I am thankful too & fortunate enough to get constant encouragement,


support & guidance from all teaching staffs of Computer Engineering which
help us in successfully completing our project work

Date :

Place :
INDEX:

SR. CONTENT PAGE


NO. NO.
1 Introduction 3

2 Course Outcome 3

3 Literature Review 3

4 Actual Methodology Used 4-6


1. Algorithm
2. Flowchart
3. Code
5 Output 7
6 Actual Resource Used 8

7 Conclusion 8
8 Future Scope 9

9 Reference 9
FIND THE GIVEN CHARACTER IN A STRING

Find the given character in a String

MICROPROCESSOR 8086:
8086 Microprocessor is an enhanced version of 8085Microprocessor that was designed by
Intel in 1976. It is a 16-bit Microprocessor having 20 address lines and16 data lines that provides up
to 1MB storage. It consists of powerful instruction set, which provides operations like multiplication
and division easily.

The Intel 8086, commonly known as the 8086, is a 16-bit microprocessor introduced by
Intel in 1978. It is part of the x86 family of microprocessors and is considered one of the most
significant microprocessors in computer history, as it set the foundation for the modern PC
architecture.

The 8086 microprocessor was based on a complex instruction set computing (CISC)
architecture and had a clock speed of up to 10 MHz. It had a 16-bit data bus, which allowed itto
process data in 16-bit chunks, and a 20-bit address bus, which allowed it to address up to 1 MB
of memory. One of the key features of the 8086 was its backward compatibility with the earlier
Intel 8080 and 8085 microprocessors.

The 8086 microprocessor was widely used in early IBM-compatible personal computers (PCs)
and served as the foundation for the x86 architecture, which is still used in modern PCs
today.Its success and popularity laid the groundwork for the rapid evolution of personal
computing and shaped the modern digital era.

It supports two modes of operation, i.e. Maximum mode and Minimum mode. Maximum mode is
suitable for system having multiple processors and Minimum mode is suitable for system having a
single processor.

Features of 8086:
The Intel 8086 microprocessor, a 16-bit processor released in 1978, introduced
several features that were ground-breaking at the time and have had a lasting impact on the field
of microprocessors. Some of the key features of the 8086 include:

1
FIND THE GIVEN CHARACTER IN A STRING

 16-bit architecture

 20-bit address bus

 8-bit and 16-bit data bus

 Segmented memory addressing

 14 registers including four 16-bit general-purpose registers

 Instruction queue and pipelining

 Support for interrupts and multiple interrupt priorities

 Maximum clock frequency of 5 MHz.

2
FIND THE GIVEN CHARACTER IN A STRING

Introduction:
The topic “Find the given character in a String” refers to a specific task To find
character number in a given String using the Intel 8086 processor. The Intel 8086 is a 16-bit
microprocessor with a segmented memory addressing scheme and is part of the x86 family of
processors. This task typically involves loading a string of characters into the 8086's memory
,Finding the given character number in a given string. The task may involve various instructions
and techniques specific to the 8086 architecture, such as string manipulation instructions ,and
etc String operations. Implementing this task in 8086 assembly language requires a good
understandingof the processor's architecture, memory addressing, data manipulation
instructions, and flow control techniques.

Course outcomes:
 Write Assembly Language Program For The Given Problem.
 Develop Assembly Language Program Using Assembler.
 Use Instructions For Different Addressing Modes.

Literature Review:

1. OPENAI :
Website : chat.openai.com

OpenAI is an artificial intelligence research laboratory consisting of a team of


researchers and engineers dedicated to developing advanced AI models and algorithms. They
are known for creating state-of-the-art language models such as GPT-3, which can perform a
wide range of natural language processing tasks.
2. Google Gemini:
Website: https://deepmind.google/technologies/gemini/

Google Gemini is a family of large language models created by Google AI. It includes
different variations, from powerful versions for complex tasks (like Gemini Ultra) to efficient models
designed for mobile devices (like Gemini Nano).

3
FIND THE GIVEN CHARACTER IN A STRING

Actual Methdology used:

1. ALGORITHM

Step 1: Define the variable in the data segment declare string which stores the “Computer
Engineering$” String.

Step 2: Define the code segment and set the segment registers cs and ds to point the segments.

Step 3: Load the Effective address of the String in SI pointer.

Step 4: Initialize the Counter CL with zero.

Step 5: Start the loop labeled as “up” using the “jmp” instruction.

Step 6: Load the value of SI pointer in AL register.

Step 7: Compare the Characters with “t” from the Starting of the String using the cmp instruction.

Step 8:
If they are equal (i.e the Character “t” is reached) then
1)jump to exit label using je instruction.
2)After reaching the exit label, increment the counter by 1.to count the character number.

Step 9: If they are not equal (i.e the “t” character is not found at this location)then
1)increment the SI pointer by one.
2)increment the counter by 1 for counting.
And jump the up position using jmp instruction.

Step10: After the all instructions, end the code segment.


End the Program.

4
FIND THE GIVEN CHARACTER IN A STRING

2. FLOWCHART

5
FIND THE GIVEN CHARACTER IN A STRING

3. Code

Data segment
String db “Compute Engineering$”
Data ends
Code segment
Assume cs:code ,ds:data
Mov ax, data
Mov ds, ax
LEA si,String
Mov cl,00h
Up: mov al,[si]
Cmp al,”t”
Je exit
Inc cl,
Inc si
Exit: inc cl
Int 03h
Code ends
End

6
FIND THE GIVEN CHARACTER IN A STRING

Output:

7
FIND THE GIVEN CHARACTER IN A STRING

Actual Resources Used:

Sr. No. Hardware specification Specification

1. Processor Intel Core i3

2. Random access Memory (RAM) 8 GB(Minimum)

3. Hard Drive Disk (HDD) 40 GB(Minimum)

Sr. No. Software specification Specification

1. Operating System Windows/Linux

2. Software DOSBox 74-0

3. Language used Assembly Language of 8086

Conclusion:

The 8086 microprocessor demonstrate how to find the given character in a specified given string.
The code utilizes the features of the 8086 processor, such as the 16-bit architecture,segmented
memory addressing, and various instructions like "Mov", "Lea", "Cmp","Inc", and "Int 3" to achieve
the desired functionality.
The flowchart representation helps visualize the flow of execution in the code. Understanding
the features and capabilities of the 8086 processor allows programmers to effectively utilize its power
for string manipulation andother tasks in assembly language programming.

8
FIND THE GIVEN CHARACTER IN A STRING

Future Scope:
The future scope of a project involving finding a given character in a string can be quite broad,
depending on various factors such as the context of application, the scale of the problem, and the
efficiency requirements. It includes here of the following:
1. Optimization: Enhance the efficiency of the algorithm used to search for the character in the
string. This could involve implementing more advanced search algorithms, optimizing the
existing algorithm, or utilizing hardware-specific optimizations.
2. Error Handling: Implement robust error handling to handle edge cases, such as invalid input
strings or characters.
3. Performance Analysis: Conduct thorough performance analysis and profiling to identify
bottlenecks and areas for further optimization.
4. Documentation and Testing: Improve documentation to make the codebase more
understandable and maintainable, and implement comprehensive testing to ensure the correctness
and reliability of the program.
5. Portability: Adapting the code to be compatible with different 8086-based microprocessor
variants or other microprocessor architectures, making it portable to different systems and
environments.
6. Documentation and tutorials : Creating comprehensive documentation and tutorials to help
users understand and implement the string conversion functionality in their projects, providing
guidance and support for developers interested in learning about 8086 assembly language and
string manipulation techniques.

Reference:
1. www.openai.com
2. https://gemini.google.com
3. www.geeksforgeeks.org

You might also like