R20 MP&MC Lab Manual
R20 MP&MC Lab Manual
INTRODUCTIONTOMASM
1. Switchonthecomputer.
2. Select“start->run”button.
3. Type“cmd”&clickok.
4. Pressalt+enterto getfullscreen.
5. Typecd.. &press “enter” button.
6. Repeatstep4.
7. Type ”cdMASM(or)Term86E” &pressenterbutton.
8. Type“edit” &press“enter”button
9. Typetheprogram&select“file->save as”
10. Savethefilewithanexetenxion“.asm”,(ex1.asm)
11. Select“file->exit”
12. Typethecommand“MASM(or)Term86Eprogramname.asm” &pressenter4 times.
13. Check if any errors / warnings are there in ur program ..if any errors are there
modifytheprogram bygivingthe command”edit programname.asm”
14. Againsavetheprogram.
15. Repeatstep12untiluget0errors&0 warnings.
16. Thentypethecommand“linkprogramname.obj” (ex1.obj)&pressenter4times
17. Thentypethecommand“debugprogramname.exe”(ex1.exe)&pressenter.
18. Givethecommand”u“ tonotethe address&opcodeof program.
19. Give the command” t“to check the registers update after each & every
instructionexecution,repeat this process until theprogram ends.
20. If theRESULT isin memorylocation givethecommand “dds:0000”
21. Toquitfromdebuggingmodetypethecommand“q”
22. Repeatthesameprocessfromstep 8toexecutethenextprogram.
Aim: To Write an Assembly Language Program to perform addition & subtract two 16-BitNumbers.
Apparatus:
Procedure:
Program:
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Output: AX =5645H
Subtraction Program:
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Output: AX =31FDH
RESULT: The Assembly Language Program to add &subtract two 16-bit numbers was executed successfully
by using MASM Software.
B. 16-BITUNSIGNED& SIGNEDMULTIPICATION&DIVISION
Aim: To Write an Assembly Language Program to Perform Multiplication and Division of signed
and unsigned Hexa decimal numbers.
Apparatus:
Procedure:
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Input: AX=4521H, BX=1324H
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Input:AX=4521H, BX=1324H
SIGNEDMULTIPLICATIONProgram:
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Input:AX=4521H, BX=1324H
SIGNEDDIVISIONProgram:
DATADATASEGMENT
X DW
4521HY DW
1324HZDW?
DATAENDS
CODESEGMENT
CWD ;ConvertWordintoDoubleWord
IDIV BX ;DividetheContentsofAXwithBX
IncludingSign.
MOV SI,OFFSETZ ;CopytheAddresspointedbyZintoSI.
CODE
ENDSENDS
TART
Input:AX=4521H, BX=1324H
Output:AX = FFFDH
(QUOTIENT)DX=0BB5H(RE
MAINDER)
RESULT: The Assembly Language Programto Perform Multiplication and Division of signed
andunsignedHexadecimalnumberswas successfullyexecuted.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
FactorialProgram:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
NDB04H
RES DW?
DATAENDS
CODESEGMENT
JZ EXIT ; JumptoLabelEXITifZF=1
MUL BL ;MultiplycontentsofALwithBL
JMP UP ;JumptoLabelUP
CODE
ENDSENDS
TART
Input:N=[0000]=04H
Output:RES=[0001]=18H
SquareofaNumberProgram:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
XDB08H
SQRDW(?)
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Input:X=[0000]=08H
Output:SQR=[0001]=40H
CubeofaNumberProgram:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
XDB08H
CUBEDW(?)
DATAENDS
CODESEGMENT
MUL BL ;MultiplycontentsofALwithBL
&RESULTisstored inAX.
MOV CUBE,AX ;Copy the contents of AX into
SQRMemoryLocation
CODE
ENDSENDS
TART
Input:X=[0000]=08H
Output:AX=200H
RESULT: The Assembly Language Programto find square, cube and factorial of a given
numberwassuccessfullyexecuted.
Aim:ToWriteanAssemblyLanguageProgramtofindthegivendataispositiveornegative.
Apparatus:
Software:MASM(or)TERM 86E
Program:
CS:CODE,DS:DATADATASE
GMENT
NUM DB12H
MES1DB10,13,"DATAISPOSITIVE$"
MES2DB10,13,"DATAISN
EGATIVE$"
DATAENDS
CODESEGMENT
INT 21H
CODE
ENDSENDS
TART
Input:NUM=[0000]= 08H
Output:DATAISPOSITIVE
RESULT: The Assembly Language Programto find the given data is positive or
negativewassuccessfullyexecuted.
Aim:ToWriteanAssemblyLanguageProgramtofind thegivendataisEvenorOdd
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
CS:CODE,DS:DATADATASE
GMENT
NUM DB15H
MES1DB10,13,"NUMBERISEVEN$"
MES2 DB 10,13,"NUMBER IS
ODD$"DATAENDS
CODESEGMENT
INT 21H
INT 21H
INT 21H
CODE
ENDSENDS
TART
Input:NUM=[0000]= 15H
Output:DATAISEVEN.
RESULT:The Assembly Language Programto find the given data is Even or Oddwas
successfullyexecuted.
C.COUNTINGLOGICAL0s&1s
Software:MASM(or)TERM 86E
Procedure
Program:
CS:CODE,DS:DATADATASE
GMENT
X DB
02AHONE
DB?
ZERODB?
DATAENDS
CODESEGMENT
INT 21H
CODE
ENDSENDS
TART
Output:ONE=[0001]=03
ZERO= [0002] =05
RESULT: The Assembly Language Programto find Logical ones and zeros in a given data wassuccessfullyexecut
3.PROGRAMSONARRAYS FOR8086
AdditionofNno‘s.
Aim:ToWritean AssemblyLanguageProgramtofind AdditionofNNumbers.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
LARGESTNUMBERProgram:
DATA
SEGMENTARRA
YDB
29H,15H,32H,08H,45H,17H
COUNT EQU
06HDATAENDS
CODESEGMENT
INC SI ;IncrementSIContentsbyone.
DEC CL ;DecrementCLContentsbyone.
JNZ L2 ;JumptoL2 ifCLis notequaltoZero.
CODE
ENDSENDS
TART
Input:LIST
[0000]=29H
[0001]=15H
[0002]=32H
[0003]=08H
[0004]=45H
[0005]=17H
Output:AX=00D4H
A. LARGEST/SMALLESTNUMBER
Aim:ToWriteanAssemblyLanguageProgramtofindLargest/ Smallestnumber.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
LARGESTNUMBERProgram:
ATASEGMENT
LIST
DB29H,15H,32H,08H,45H,17HC
OUNTEQU06H
DATAENDS
CODESEGMENT
Input:LIST
[0000]=29H
[0001]=15H
[0002]=32H
[0003]=08H
[0004]=45H
[0005]=17H
Output:AL=45H
SMALLESTNUMBERProgram
ATASEGMENT
LIST
DB29H,15H,32H,08H,45H,17HC
OUNTEQU06H
DATAENDS
CODESEGMENT
TART
Input:LIST
[0000]=29H
[0001]=15H
[0002]=32H
[0003]=08H
[0004]=45H
[0005]=17H
Output:AL=08H
B. ASCENDINGORDER / DESCENDINGORDER
Aim:To Write an Assembly Language Programto Sort the given numbers in Ascending
/DescendingOrder.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
ASCENDINGORDERProgram:
ATASEGMENT
LIST
DB29H,15H,32H,08H,45H,17HC
OUNTEQU06H
DATAENDS
CODESEGMENT
nto
ALRegister.
INC SI ;IncrementSIContentsbyone.
CODE
ENDSENDS
TART
Input: LIST
[0000]=29H
[0001]=15H
[0002]=32H
[0003]=08H
[0004]=45H
[0005]=17H
Output:
[0000]=08H
[0001]=15H
[0002]=17H
[0003]=29H
[0004]=32H
[0005]=45H
DescendingOrderProgram:
ATASEGMENT
LIST DB
29H,15H,32H,08H,45H,17HCOUNTE
QU06H
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
Input: LIST
[0000]=29H
[0001]=15H
[0002]=32H
[0003]=08H
[0004]=45H
[0005]=17H
Output:
[0000]=45H
[0001]=32H
[0002]=29H
[0003]=17H
[0004]=15H
[0005]=08H
RESULT: The Assembly Language Programto arrange given list of numbers in Ascending
andDescendingOrder was successfullyexecuted.
4. STRINGOPERATIONS
A. STRINGLENGTH
Aim:To Write an Assembly Language Programto Comapre two strings are equal or not
usingStringPrefix.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
Adress Opcode Label Mnemonics Operands Comments
ASSUMECS:CODE,DS:DATA
DATA
SEGMENTSTR1DB
"HELLO$"
MSG DB 10,13,"LENGTH
OFSTRINGIS:$"
LEN DB 03
DUP("$")DATAEND
S
CODESEGMENT
INC SI ;IncrementthecontentsofSIby1
JMP L1 ;JumptoLabelL1
INT 21H
CODE
ENDSENDS
TART
INPUT:STR1=HELLO
OUTPUT:LengthoftheString=5.
RESULT:AssemblyLanguageProgramtofindLengthofthestringwassuccessfullyexecuted.
B. STRINGDISPLAY
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
Adress Opcode Label Mnemonics Operands Comments
ASSUME
CS:CODE,DS:DATADATASE
GMENT
STRING DB 10,13,”THIS IS
ASAMPLESTRING$”
DATAENDS
CODESEGMENT
CODE
ENDSENDS
TART
INPUT:STRING=THIS ISASAMPLESTRING
OUTPUT:THISISASAMPLESTRING
READASTRINGFROM KEYBOARD& DISPLAYON MONITOR:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
MSG1DB10,13,"ENTERASTRING:$"
MSG2 DB 10,13,"YOU ENTERED THE STRING:
$"STRDB20 DUP("$")
DATA
ENDSCODESEG
MENT
START:MOV AX,DATAMOV
DS,AX
MOV DX,OFFSET
MSG1MOV AH,09H
INT21H
MOV SI,OFFSET
STRMOV AH,01H
L1:INT
21HMOV
[SI],ALINCSI
CMP
AL,0DHJNZ
L1
L2: MOV DX,OFFSET
MSG2MOV AH,09H
INT21H
MOV DX,OFFSET
STRMOV AH,09H
INT21HMOV
AH,4CHINT
21H
CODE
ENDSENDS
TART
INPUT:ENTERASTRING: HELLO
OUTPUT:YOUENTEREDTHESTRING:HELLO
RESULT:Assembly Language Programto display given string are equal or not using String
Prefixwassuccessfullyexecuted.
C. STRINGCOMPARISON
Aim:To Write an Assembly Language Programto Compare two strings are equal or not
usingStringPrefix.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
Adress Opcode Label Mnemonics Operands Comments
ASSUMECS:CODE,DS:DATA
DATA
SEGMENTSTR1DB
"HELLO$"
MSG1DB10,13,"STRINGSAREE
QUAL$"
MSG2DB10,13,"STRINGSAREN
OTEQUAL$"
STR2 DB
"HEPLO$"DATAEN
DS
CODE
SEGMENTORG1
000H
START: MOV AX,DATA ;CopyDataSegmentStartingAddress
intoAXRegister
MOV DS,AX ;CopytheContentofAXintoDS
MOV ES,AX ;CopytheContentofAXintoES
LEA SI,STR1 ;Copytheoffset addressofSTR1into
SI
LEA DI,STR2 ;CopytheaddressofSTR1intoDI
MOV CL,05 ;CopytheCountValue05intoCL
CLD ;CleartheDirectionalFlag
CODE
ENDSENDS
TART
INPUT:STR1=HELLO
STR2=HEPLO
OUTPUT:StringsarenotEqual.
RESULT:Assembly language programto Compare two strings are equal or not using String
Prefixwassuccessfullyexecuted.
D. STRINGREVERSE&PALINDROME
Apparatus:
Software:MASM(or)TERM 86E
Hardware: PC,KeyBoard/8086Trainer Kit,R.P.S
Procedure
Program:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
STR1 DB
"HELLO$"STR2DB255
DUP("$")
MSG1DB10,13,"STRINGISP
ALINDROME$"
MSG2DB10,13,"STRINGISNOTP
ALINDROME$"
MSG3 DB 10,13,"STRING IN
REVERSEIS:$"
DATAENDS
CODESEGMENT
START: MOV AX,DATA ;CopyDataSegmentStartingAddressintoAX
Register
INPUT:STR1=HELLO.
OLLEH.Stringisnota
Palindrome.
RESULT: The Assembly Language Programto Reverse the given string & checking wheteher it is
apalindrome or notwas successfullyexecuted.
5. DIGITAL CLOCKDESIGNUSING8086
A. DESIGNINGCLOCKUSINGINT21HINTERRUPT.
Aim:ToWritean AssemblyLanguageProgramfordesigningclockusingint21hinterrupt.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
ASSUME
CS:CODE,DS:DATADATASE
GMENT
$'HRDB?
MIN DB ?
SEC DB ?
MSEC DB ?
DATAENDS
CODE
SITS, KADAPA Page39
Dept of E.C.E Microprocessors & Microcontrollers LAB
SEGMENTSTAR
T:
MOV
AX,DATAMOV
DS,AXMOV
AH,2CHINT
21H
MOV
HR,CHMOV
MIN,CLMOV
SEC,DHMOV
MSEC,DLMOV
AH,09H
LEA
DX,MESSAGEINT
21H
MOV AL,HR
AND
AL,ALAAM
MOV
BX,AXCALL
DISPLAYMOV
DL,':'MOV
AH,02HINT 21H
MOV
AL,MINAAM
MOV
BX,AXCALL
DISPLAYMOV
DL,':'MOV
AH,02HINT 21H
MOV
AL,SECAAM
MOV
BX,AXCALL
DISPLAYMOV
DL,'.'MOV
AH,02HINT 21H
MOV
AL,MSECAAM
MOV
BX,AXCALL
DISPLAYMOV
AH,4CHINT
21H
DISPLAYPROCNEAR
MOV
DL,BHADD
DL,30HMOV
AH,02HINT2
1HMOV
DL,BLADD
DL,30HMOV
AH,02HINT
21H
RET
DISPLAY
ENDPCODE
ENDSENDSTA
RT
OUTPUT:
CURRENTTIMEIS:18:35:50:100
RESULT:Assembly Language Programfor designing clock using int 21h interrupt was
executedsuccessfully.
B. DESIGNINGCLOCKUSINGDOSINTERRUPT FUNCTIONS.
Apparatus:
Software:MASM(or)TERM 86E
Procedure
Program:
;UsedINTERRUPTS
;AH=2CH//Getsthesystemdate
;AH=02h
;For2CH
;Hours isin CH
; Minutesisin CL
;SecondsisinDH
.MODELSMALL
.DATA
.CODE
START: MOV
AX,@DATAMOVDS,AX
HOUR:
MOV
AH,2CHINT2
1HMOV
AL,CHAAM
MOV
BX,AXCALL
DISP
MOV
DL,':'MOVAH,0
2H
INT
21HMINUTES
:MOV
AH,2CHINT2
1HMOV
AL,CLAAM
MOV
BX,AXCALL
DISPMOV
DL,':'MOV
AH,02HINT
21H
Seconds:MOV
AH,2CHINT2
1HMOV
AL,DHAAM
MOV
BX,AXCALL
DISPMOV
AH,4CHINT
21H
DISP
PROCMOV
DL,BHADD
DL,30HMOV
AH,02HINT2
1HMOV
DL,BLADD
DL,30HMOV
AH,02H
INT
21HRET
DISP
ENDPENDS
TART
(OR)
.MODELSMALL
.STACK100H
.DATA
PROMPTDB'CURRENTSYSTEM TIMEIS:$'
TIMEDB '00:00:00$'
.CODE
MAINPROC
SITS, KADAPA Page45
Dept of E.C.E Microprocessors & Microcontrollers LAB
MOV AX,
@DATAMOV
DS,AX
LEA BX,
TIMECALL
GET_TIMELEA
DX,
PROMPTMOVAH,
09HINT21H
LEA DX,
TIMEMOV
AH,
09HINT21H
MOV AH,
4CHINT21H
MAIN
ENDPGET_TIME
PROC
PUSH
AXPUSH
CXMOV AH,
2CHINT21H
MOVAL,CHCALL
CONVERTMOV
[BX],
AXMOVAL,CLCA
LL
CONVERTMOV
[BX + 3],
AXMOVAL,DHCA
LL
CONVERTMOV
[BX + 6],
AXPOPCX
POP
AXRET
GET_TIME
ENDPCONVERT
PROCPUSHDX
MOV AH,0
MOV DL,
10DIVDL
OR AX,
3030HPOPDX
RET
CONVERT
ENDPEND
MAINOUTPUT:
CURRENTSYSTEMTIME IS :18:36:10
RESULT:An Assembly Language Programfor designing clock using DOS Interrupt functions
wasexecutedsuccessfully.
C. DESIGNINGCLOCKBYREADINGSYSTEMTIME
Apparatus:
Software:MASM(or)TERM 86E
Hardware: PC,KeyBoard, 8086TrainerKit, R.P.S
Procedure
Program:
.MODEL SMALL
.DATA
IS:"HOURDB2 DUP(0),':'
MINDB2 DUP(0),':'
SECDB2 DUP(0),'$'
.CODE
MOV
AX,@DATAMOV
DS,AXMOVAH,2
CHINT 21H
MOV
AL,CHAAM
ADD
AX,3030HMOV
HOUR,AHMOV
HOUR+1,ALMOV
AL,CL
AAM
ADD
AX,3030HMOV
MIN,AHMOV
MIN+1,ALMOV
AL,DHAAM
ADD
AX,3030HMOV
SEC,AHMOV
SEC+1,ALMOV
AH,09HLEA
DX,MSGINT
21H
MOV
AH,4CHINT
21H
END
(OR)
.MODEL SMALL
.DATA
"HRSDB?,?,':'
MINSDB?,?,':'
DADB?,?, '/'
MONDB?,?, '/'
YEADB?,?,'(DD/MM/YY)',10,13,'$'
.CODE
MOV
AX,@DATAMOV
DS,
AXMOVAH,2CHI
NT 21H
MOV
AL,CHAAM
ADD AX,
3030HMOV HRS,
AHMOV HRS+1,
ALMOV
AL,CLAAM
ADD AX,
3030HMOV
MINS, AHMOV
MINS+1,ALMOV
AL,DHAAM
ADD AX,
3030HMOV
SEC, AHMOV
SEC+1,ALMOV
AH, 2AHINT
21H
MOV AL,
DLAAM
ADD
AX,3030HMOV
DA,AHMOV DA
DHAAM
ADD AX,
3030HMOV
MON,AHMOV
MON+1,ALADD
CX, 0F830HMOV
AL, CLAAM
ADD AX,
3030HMOV
YEA,AHMOV
YEA+1,ALLEA
DX,MSGMOV
AH,09HINT 21H
MOV
AH,4CHINT
21H
END
OUTPUT:
THE TIME IS :
18:37:20THEDATEIS:21
/12/22
OR AX,3030H
INT 21H
CODE ENDS
END START
C.ASCII MULTIPLICATION:
ASSUME CS:CODE,DS:DATA
DATA SEGMENT
CODE SEGMENT
START:
XOR AX,AX
XOR BX,BX
MOV AL,004H
MOV BL,09H
MUL BL
AAM
OR AX,3030H
INT 21H
CODE ENDS
END START
D.ASCII DIVISION:
ASSUME CS:CODE,DS:DATA
DATA SEGMENT
CODE SEGMENT
START:
XOR AX,AX
XOR BX,BX
MOV AX,0609H
MOV BL,09H
AAD
DIV BL
OR AX,3030H
INT 21H
CODE ENDS
END START
RESULT:
The assembly language program to find
a. ASCII addition
b. ASCII subtraction
c. ASCII multiplication
d. ASCII division were executed successfully by using MASM SOFTWARE.
PROCEDURE:
Double click on DOS Box(0.74-3)
window is opened like this(z:\>)
In that type
z:\> mount c c:\masm then enter and type
z:\>c:
c:\>edit and enter
Window is opened in blue color
Type the program
In file save the program
In file exit
Again black window is opened
In that type MASM filename.asm & four enters
type -->link filename.obj & four enters
type--> debug filename.exe &one enter
type t
t
t
until int 21
After that type Q for quit the program
Again type edit to go to blue window for new program
software required:
MASMM SOFTWARE
PROCEDURE:
Double click on DOS Box(0.74-3)
window is opened like this(z:\>)
In that type
z:\> mount c c:\masm then enter and type
z:\>c:
c:\>edit and enter
Window is opened in blue colour
Type the program
In file save the program
In file exit
Again black window is opened
In that type MASM filename.asm & four enters
type -->link filename.obj & four enters
type--> debug filename.exe &one enter
type t
t
t
until int 21
After that type Q for quit the program
Again type edit to go to blue window for new program
PROGRAM:
A.BCD TO ASCII
ASSUME CS:CODE
CODE SEGMENT
START:
MOV AL,98H
MOV AH,AL
MOV CL,04H
SHR AL,CL
AND AX,0F0FH
OR AX,3030H
INT 03H
CODE ENDS
END START
B.ASCII TO BCD
ASSUME CS:CODE
CODE SEGMENT
START:
MOV AX,3636H
AND AX,0F0FH
SITS, KADAPA Page57
Dept of E.C.E Microprocessors & Microcontrollers LAB
MOV CL,04H
SHL AH,CL
OR AL,AH
AND AH,00H
INT 03H
CODE ENDS
END START
SOFTWARE REQUIRED:
MASM SOFTWARE
PROCEDURE:
Double click on DOS Box(0.74-3)
window is opened like this(z:\>)
In that type
z:\> mount c c:\masm then enter and type
z:\>c:
c:\>edit and enter
Window is opened in blue colour
Type the program
In file save the program
In file exit
Again black window is opened
In that type MASM filename.asm & four enters
type -->link filename.obj & four enters
type--> debug filename.exe &one enter
type t
t
t
until int 21
After that type Q for quit the program
Again type edit to go to blue window for new program
PROGRAM:
ASSUME CS:CODE,DS:DATA
DATA SEGMENT
N1,DW 0010
DATA ENDS
CODE SEGMENT
START:
MOV AX,DATA
MOV DS,AX
MOV AX,N1
MOV BX,AX
AND BX,000FH
AND AX,00F0H
MOV CL,04H
SHR AX,CL
MOV DX,16
MUL DX
ADD AX,BX
INT 21H
CODE ENDS
END START
SITS, KADAPA Page59
Dept of E.C.E Microprocessors & Microcontrollers LAB
B.ASCII TO DECIMAL
ASSUME CS:CODE,DS:DATA
DATA SEGMENT
ASCII DW " "
DATA ENDS
CODE SEGMENT
START:
MOV AX,DATA
MOV DS,AX
MOV AX,ASCII
SUB AX,30H
INT 21H
CODE ENDS
END START
SOFTWARE REQUIRED:
MASM SOFTWARE
PROCEDURE:
Double click on DOS Box(0.74-3)
window is opened like this(z:\>)
In that type
z:\> mount c c:\masm then enter and type
z:\>c:
c:\>edit and enter
Window is opened in blue colour
Type the program
In file save the program
In file exit
Again black window is opened
In that type MASM filename.asm & four enters
type -->link filename.obj & four enters
type--> debug filename.exe &one enter
type t
t
t
until int 21
After that type Q for quit the program
Again type edit to go to blue window for new program
PROGRAM:
ASSUME CS:CODE,DS:DATA
CODE SEGMENT
START:
MOV AX,0809H
MOV CL,04H
SHL AH,CL
OR AL,AH
AND AH,00H
INT 03H
CODE ENDS
END START
ASSUME CS:CODE,DS:DATA
CODE SEGMENT
START:
MOV Al,27H
MOV AH,AL
MOV CL,04H
SHR AH,CL
SITS, KADAPA Page61
Dept of E.C.E Microprocessors & Microcontrollers LAB
AND AX,0F0FH
INT 03H
CODE ENDS
END START