Microprocessor 339
Microprocessor 339
Pune-412 105
Department of Computer
Engineering 2023-24[4th
Sem]
Micro-project Report
of Microprocessor
(MIC) On
Assembly Language Program of Conversion of The
String And Reversal Of The Given String
Submitted by:
CERTIFICATE
This is to certify that Project report entitled Assembly Language Program of 8086 of
Conversion of the String And Finding Reverse of The String is submitted in the partial
fulfillment of requirement for the award of the Diploma in Compute Engineering by
Maharashtra State Board of Technical Education as record of students' own work carried
out by them under the guidance and supervision at Ajeenkya DY Patil School Of
Engineering (Charholi), during the academic year 2023-24.
1. Brief Introduction:
8086 Microprocessor is an enhanced version of 8085 Microprocessor 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.
o 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.
o The 8086 microprocessor is a 16-bit, N-channel, HMOS microprocessor. Where
the HMOS is used for "High-speed Metal Oxide Semiconductor".
o Intel 8086 is built on a single semiconductor chip and packaged in a 40-pin IC
package. The type of package is DIP (Dual Inline Package).
o Intel 8086 uses 20 address lines and 16 data- lines. It can directly address up to 220
= 1 Mbyte of memory.
o It consists of a powerful instruction set, which provides operation like division
and multiplication very quickly.
o 8086 is designed to operate in two modes, i.e., Minimum and Maximum mode. tasks.
IV. Error Handling and User Feedback : Implement robust error handling and
provide feedback to users. integrate error checks within the assembly code to
handle invalid inputs or unexpected conditions. Ensure that the GUI displays
informative messages to guide users in case of errors.
V. Testing within the Tasm Environment: Verify the functionality of the GUI
and assembly code using TASM's emulator. Conduct thorough testing within
the TASM environment to identify and address any issues with the GUI
components and the associated assembly code, ensuring a smooth user
experience.
VI. Testing and Debugging: Participants will learn to test and debug their
assembly language programs using GUI Turbo Assembler (TASM) tools. They
will practice identifying and fixing errors in their code, gaining proficiency in
troubleshooting techniques and improving the reliability of their programs.
4. Collecting information
Diksha Pawar
5. Making proposal
Om Bhintade
7. Preparation of final
project report
.MODEL SMALL
.STACK 200
.DATA
MSG DB 'ENTER A STRING IN SMALL LETTER: ','$'
MSG1 DB 'OUTPUT STRING: ','$'
STRING DB 20, 22 DUP('?')
.CODE
.STARTUP
LEA DX, MSG
MOV AH, 09H
INT 21H
MOV BX, DX
MOV AH, 0
MOV AL, DS:[BX+1]
ADD BX, AX ; POINT TO END OF STRING.
UPPER_CASE:
RET
Output 1:
Program:
ORG 100H
.MODEL SMALL
.STACK 100H
.DATA
.CODE
MAIN PROC FAR
MOV AX,@DATA
MOV DS,AX
CALL REVERSE
LEA DX,STRING
MAIN ENDP
REVERSE PROC
MOV CX, 0H
LOOP1:
PUSH [SI]
INC SI
INC CX
JMP LOOP1
LABEL1:
LOOP2:
JE EXIT
POP DX
XOR DH, DH
MOV [SI], DX
INC SI
DEC CX
JMP LOOP2
EXIT:
REVERSE ENDP
END MAIN
RET
OUTPUT:
Skill Development:
i Low-Level Programming Skills: Working with assembly language enhances
participants' proficiency in low-level programming. They learn to write code
that directly interacts with the hardware, gaining insights into memory
management, register usage, and instruction execution.
vii Critical Thinking and Analytical Skills: Analysing the performance of assembly
code requires participants to critically evaluate different approaches and make
informed decisions based on their understanding of the underlying hardware. This
enhances their critical thinking and analytical skills.
project focused on string conversion and reverse string operations using the 8086
microprocessor in GUI Turbo Assembler has provided valuable insights into low-level
programming and assembly language. By leveraging the capabilities of the 8086
microprocessor, we were able to develop efficient routines for converting strings and
reversing their order.
Mrs.Urmila Burde
(Guide of Project)