You are on page 1of 59

AIM : WRITE A PROGRAM FOR 16-BIT ADDITION.

PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT A DW 0001H B DW 0005H SUM DW ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AX,A MOV BX,B ADD AX,BX MOV SUM,AX MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ a(()*' 1+,b)! *-%ber .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM FOR 16-BIT MULTIPLICATION.

PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT A DW 0002H B DW 0005H MU2TI DW ? DATA ENDS CODE SEGMENT START:MOV AX,DATA MOV DS,AX MOV AX,A MOV BX,B MU2 BX MOV MU2TI,AX MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ 1+,b)! %- !)# )/a!)"*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM FOR BCD ADDITION.


PROGRAM:

ASSUME CS:CODE,DS:DATA DATA SEGMENT A DB 41H B DB 23H SUM DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV A2,A MOV B2,B ADD A2,B2 DAA MOV SUM,A2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ b/( a(()!)"*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM FOR BCD SUBTRACTION.


PROGRAM:
ASSUME CS:CODE,DS:DATA

DATA SEGMENT A DB 41H B DB 23H DI4 DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV A2,A MOV B2,B SUB A2,B2 DAS MOV DI4,A2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ b/( .-b!ra/!)"*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM FOR BCD ARRAY ADDITION.

PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT A DB 01H,05H,0+H SUM DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV C2,05H MOV A2,00H MOV B2,00H 2EA SI,A AGAIN: MOV B2,6SI7 ADD A2,B2 INC SI 2OO8 AGAIN DAA MOV SUM,A2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ b/( arra0 a(()!)"*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO COUNT THE NUMBER OF ODDS AND EVENS FROM THE GIVEN 8-BIT ARRAY.
PROGRAM:

ASSUME CS:CODE,DS:DATA DATA SEGMENT ARR DB 02H,05H,04H,05H,03H ODD DB ? EVEN1 DB ? DATA ENDS CODE SEGMENT START:MOV AX,DATA MOV DS,AX MOV AX,0000H 2EA SI,ARR MOV C2,05H MOV BX,0000H AGAIN: MOV A2,6SI7 RCR A2,1 9C OD INC B2 INC SI 2OO8 AGAIN OD:INC BH INC SI 2OO8 AGAIN MOV ODD,BH MOV EVEN1,B2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"-*!)*' *-%ber "$ "(( a*( e:e* e e%e*!. )* a '):e* ;,b)! arra0 .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO COUNT THE NUMBER OF 1S IN 16-BIT DATA.


PROGRAM:
ASSUME CS:CODE,DS:DATA

DATA SEGMENT N DW 200+H O DB ? DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV AX,N MOV C2,04H MOV D2,00H AGAIN : SHR AX,1 9NC NOCOUNT INC D2 NOCOUNT : 2OO8 AGAIN MOV O,D2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"-*!)*' *-%ber "$ 1<. )* a '):e* 1+,b)! *-%ber .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO FIND FACTORIAL OF A GIVEN NUMBER.

PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT N DW 5 ANS DW ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AX,0001H MOV CX,N AGAIN: MU2 CX DEC CX 9N= AGAIN MOV ANS,AX MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ $)*()*' $a/!"r)a "$ a '):e* *-%ber .-//e..$- 0 -.)*' Ta.a% S)%- a!"r

AIM : WRITE A PROGRAM FOR FINDING FACTORS OF A GIVEN NUMBER.


PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT N DW 0+H

ANS DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AX,N MOV B2,00H MOV CX,N AGAIN:MOV AX,N DIV C2 CM8 AH,00H 9= 4CT DEC CX 9N= AGAIN 9= 8END 4CT: INC B2 DEC CX 9N= AGAIN 8END:MOV ANS,B2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ $)*()*' $a/!"r. "$ a '):e* *-%ber .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO FIND PRIME NUMBERS IN A GIVEN RANGE.


PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT NO1 DW 0004H NO2 DW 0003H MSG DB > 8RIME > 8RIMENO DW ? DATA ENDS CODE SEGMENT

START: MOV AX,DATA MOV DS,AX MOV AH,3 2EA DX,MSG 2EA SI,8RIMENO MOV DX,NO1 AGAIN: MOV C2,00H MOV BH,00H MOV B2,01H AGAIN1:MOV AX,DX DIV B2 CM8 AH,00H 9= 4ACTO INC B2 CHEC?:CM8 DX,BX 9NC AGAIN1 9M8 RETURN 4ACTO:INC C2 INC B2 9M8 CHEC? RETURN: CM8 C2,05 9C 8RIME NEXT: INC DX CM8 NO2,DX 9C 8END 9M8 AGAIN 8RIME: MOV 6SI7,DX INC SI 9M8 NEXT 8END: MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ $)*()*' #r)%e *-%ber. )* a '):e* ra*'e .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO FIND COMPLETE FIBONACCI SERIES TILL Nth NUMBER.
PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT R DB 03H A DB 00H B DB 01H C DB 01H ANS DB ? MSG DB > 4IBONACCI > DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX 2EA DX,MSG MOV A2,A MOV B2,B MOV C2,C MOV D2,R 2EA SI,ANS

MOV 6SI7,B2 INC SI AGAIN: CM8 C2,D2 9NC EXIT ADD A2,B2 CM8 A2,D2 9NC EXIT MOV C2,A2 MOV 6SI7,A2 INC SI MOV A2,B2 MOV B2,C2 9M8 AGAIN EXIT: MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ $)*()*' /"%# e!e 4)b"*a//) .er)e. !) !&e '):e* *-%ber .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO FIND A TOTAL NUMBER OF NEGATIVE ELEMENTS IN A GIVEN ARRAY.
PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT N DW 1001H,;002H,0A005H,0B004H,5505H D DB ? DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV C2,05H 2EA SI,N AGAIN : MOV AX,6SI7 SH2 AX,1 9NC NOCOUNT INC D2 NOCOUNT : INC SI SHR AX,1 DEC C2 9N= AGAIN

MOV D,D2 MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"-*!)*' *-%ber "$ *e'a!):e e e%e*!. )* a '):e* arra0 .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO CONVERT ANY DECIMAL NUMBER TO ANY GIVEN NUMBER SYSTEM.

PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT NO1 DW 0@H NO2 DB 2H ARR DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AX,NO1 MOV C2,NO2 MOV BX,0000H AGAIN: DIV C2 MOV ARR6BX7,AH INC BX AA INC CH CM8 A2,01H 9N= AGAIN MOV AH,03H MOV DX,O44SET ARR MOV AH,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"*:er!)*' DECIMA2 *-%ber !" BINARB $"r%a!, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO CONVERT ANY NUMBER FROM ANY NUMBER SYSTEM TO DECIMAL VALUE.
PROGRAM:
ASSUME DS:DATA,CS:CODE DATA SEGMENT B DW 0012H MSG DB >H2D> RESU2T DW ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AH,3 2EA DX,MSG MOV BX,B MOV AX,0 MOV CX,0 NEXT: CM8 BX,0 9= END8G DEC BX MOV A2,C2

ADD A2,01 DAA MOV C2,A2 MOV A2,CH ADC A2,00H DAA MOV CH,A2 9M8 NEXT END8G: MOV RESU2T,CX MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"*:er!)*' HEXA,DECIMA2 *-%ber !" DECIMA2 $"r%a!, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO CONVERT ASCII TO PAC ED BCD.


PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT A DB 5 B DB 3 C DB ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV A2,A MOV B2,B AND A2,04H ROR A2,4 AND B2,04H OR A2,B2 MOV C,A2 MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"*:er!)*' ASCII !" 8AC?ED BCD, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO CONVERT ASCII TO BCD.


PROGRAM: ASSUME CS:CODE,DS:DATA DATA SEGMENT N DW >N>

ANS DW ? DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV AX,N MOV BX,0000H ADD AX,BX DAA MOV ANS,AX MOV AX,04CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"*:er!)*' ASCII !" BCD, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO SORT AN ARRAY IN ASCENDING ORDER.


PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT A DB 03H, 04H, 0+H RESU2T DB ? MSG DB < SORTING< DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV AH,3 2EA DX,MSG INITIA2 : 2EA BX,A MOV D2,00H MOV C2,02H CHEC? : MOV A2,6BX7 INC BX MOV AH,6BX7 CM8 A2,AH 9C NXT MOV CH,6BX7 MOV 6BX7,A2

DEC BX MOV 6BX7,CH INC BX MOV D2,01H NXT: DEC C2 9N= CHEC? MOV DH,D2 ROR DH,1 9C INITIA2 INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ ."r!)*' a* arra0 )* a./e*()*' "r(er, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO FIND MA!IMUM AND MINIMUM NUMBER FROM A GIVEN ARRAY.
PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT VA2UES DB ;@H, 5+H, 42H MSG DB > MAXMIN > DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV AH,3 2EA DX,MSG INITIA2 : 2EA BX,VA2UES MOV D2,00H MOV C2,02H CHEC? : MOV A2,6BX7 INC BX MOV AH,6BX7 CM8 A2,AH 9C NXTBBT MOV CH,6BX7 MOV 6BX7,A2 DEC BX MOV 6BX7,CH INC BX MOV D2,01H NXTBBT : DEC C2 9N= CHEC? MOV DH,D2 ROR DH,1 9C INITIA2 MOV DH,6BX7 MOV D2,6BX,27 MOV 6BXC17,D2 MOV 6BXC27,DH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ $)*()*' %)*)%-% a*( %aD)%-% *-%ber $r"% a '):e* arra0, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO SORT AN ARRAY SUCH THAT


POSITIVE AND NEGATIVE VALUES ARE AT ALTERNATIVE POSITION. ASSUME ARRAY LENGTH TO BE EVEN AND HAVING E"UAL NUMBERS OF POSITIVE AND NEGATIVE VALUES. PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT ARR DB ;0H,0@H,30H,02H,24H,;1H T1 DB ? T2 DB ? MSG DB > DATA ENDS 8OSITIVE NEGATIVE A2TERNATE>

CODE SEGMENT START:MOV AX,DATA MOV DS,AX MOV AX,0000H 2EA SI,ARR 2EA DI,T1 MOV B2,00H MOV CX,000+H AGAIN:MOV AH,6SI7 AND AH,;0H 9= M2 MOV AH,6SI7 MOV 6DI7,AH INC DI 9M8 DOIT M2: MOV AH,6SI7 8USH AX DOIT: INC SI 2OO8 AGAIN MOV CX,0005H 2EA SI, ARR M1: DEC DI MOV AH,6DI7 MOV 6SI7,AH INC SI 8O8 AX MOV 6SI7,AH INC SI

2OO8 M1 MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ ."r!)*' a* arra0 .-/& !&a! #".)!):e a*( *e'a!):e *-%ber. are )* a !er*a!e #".)!)"*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM : WRITE A PROGRAM TO CONVERT A STRING FROM


LOWERCASE TO UPPERCASE.

PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA DATA SEGMENT 2OWER DB >a% U88ER DB ? DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV ES,AX MOV C2,04H MOV DX,0000H 2EA SI,2OWER 2EA DI,U88ER AGAIN : MOV B2,6SI7 AND B2,11011111B MOV 6DI7,B2 INC DX INC SI INC DI DEC C2 9N= AGAIN INT 5 CODE ENDS >

END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"*:er!)*' .!r)*' $r"% "Eer/a.e !" -##er/a.e, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO COMPARE TWO STRINGS. FIRST


COMPARE THE LENGTH AND THEN THE CHARACTERS. THE COMPARISON IS IN CASE SENSITIVE. I.E. # AND E ARE SAME. PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA 8RINTMSG MACRO MSG MOV AH,03H MOV DX,O44SET MSG INT 21H

ENDM DATA SEGMENT CR EFU 0DH 24 EFU 0AH 2EN1 DW ? 2EN2 DW ? IN8UT1 DB ;0 DU8 G?H IN8UT2 DB ;0 DU8 G?H MSG1 DB >ENTER 4IRST STRING : >,>I> MSG2 DB CR,24,>ENTER SECOND STRING : >,>I> MSG5 DB CR,24,>2ENGTH IS EFUA21I> MSG4 DB CR,24,>2ENGTH IS NOT EFUA21I> MSG5 DB CR,24,>BOTH STRING ARE EFUA21I> MSG+ DB CR,24,>BOTH STRING ARE NOT EFUA21I> DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV CX,00 8RINTMSG MSG1 2EA SI,IN8UT1 BA?E1: MOV AH,01H INT 21H MOV 6SI7,A2 INC SI INC CX CM8 A2,CR

9NE BA?E1 MOV 2EN1,CX MOV CX,00 8RINTMSG MSG2 2EA SI,IN8UT2 BA?E2: MOV AH,01H INT 21H MOV 6SI7,A2 INC SI INC CX CM8 A2,CR 9NE BA?E2 MOV 2EN2,CX MOV BX,2EN1 CM8 CX,BX 9NE EXIT1 8RINTMSG MSG5 2EA SI,IN8UT1 2EA DI,IN8UT2 MOV CX,2EN1 CM8B?: MOV A2,6SI7 CM8 A2,6DI7 9NE CHEC?1 INC SI INC DI 2OO8 CM8B? 9M8 O? CHEC?1:MOV AH,A2 ADD A2,20H

CM8 A2,6DI7 9NE CHEC?2 INC SI INC DI DEC CX 9N= CM8B? 9M8 O? CHEC?2:MOV A2,AH MOV AH,6DI7 ADD AH,20H CM8 A2,AH 9NE EXIT2 INC SI INC DI DEC CX 9N= CM8B? O?: 8RINTMSG MSG5 9M8 EXIT EXIT1: 8RINTMSG MSG4 9M8 EXIT EXIT2 : 8RINTMSG MSG+ EXIT: MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"%#ar)*' .!r)*', .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO REVERSE GIVEN STRING.


PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA 8RINTSTRING MACRO MSG MOV AH,03H

MOV DX,O44SET MSG INT 21H ENDM DATA SEGMENT CR EFU 0DH 24 EFU 0AH BU44 DB ;0 DU8G0H

REVBU44 DB ;0 DU8G0H MSG1 DB >ENTER THE STRING : >,>I> MSG2 DB CR,24,>REVERSE O4 STRING J >,>I> DATA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE START: MOV AX,DATA MOV DS,AX 8RINTSTRING MSG1 MOV SI,O44SET BU44 RDCHAR1: MOV AH,01H INT 21H MOV 6SI7,A2 INC SI CM8 A2,CR 9NE RDCHAR1 K 4IND THE 2EGTH O4 A STRING MOV SI,O44SET BU44 MOV BX,00 NXTCHAR2:

MOV A2,6SI7 CM8 A2,CR 9E S?I81 MOV 6SI7,A2 INC SI INC BX 9M8 NXTCHAR2 S?I81: K REVERSE THE STRING MOV SI,O44SET BU44 ADD SI,BX MOV DI,O44SET REVBU44 MOV CX,BX NXTCHAR5: DEC SI MOV A2,6SI7 MOV 6DI7,A2 INC DI 2OO8 NXTCHAR5 MOV A2,>I> MOV 6DI7,A2 K DIS82AB THE REVERSE STRING 8RINTSTRING MSG2 8RINTSTRING REVBU44 MOV AH,4CH MOV A2,00H INT 21H CODE ENDS

END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ re:er.)*' .!r)*', .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO CHEC WHETHER GIVEN STRING IS


PALINDROME OR NOT. PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA DATA SEGMENT STR1 DB >MADAMI> MSG1 DB >GIVEN STRING IS 8A2INDROMI> MSG2 DB >GIVEN STRING IS NOT 8A2INDROMI> DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA

MOV DS,AX MOV CX,0000H 2EA SI,STR1 2ABE21: MOV A2,6SI7 CM8 A2,>I> 9= 2ABE22 INC SI

INC CX 9M8 2ABE21 2ABE22: DEC SI MOV DI,SI MOV AX,CX MOV B2,02H DIV B2 2EA SI,STR1 MOV C2,A2 2ABE24: MOV A2,6SI7 CM8 A2,6DI7 9N= 2ABE25 INC SI DEC DI DEC C2 9N= 2ABE24 2EA DX,MSG1 9M8 2ABE25 2ABE25: 2EA DX,MSG2 2ABE25: MOV AH,03H INT 21H MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /&e/L)*' )$ .!r)*' ). #a )*(r"%e "r *"!, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO COUNT FRE"UENCY OF ALL THE


CHARACTERS IN A GIVEN STRING. PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA

8RINTMSG MACRO MSG MOV AH,03H 2EA DX,MSG INT 21H ENDM DATA SEGMENT STR1 DB >BITI> CHAR DB 50 DU8 G?H DATA ENDS CODE SEGMENT ASSUME DS:DATA,CS:CODE START: MOV AX,DATA MOV DS,AX MOV AX,0000H 2EA DI,STR1 2EA SI,STR1 2EA BX,CHAR MOV C2,>I> NEXT5: MOV A2,6SI7 MOV 6BX7,A2 INC BX NEXT1: CM8 A2,6DI7 9N= NEXT INC AH NEXT: INC DI CM8 6DI7,C2 9N= NEXT1 MOV 6BX7,>:> KCOM8ARE A CHAR TI22 END O4 THE STRING KCOUNTER,M4RF O4 THE CHAR KCM8 1ST CHAR WITH THE STRING KCOM8ARING EACH CHAR WITH THE STRING

INC BX ADD AH,4; MOV 6BX7,AH INC BX INC BX MOV AH,00H MOV DI,00H INC SI CM8 6SI7,C2 9N= NEXT5 8RINTMSG CHAR MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /"-*!)*' $reN-e*/0 "$ ea/& /&ara/!er )* a .!r)*', .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO CREATE A FILE RESULT AND STORE IT IN $%%H BYTES FORM THE MEMORY LOCATION 1%%%:1%%& IF EITHER AN INTERRUPT APPEARS AT INTR PIN WITH TYPE %AH OR AN INSTRUCTION E"UIVALENT TO THE ABOVE INTERRUPT IS E!ECUTED.
PROGRAM:
ASSUME CS:CODE,DS:DATA DATA SEGMENT 4NAME DB ORESU2TO,OIO MSG DB O4I2E WASNT CREATED SUCCESS4U22BO,0AH,0DH,OIO DATA ENDS CODE SEGMENT START : MOV AX,CODE MOV DS,AX MOV DX,O44SET ISR0A MOV AX,250AH INT 21H MOV DX,O44SET 4NAME MOV AX,DATA

MOV DS,AX MOV CX,00H MOV AH,5CH INT 21H 9NC 4URTHER MOV DX,O44SET MSG MOV AH,03H INT 21H 9M8 STO8 4URTHER: INT 0AH STO8 : MOV AH,04CH INT 21H ISR0A 8ROC NEAR MOV BX,AX MOV CX,500H MOV DX,1000H MOV AX,1000H MOV DS,AX MOV AH,40H INT 21H IRET ISR0A END8 CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% "$ /rea!)*' a $) e b0 &a*( )*' !&e )*!err-#!,.-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO DISPLAY HELLO WORLD ON


SCREEN. PROGRAM:
ASSUME CS:CODE,DS:DATA

DATA SEGMENT MSG DB > HE22O WOR2D > DATA ENDS CODE SEGMENT START : MOV AX,DATA MOV DS,AX MOV AH,03CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% #r)*!)*' <He " W"r (< "* ./ree*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM TO DISPLAY SYSTEM DATE.


PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA DATA SEGMENT MSG1 DB >DATE : > MSG DB ??DATE,0AH DATA ENDS CODE SEGMENT START: MOV AX,DATA MOV DS,AX 2EA DX,MSG

MOV AH,03H INT 21H MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" #er$"r% !&e #r"'ra% #r)*!)*' .0.!e% (a!e "* ./ree*, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

AIM: WRITE A PROGRAM WHICH ACCEPTS PASSWORD FROM USER AND CHEC S WHETHER IT IT TRUE OR NOT. IF UNTRUE& THE PROGRAM SHOULD GIVE MA!IMUM ' CHANCES TO VERIFY AND THEN IT SHOULD BE LOC ED.
PROGRAM:
ASSUME CS:CODE,DS:DATA,ES:DATA DATA SEGMENT STR1 DB 15 DU8G?H 8ASSWORD DB >BIT<,CR USERNAME DB >BIT<, CR MSG1 DB CR,24,>ENTER BOUR USERNAME : I> MSG2 DB CR,24,>ENTER BOUR USERNAME AGAIN : I> MSG5 DB CR,24,>INVA2ID USER NAMEPPPI> MSG@ DB CR,24,>INVA2ID 8ASSWORDPPPI> MSG5 DB CR,24,>ENTER BOUR 8ASSWORD : I> MSG+ DB CR,24,>ENTER BOUR 8ASSWORD AGAIN : I> MSG4 DB CR,24,>WE2COME TO COM8UTER WOR2DI> MSG; DB CR,24,>ACCOUNT IS 2OC?EDI> 24 EFU 0AH CR EFU 0DH DATA ENDS

CODE SEGMENT START: MOV AX,DATA MOV DS,AX MOV C2,01H 2EA DX,MSG1 MOV AH,03H INT 21H CA22 USERCHEC? 2EA DX,MSG5 MOV AH,03H INT 21H CA22 8ASSCHEC? 2EA DX,MSG4 MOV AH,03H INT 21H MOV AH,4CH INT 21H

USERCHEC? 8ROC 25: 21: 2EA SI,STR1 MOV AH,0;H INT 21H MOV 6SI7,A2 INC SI CM8 A2,CR 9= END1 MOV D2,A2 MOV AH,02H INT 21H 9M8 21 K INTERRU8T 4OR WRITE A STRING ON SCREEN K INTERRU8T 4OR READ A ?EB 4ROM ?EBBOARD

END1: 2EA SI,STR1 2EA DI,USERNAME

22:

MOV A2,6SI7 CM8 A2,6DI7 9N= INVA2ID INC SI INC DI CM8 A2,CR 9= VA2ID1 9M8 22

INVA2ID: CM8 C2,05H 9N= DIS80 2EA DX,MSG; MOV AH,03H INT 21H 98 EXIT DIS80: INC C2 2EA DX,MSG5 MOV AH,03H INT 21H 2EA DX,MSG2 MOV AH,03H INT 21H 9M8 25 VA2ID1: RET USERCHEC? END8 8ASSCHEC? 8ROC 24: 25: 2EA SI,STR1 MOV AH,0;H K INTERRU8T 4OR READ A ?EB 4ROM ?EBBOARD

INT 21H MOV 6SI7,A2 INC SI CM8 A2,CR 9= END2 MOV D2,A2 MOV AH,02H INT 21H 9M8 25 END2: 2EA SI,STR1 2EA DI,8ASSWORD 2+: MOV A2,6SI7 CM8 A2,6DI7 9N= INVA2ID1 INC SI INC DI CM8 A2,CR 9= VA2ID 9M8 2+ INVA2ID1: CM8 C2,05H 9N= DIS8 2EA DX,MSG; MOV AH,03H INT 21H 98 EXIT DIS8: INC C2 2EA DX,MSG@ MOV AH,03H INT 21H 2EA DX,MSG+ K INTERRU8T 4OR WRITE A STRING ON SCREEN

MOV AH,03H INT 21H 9M8 24 VA2ID: RET 8ASSCHEC? END8 EXIT: MOV AH,4CH INT 21H CODE ENDS END START

OUTPUT:

CONCLUSION: We are ab e !" .ee !&a! "* e*!er)*' Er"*' #a..E"r(. 5 !)%e. a//"-*! 'e!. "/Le(, .-//e..$- 0 -.)*' Ta.a% S)%- a!"r1

You might also like