0% found this document useful (0 votes)
58 views20 pages

Micro Pos or

The code takes input from the user in the form of a string. It then counts the number of characters in the string by iterating through the string and incrementing a counter variable. Finally, it displays the message "NO. OF CHARACTERS:" followed by the count converted to an ASCII character. The summary is completed in 3 sentences.

Uploaded by

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

Micro Pos or

The code takes input from the user in the form of a string. It then counts the number of characters in the string by iterating through the string and incrementing a counter variable. Finally, it displays the message "NO. OF CHARACTERS:" followed by the count converted to an ASCII character. The summary is completed in 3 sentences.

Uploaded by

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

LAB FINAL

CSE-231

Submitted to:
Saima Afrin
Daffodil International University

Submitted by
Adullah Al Mahmud Mitul
ID-193-15-2987
PC-A

ANSWER TO THE QUESTION NO: 1


1.CODE:
INCLUDE 'EMU8086.INC' .MODE1.CODE:
INCLUDE 'EMU8086.INC'
.MODEL SMALL
.STACK 100H
.DATA
X DB ?
.CODE
MAIN PROC
MOV AX,@DATA
MOV DS,AX
MOV AH,1
INT 21H
MOV X,AL
CMP AL,'a'
JE VL
CMP AL,'e'
JE VL
CMP AL,'i'
JE VL
CMP AL,'o'
JE VL
CMP AL,'u'
JE VL
CMP AL,'A'
JE VL
CMP AL,'E'
JE VL
CMP AL,'I'
JE VL
CMP AL,'O'
JE VL
CMP AL,'U'
JE VL
MOV CL,6
MOV BL,6
MOV BH,9

START1:
CMP BL,BH
JG SECOND
PRINTN
ADD CL,48
MOV AH,2
MOV DL,CL
INT 21H
SUB CL,48
INC CL
INC BL
JMP START1
JMP SECOND
VL:
MOV CL,1
MOV BL,1
MOV BH,5
START2:
CMP BL,BH
JG SECOND
PRINTN
ADD CL,48
MOV AH,2
MOV DL,CL
INT 21H
SUB CL,48
INC CL
INC BL
JMP START2
SECOND:
PRINTN
MOV AH,1
INT 21H
CMP AL,X
JE EXIT
MOV CL,2

MOV BL,2
MOV BH,8

START3:
CMP BL, BH
JG EXIT
PRINTN
ADD CL,48
MOV AH,2
MOV DL, CL
INT 21H
SUB CL,48
INC CL
INC CL
INC BL
INC BL
JMP START3
EXIT:
MOV AH,4CH
INT 21H
MAIN ENDP
OUTPUT:

ANSWER TO THE QUESTION NO: 2

CODE:2

org 100h
include emu8086.inc
.DATA
STR1 DB 0DH, 0AH, 'Enter a character: $'
STR2 DB 0DH, 0AH, '$'
Nl DB 0Dh, 0Ah,'$'

.CODE
START:
MOV AX, @DATA
MOV DS, AX

DISP:
LEA DX,STR1
MOV AH,09H
INT 21H
MOV CL,00
MOV AH,01H

READ:
INT 21H
MOV BL, AL
PUSH BX
INC CX
CMP AL, 0DH
JZ DISPLAY
CMP AL, 'A'
JB NotALetter
CMP AL, 'Z'
JA AGAIN
JMP CONTINUE1

AGAIN:
CMP AL, 'a'
JB NotALetter
CMP AL, 'z'
JA NotALetter

CONTINUE1:
JMP READ
DISPLAY:
LEA DX, STR2
MOV AH, 09h
INT 21H
LEA DX, NL
MOV AH, 09h
INT 21h
POP BX

ANS:
MOV AH, 02h
POP BX
CMP BL, 'a'
JB toPrint0
SUB BL, 32
JMP toPrint1

toPrint0:
printn
print "Uppercase."
HLT

toPrint1:
printn
print "Lowercase."
HLT

NotALetter:
printn
print "The input character is not a letter."
HLT

EXIT:
hlt

.EXIT
END START

Output:
ANSWER TO THE QUESTION NO: 3

CODE 3:

.MODEL SMALL .
.STACK 100H
.DATA
MSG_1 EQU 'Enter three initials : $'
MSG_2 EQU 0DH,0AH,'The initials are :',0DH,0AH,'$'

PROMPT_1 DB MSG_1
PROMPT_2 DB MSG_2

.CODE
MAIN PROC
MOV AX, @DATA
MOV DS, AX
LEA DX, PROMPT_1
MOV AH, 9
INT 21H
MOV AH, 1
INT 21H
MOV BL, AL
MOV AH, 1
INT 21H
MOV BH, AL
MOV AH, 1
INT 21H
MOV CL, AL
LEA DX, PROMPT_2
MOV AH, 9
INT 21H

MOV AH, 2
MOV DL, BH
INT 21H
MOV AH, 4CH
INT 21H
MAIN ENDP

Output:

ANSWER TO THE QUESTION NO: 4

CODE 4
.MODEL SMALL
.STACK 100H
.DATA
MSG1 DB "Enter the 1st digit: $"
MSG2 DB 10,13, "Enter the 2nd digit: $"
MSG3 DB 10,13,"Enter the highest number of loops of the 2nd digit: $"
VAR DB ?
A DB ?
B DB ?
C DB ?
.CODE
MAIN PROC
INCLUDE emu8086.inc
MOV AX, @DATA
MOV DS,AX

LEA DX,MSG1
MOV AH,9
INT 21H

MOV AH,1
INT 21H
SUB AL,48
MOV A,AL

LEA DX,MSG2
MOV AH,9
INT 21H
MOV AH,1
INT 21H
SUB AL,48
MOV B,AL

LEA DX,MSG3
MOV AH,9
INT 21H
MOV AH,1
INT 21H
SUB AL,48
MOV C,AL

MOV VAR, AL

PRINTN

MOV CX,0
MOV CL,C
MOV BL,C

FIRST:
CMP BL, 0
JE EXIT

MOV AH,2
MOV AL,A
ADD AL,48
MOV DL,AL
INT 21H

MOV CX,BX

SECOND:

MOV AH,2
MOV AL,B
ADD AL,48
MOV DL,AL
INT 21H

LOOP SECOND
DEC BL
LOOP FIRST

EXIT:
MOV AH,4CH
INT 21H
MAIN ENDP

Output :

ANSWER TO THE QUESTION NO: 5

Code5
.MODEL SMALL
.STACK 100H
.DATA
STRING DB 100 DUP(?)
MSG1 DB "ENTER A STRING: $"
MSG2 DB 0DH, 0AH, "NO. OF CHARACTERS: $"
CHARACTERS DW 0
.CODE
MAIN PROC

MOV AX, @DATA


MOV DS, AX
MOV ES, AX

MOV AH, 9
LEA DX, MSG1
INT 21H

LEA DI, STRING


MOV AH, 1
READ:
INT 21H
CMP AL, 0DH
JE ENDOFSTRING
STOSB
JMP READ
ENDOFSTRING:
MOV AL, "$"
STOSB

XOR BX, BX

COUNT:
CMP [STRING+BX], '$'
JE EXIT
INC BX
INC CHARACTERS
JMP COUNT

EXIT:

MOV AH, 9
LEA DX, MSG2
INT 21H

MOV AH, 2
MOV DX, CHARACTERS
ADD DX, 30H
INT 21H

MAIN ENDP
END MAIN

OUTPUT:

You might also like