Microprocessor Lab Manual Solutions 4th Semester ISE
-
Upload
saami-matloob -
Category
Documents
-
view
6.576 -
download
348
description
Transcript of Microprocessor Lab Manual Solutions 4th Semester ISE
![Page 1: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/1.jpg)
06CSL48 - Microprocessor Lab Manual Solutions 4thSemester
Visvesvaraya Technological UniversityBCETISE
1. a) Search a key element in a list of ‘n’ 16-bit numbersusing the Binarysearch algorithm.
Program :;binary search.MODEL SMALL.STACK.DATA
ARR DW 0111H,0112H,0113H,0114H,0115HLEN DW ($-ARR)/2KEY EQU 0115H
MSG1 DB "KEY IS FOUND AT "RES DB " POSITION",13,10,"$"
MSG2 DB 'KEY NOT FOUND!!!!!!!!!!!!!. $'.CODE
MOV AX,@DATAMOV DS,AXMOV BX,00MOV DX,LENMOV CX,KEY
AGAIN:CMP BX,DXJA FAILMOV AX,BXADD AX,DXSHR AX,1MOV SI,AXADD SI,SICMP CX,ARR[SI]JAE BIGDEC AXMOV DX,AXJMP AGAIN
BIG:JE SUCCESSINC AXMOV BX,AXJMP AGAIN
SUCCESS:ADD AL,01ADD AL,'0'MOV RES,ALLEA DX,MSG1JMP DISP
FAIL:LEA DX,MSG2
![Page 2: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/2.jpg)
DISP:MOV AH,09HINT 21HMOV AH,4CHINT 21HEND
![Page 3: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/3.jpg)
2. a) Write ALP macros:i. To read a character from the keyboard in the
module (1) (in a different file)ii. To display a character in module(2) (from different
file)iii. Use the above two modules to read a string of
characters from the keyboard terminated by the carriagereturn and print the string on the display in the next line.
Program:;2A) FPROGRAM TO WRITE ALP MACROS:;(1) TO READ A CHARACTER FROM THE KEYBOARD IN THE MODULE(1);(2) TO DISPLAY A CHARACTER IN MODULE(2)(FROM DIFFERENT FILE);(3) TO READ A STRING OF CHARACTERS TERMINATED BY THE; CARRIAGE RETURN AND DISPLAY THE STRING IN THE NEXT LINE.INCLUDE READKB.MAC ;Include file containing macro to read character from thekeyboard.INCLUDE DISPCHAR.MAC ;Include file containing macro to display a character from the
;keyboard..MODEL SMALL.STACK.DATA
ARR DB 40 DUP(?).CODE
MOV AX,@DATA ;To initialise Data Segment(DS) RegisterMOV DS,AXMOV SI,0 ;Set array index to 0
BAK: READ ARR[SI] ;Read a character from the keyboardINC SI ;and store it in arrCMP AL,13 ;check for carriage returnJNZ BAK ;read the next character if not carriage returnMOV DL,10 ;Move the cursor to beginning of the next lineMOV AH,2INT 21HMOV DL,13MOV AH,2INT 21HMOV SI,0
AGAIN: DISP ARR[SI] ;Display the string character by characterINC SI ;until carriage return is encounteredCMP AL,13JNZ AGAINMOV AH,4CHINT 21HEND
DISPCHAR.MAC
DISP MACRO LOC2MOV DL,LOC2
![Page 4: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/4.jpg)
MOV AH,02HINT 21HENDM
READKB.MAC
READ MACRO LOCMOV AH,01HINT 21HMOV LOC,ALENDM
![Page 5: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/5.jpg)
3. a) Sort a given set of ‘n’ numbers in ascending anddescending orders using the Bubble Sort algorithm.
Program:.MODEL SMALL.STACK.DATALIST DB 03H,04H,02H,01H,05HN DW $-LISTORDER EQU 0MSG DB 'THE SORTED ARRAY IS:: $'.CODE
MOV AX,@DATAMOV DS,AXMOV BX,NDEC BX
NXTPASS:MOV CX,BXMOV SI,00H
NXTCOMP:MOV AL,LIST[SI]INC SICMP AL,LIST[SI]IF ORDER EQ 0JB NEXTELSEJA NEXTENDIFXCHG AL,LIST[SI]MOV LIST[SI-1],AL
NEXT:LOOP NXTCOMPDEC BXJNZ NXTPASSLEA DX,MSGMOV AH,09HINT 21HMOV BX,NMOV SI,00H
AGAIN: MOV AL,LIST[SI]ADD AL,'0'MOV DL,ALMOV AH,02HINT 21HMOV AH,02HMOV DL,' 'INT 21HINC SIDEC BXJNZ AGAINMOV AH,4CHINT 21H
END
![Page 6: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/6.jpg)
4. a) Read an alphanumeric character and display itsequivalent ASCII code at the center of the screen.Program:
;4A) Read an alphanumeric character and display its equivalent; ASCII code(in HEX) at the center of the screen..MODEL SMALL.STACK.DATA
MSG DB 'ENTER A KEY',10,13,'$'.CODE
MOV AX,@DATAMOV DS,AX ;Initialise DS
MOV AH,0 ;To clear the screenMOV AL,3 ;Video mode =3INT 10H
LEA DX,MSG ;DISPLAY MSGMOV AH,9INT 21H
MOV AH,1 ;Read a char from KBINT 21H
MOV BL,AL ;Store it in BLMOV AH,2 ;move cursorMOV BH,0 ;page 0MOV DH,12 ;row=12 central rowMOV DL,40 ;col=40 central colINT 10H
MOV AL,BL ;display the charAND AL,0F0H ;select the higher order nibleMOV CL,4 ;Shift countSHR AL,CL ;Shift right by 4CALL DISP ;display itMOV AL,BLAND AL,0FH ;select the lower order nibbleCALL DISP ;display itMOV AH,4CH ;safe exit to dosINT 21H
DISP: CMP AL,0AH ;convert an alphanumeric character toJB SKIP ;equivalent ASCII valueADD AL,7
SKIP: ADD AL,30HMOV DL,ALMOV AH,02 ;call dos function 02h to print a characterINT 21HRETEND
![Page 7: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/7.jpg)
5. a) Reverse a given string and check whether it is apalindrome or not.Program:;5A) REVERSE A GIVEN STRING AND CHECK WHETHER IT IS A PALINDROME OR NOT..MODEL SMALL.STACK.DATA
STR DB 20 DUP(?)MSG DB 'ENTER THE STRING: $'MSG0 DB 'THE REVERSED STRING IS: ',10,13,'$'MSG1 DB 13,10,"STRING IS A PALINDROM$"MSG2 DB 13,10,"STRING IS NOT A PALINDROM!!!!!!!!!!!!!$"
.CODEMOV AX,@DATAMOV DS,AXMOV SI,00HLEA DX,MSGMOV AH,09H
INT 21HGETS: MOV AH,01H
INT 21HMOV STR[SI],ALINC SIMOV AH,0PUSH AXCMP AL,0DHJNZ GETSLEA DX,MSG0MOV AH,09HINT 21HMOV CX,SI
REV:POP AXMOV DL,ALMOV AH,02HINT 21HLOOP REV
DEC SIDEC SIMOV DI,SIMOV SI,00H
NC: MOV AL,STR[SI]CMP AL,STR[DI]JNZ FL_MSGINC SIDEC DIJNZ NCMOV AH,09HMOV DX,OFFSET MSG1INT 21HJMP END_PR
FL_MSG: MOV AH,09HMOV DX,OFFSET MSG2
![Page 8: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/8.jpg)
INT 21HEND_PR: MOV AH,4CH
INT 21HEND
![Page 9: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/9.jpg)
6. a) Read two strings, store them in locations STR1 andSTR2. Check whether they are equal or not and displayappropriated messages. Also display the length of thestored strings.Program:;6A) PROGRAM TO READ TWO STRINGS STR1 AND STR2 AND COMPARE THEM..MODEL SMALL.STACK.DATA
STR1 DB 20 DUP(?)STR2 DB 20 DUP(?)MS1 DB 'ENTER THE STRING1: $'MS2 DB 'ENTER THE STRING2: $'MSG1 DB 13,10,"STRINGS ARE EQUAL$"MSG2 DB 13,10,"STRINGS ARE NOT EQUAL$"
.CODEMOV AX,@DATAMOV DS,AXMOV SI,00HMOV DI,00HMOV AH,09HLEA DX,MS1INT 21H
SG1: MOV AH,01HINT 21HMOV STR1[SI],ALINC SICMP AL,0DHJNZ SG1MOV DL,0AHMOV AH,02HINT 21HMOV DL,0DHMOV AH,02HINT 21HMOV AH,09HLEA DX,MS1INT 21H
SG2: MOV AH,01HINT 21HMOV STR2[DI],ALINC DICMP AL,0DHJNZ SG2DEC DIDEC SI
nc: MOV AH,STR1[SI]CMP AH,STR2[DI]JNZ FL_MSGDEC SIDEC DI
![Page 10: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/10.jpg)
JNZ NCMOV AH,STR1CMP AH,STR2JNZ FL_MSGCMP SI,DIJNZ NCMOV AH,09H
MOV DX,OFFSET MSG1INT 21HJMP END_PR
FL_MSG: MOV AH,09HMOV DX,OFFSET MSG2INT 21H
END_PR: MOV AH,4CHINT 21HEND
![Page 11: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/11.jpg)
7. a) Read your name from the keyboard and display it at aspecified location on the screen in front of the messageWhat is your name? You must clear the entire screenbefore display.Program:;7A) READ YOUR NAME FROM THE KEYBOARD AND DISLAY IT AS A SPECIFIC LOCATION; ON THE SCREEN IN FRONT OF MESSAGE WHAT IS YOUR NAME ?READSTR MACRO LOC ;MACRO TO READ A CHARACTER
MOV AH,01HINT 21HMOV LOC,AL
ENDM.MODEL SMALL.STACK.DATA
M0 DB 'ENTER NAME:$'M1 DB 'WHAT IS YOUR NAME? $'LEN DW ($-M1)ARR DB 40H DUP(?)
.CODEMOV AX,@DATAMOV DS,AXMOV SI,00LEA DX,M0MOV AH,09HINT 21H
LOOP1: READSTR ARR[SI] ;READ NAME FROM THE KEYBOARDINC SICMP AL,13JNZ LOOP1MOV ARR[SI],'$'MOV AH,00 ;CLEAR THE SCREENMOV AL,3INT 10HMOV AH,2 ;POSITION THE CURSORMOV BH,0MOV DH,2MOV DL,20INT 10HLEA DX,M1MOV AH,09HINT 21HMOV SI,0
D: LEA DX,ARR[SI]MOV AH,09HINT 21HMOV AH,4CHINT 21HEND
![Page 12: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/12.jpg)
8. a) Compute the factorial of a positive integer ‘n’ usingrecursive procedure.
Program:;8A) COMPUTE FACTORIAL OF POSITIVE INTEGER 'N' USING RECURSIVE PROCEDURE.MODEL SMALL.STACK.DATA
NUM DB 05HRES DW 01H (?)MSG DB "THE FACTORIAL IS :$"
.CODEMOV AX,@DATAMOV DS,AXMOV AX,01HCALL FACTMOV RES,AXLEA DX,MSGMOV AH,09HINT 21HMOV AX,RESCALL ASCIIMOV AH,4CHINT 21H
FACT PROC NEARMUL NUMDEC NUMJZ NTCALL FACT
NT: RETFACT ENDP
ASCII PROC NEARMOV BX,AXAND AX,0F000HMOV AL,AHMOV CL,4SHR AL,CLCALL DISPMOV AX,BXAND AX,0F00HMOV AL,AHSHR AL,CLCALL DISPMOV AX,BXAND AL,0F0HSHR AL,CLCALL DISPMOV AX,BXAND AL,0FHCALL DISP
![Page 13: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/13.jpg)
RETASCII ENDP
DISP PROC NEARCMP AL,0AHJB SKIPADD AL,7
SKIP: ADD AL,30HMOV DL,ALMOV AH,02INT 21HRETEND
![Page 14: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/14.jpg)
9. a) Compute nCr using recursive procedure. Assume that‘n’ and ‘r’ are non-negative integers.Program:;9A) COMPUTE nCr USING RECURSION PROCEDURE. ASSUME THAT 'n' AND 'r' ARE; NON NEGATIVE INTEGER NUMBERS..MODEL SMALL.STACK.DATA
N DW 5R DW 4NCR DW 1
msg db "The nCr is :$".CODE
MOV AX,@DATAMOV DS,AXMOV BX,NINC BXMOV CX,RCALL NCP
lea dx,msgmov ah,09hint 21hmov ax,ncrcall ascii
MOV AH,4CHINT 21H
NCP PROC NEARCMP CX,00HJE L1PUSH CXDEC CXCALL NCPMOV AX,BXPOP CXSUB AX,CXMUL NCRDIV CXMOV NCR,AX
L1: RETNCP ENDP
ASCII PROC NEARMOV BX,AXAND AX,0F000HMOV AL,AHMOV CL,4SHR AL,CLCALL DISPMOV AX,BXAND AX,0F00HMOV AL,AHSHR AL,CLCALL DISPMOV AX,BX
![Page 15: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/15.jpg)
AND AL,0F0HSHR AL,CLCALL DISPMOV AX,BXAND AL,0FHCALL DISPRETASCII ENDP
DISP PROC NEARCMP AL,0AHJB SKIPADD AL,7
SKIP: ADD AL,30HMOV DL,ALMOV AH,02INT 21HRETEND
![Page 16: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/16.jpg)
10. a) Find out whether a given sub-string is present ornot in a main string of characters.
Program:;10A) FIND OUT WHETHER A GIVEN SUB STRING IS PRESENT OR NOT IN A; MAIN STRING OF CHARACTERS..MODEL SMALL.STACKDIS_MSG MACRO P1 ; DISPLAY MESSAGE
MOV AH,09HLEA DX,P1INT 21H ; CALL DOS SERVICES
ENDMREAD MACRO P1
MOV AH,0AHLEA DX,P1INT 21H
ENDM.DATA
CR EQU 0DHLF EQU 0AHM3 DB CR,LF,'ENTER THE MAIN STRING:$'M4 DB CR,LF,'ENTER THE SUB STRING:$'M1 DB CR,LF,'THE SUB STRING IS FOUND:$'M2 DB CR,LF,'THE SUB STRING IS NOT FOUND:$'Z DB 50H
DB 0HDB 50H DUP(?)
Y DB 50HDB 0HDB 50H DUP(?)
.CODEMOV AX,@DATAMOV DS,AXDIS_MSG M3READ ZDIS_MSG M4READ YMOV CL,Z+1LEA SI,ZADD SI,2H
LOOP1: PUSH SILEA DI,YADD DI,2HMOV CH,Y+1MOV BH,00H
LOOP3: MOV AL,[SI]CMP AL,[DI]JNE LOOP2INC SIINC DIINC BHCMP BH,Y+1
![Page 17: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/17.jpg)
JE MES1DEC CHJNZ LOOP3
LOOP2: POP SIINC SIDEC CLCMP CL,00HJNE LOOP1DIS_MSG M2JMP TER
MES1: DIS_MSG M1TER: MOV AH,4CH
INT 21HEND
![Page 18: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/18.jpg)
11. a) Generate the first ‘n’ Fibonacci numbers.
Program:;11A) PROGRAM TO GENERATE FIRST N FIBONACCI NUMBERS;.MODEL SMALL.STACK.DATA
ARR DB 20 DUP(?)COUNT DB 0AHmsg db "The fibonacci series : ",13,10,"$"
.CODEMOV AX,@DATAMOV DS,AXMOV SI,00HMOV AX,00HMOV ARR[SI],ALINC SImov bx,01hMOV ARR[SI],blINC SIMOV CH,COUNTSUB CH,02H
BACK: ADD AX,BXMOV ARR[SI],ALINC SIxchg ax,bxDEC CHJNZ BACKlea dx,msgmov ah,9int 21hcall dispMOV AH,4CHINT 21H
disp proc nearmov si,00hmov ch,count
loop1: mov al,arr[si]mov ah,0aamadd ax,3030hmov dl,ahmov ah,2push axint 21hpop axmov dl,alint 21hmov ah,2mov dl, ' 'int 21hinc sidec ch
![Page 19: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/19.jpg)
jnz loop1retdisp endpEND
![Page 20: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/20.jpg)
12. a) Read the current time from the system and displayit in the standard format on the screen.
Program:;12A) PROGRAM TO READ THE CURRENT TIME FROM THE SYSTEM AND; DISPLAY IT IN THE STANDARD FORMAT ON THRE SCREEN.MODEL SMALL.STACK.DATA
MSG DB 'THE CURRENT TIME IS : $'.CODE
MOV AX,@DATAMOV DS,AX ;Initialise DSLEA DX,MSG ;DISPLAY THE MESSAGEMOV AH,09HINT 21HMOV AH,2CH ;DOS FUNCTION TO GET THE CURRENT SYSTEM TIMEINT 21HMOV AL,CHAAM ;BCD ADJUST AFTER MULTIPLYMOV BX,AXCALL DISPLAYMOV DL,':' ;DISPLAY THE CHAR ':'MOV AH,02HINT 21HMOV AL,CLAAM ;BCD ADJUST AFTER MULTIPLYMOV BX,AXCALL DISPLAYMOV AH,4CH ;DOS FUNCTION TO TERMINATEINT 21H
DISPLAY: ;FUNCTION TO DISPLAY A CHARACTER ONMOV DL,BH ;THE STANDARD O/P DEVICEADD DL,30HMOV AH,02HINT 21HMOV DL,BLADD DL,30HMOV AH,02HINT 21HRETEND
![Page 21: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/21.jpg)
13. a) Program to simulate a Decimal Up-counter todisplay 00-99.
Program:;13A PROGRAM TO SIMULATE A DECIMAL UPCOUNTER TO DISPLAY 00-99.MODEL SMALL.STACK.DATA.CODE
MOV AX,@DATAMOV DS,AX
START: MOV AL,30H ;AL CONTAINS FIRST DIGITLOOP2: MOV DL,AL
MOV AH,02HINT 21HPUSH AXMOV BL,030H ;BL CONTAINS SECOND DIGIT
LOOP1: MOV AH,02HMOV DL,BLINT 21HINC BL ;INCREMENT SECOND DIGITCALL DELAYMOV AH,03H ;GET CURRENT CURSOR POSITIONINT 10HMOV AH,02H ;SET CURSOR TO NEXT COLUMNMOV DL,01HINT 10HCMP BL,039HJLE LOOP1 ;LOOP SECOND DIGIT(0-9)MOV AH,02H ;SET5 CURSOR POSITION TO PREVIOUS COLUMNMOV DL,00HINT 10HPOP AXINC AL ;INCREMENT 1ST DIGITCMP AL,039HJLE LOOP2 ;LOOP 1ST DIGIT(0-9)MOV AH,4CHINT 21H
DELAY PROCPUSH CXPUSH BXMOV CX,0FFFH
N3: MOV BX,0FFFFHN4: DEC BX
JNZ N4LOOP N3POP BXPOP CXRET
DELAY ENDPEND START
![Page 22: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/22.jpg)
14. a) Read a pair of input co-ordinates in BCD and movethe cursor to the specified location on the screen.Program:;14A) READ A PAIR OF INPUT CO-ORDINATES IN BCD AND MOVE CURSOR SPECIFIEDPOSITION ON SCREEN..MODEL SMALL.STACK.DATA
XMSG DB 13,10,'ENTER VALUE OF X CO-ORDINATES:','$'X DB ?YMSG DB 13,10,'ENTER VALUE OF Y CO-ORDINATES:','$'Y DB ?
.CODEMOV AX,@DATAMOV DS,AXMOV DX,OFFSET XMSG ;TO READ BCD CO=ORDINATESCALL READ_BCDMOV X,BHMOV DX,OFFSET YMSGCALL READ_BCDMOV Y,BHMOV AH,0 ;TO CLEAR THE SCREENMOV AL,03INT 10HMOV AH,02H ;TO SET CURSOR POSITIONMOV DH,XMOV DL,YMOV BH,0INT 10HMOV DL,'-'MOV AH,06HINT 21HMOV AH,4CHINT 21H
READ_BCD PROCMOV AH,09HINT 21HMOV AH,01H ;FIRST DIGITINT 21HMOV BH,ALMOV AH,01H ;SECOND DIGITINT 21HMOV BL,ALMOV CL,4HSUB BH,30H ;TO CONVERT FROM ASCII TO BCDSUB BL,30HSHL BH,CLOR BH,BLRET
READ_BCD ENDPEND
![Page 23: Microprocessor Lab Manual Solutions 4th Semester ISE](https://reader034.fdocuments.us/reader034/viewer/2022052123/54a141c1ac7959527c8b4628/html5/thumbnails/23.jpg)
15. a) Program to create a file (input file) and to delete anexisting file.
Program:;15A1) PROGRAM TO CREATE A FILE (INPUT FILE).MODEL SMALL.STACK.DATA
FNAME DB 'C:\MASM\FILE.ASM',00HSUCCESS DB 'FILE IS CREATED SUCCESSFULLY$'FAILURE DB 'ERROR DURING FILE CREATION$'
.CODEMOV AX,@DATAMOV DS,AXMOV CX,20HLEA DX,FNAMEMOV AH,3CHINT 21HJC FAILLEA DX,SUCCESSJMP EXIT
FAIL: LEA DX,FAILUREEXIT: MOV AH,09H
INT 21HMOV AH,4CHINT 21HEND
Program:;15A2) PROGRAM TO DELETE AN EXISTING FILE.MODEL SMALL.STACK.DATA
FNAME DB 'C:\MASM\FILE.ASM',00HSUCCESS DB 'FILE DELETED SUCCESSFULLY$'FAILURE DB 'ERROR IN DELETING FILE$'
.CODEMOV AX,@DATAMOV DS,AXMOV CX,20HLEA DX,FNAMEMOV AH,41HINT 21HJC FAILLEA DX,SUCCESSJMP EXIT
FAIL: LEA DX,FAILUREEXIT: MOV AH,09H
INT 21HMOV AH,4CHINT 21H
END