0% found this document useful (0 votes)
102 views6 pages

Assembly Language Project Os Shape Making Program

The assembly language project creates an emoji shape using rectangles and squares. Four group members are listed. The project draws the emoji using rectangles for the eyes, nose, and mouth. Code is provided that uses loops and INT 10h to draw the shapes by incrementing and decrementing registers CX and DX for coordinates, and BL as a counter.

Uploaded by

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

Assembly Language Project Os Shape Making Program

The assembly language project creates an emoji shape using rectangles and squares. Four group members are listed. The project draws the emoji using rectangles for the eyes, nose, and mouth. Code is provided that uses loops and INT 10h to draw the shapes by incrementing and decrementing registers CX and DX for coordinates, and BL as a counter.

Uploaded by

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

Assembly Language Project

Group Members
 Umair (404).

 Asad (256).

 Shahwaiz (405).

 Jawad (411).

Presented to: Adeel Ahmad

Project Name: Emoji

Project Summary:
Our project assembly language is to make the shape of emoji. we have made this
emoji using a rectangle shape. There are two rectangles and two squares inside of the big square two of
them are presenting the eyes of the emoji and one of them is working as the mouth of the emoji. And one
of them is the nose of emoji.

CODE:
mov al, 13h
mov ah, 0
int 10h

mov ah, 0ch

mov al, 10
mov cx, 100
mov dx, 30
int 10h

mov bl,80
lable:
int 10h
inc cx
dec bl
jnz lable

mov bl,80
lable1:
int 10h
inc dx
dec bl
jnz lable1

mov bl,80
lable2:
int 10h
dec cx
dec bl
jnz lable2

mov bl,80
lable3:
int 10h
dec dx
dec bl
jnz lable3

mov al, 10
mov cx, 116
mov dx, 40
int 10h

mov bl,15
la1:
int 10h
inc cx
dec bl
jnz la1

mov bl,6
la2:
int 10h
inc dx
dec bl
jnz la2

mov bl,15
la3:
int 10h
dec cx
dec bl
jnz la3

mov bl,6
la4:
int 10h
dec dx
dec bl
jnz la4

mov al, 10
mov cx, 154
mov dx, 40
int 10h

mov bl,15
sec1:
int 10h
inc cx
dec bl
jnz sec1

mov bl,6
sec2:
int 10h
inc dx
dec bl
jnz sec2

mov bl,15
sec3:
int 10h
dec cx
dec bl
jnz sec3

mov bl,6
sec4:
int 10h
dec dx
dec bl
jnz sec4

mov al, 10
mov cx, 140
mov dx, 57
int 10h

mov bl, 4
third:
int 10h
inc cx
dec bl
jnz third

mov bl, 20
third1:
int 10h
inc dx
dec bl
jnz third1

mov bl, 4
third2:
int 10h
dec cx
dec bl
jnz third2

mov bl, 20
third3:
int 10h
dec dx
dec bl
jnz third3

mov al, 10
mov cx, 125
mov dx, 90
int 10h

mov bl, 30
mouth:
int 10h
inc cx
dec bl
jnz mouth

mov bl, 3
mouth2:
int 10h
inc dx
dec bl
jnz mouth2

mov bl, 30
mouth3:
int 10h
dec cx
dec bl
jnz mouth3

mov bl, 3
mouth4:
int 10h
dec dx
dec bl
jnz mouth4

CODE Explanation:
INT 10h / AH = 0 - set video mode.

input:
AL = desired video mode.

these video modes are supported:

00h - text mode. 40x25. 16 colors. 8 pages.

03h - text mode. 80x25. 16 colors. 8 pages.

13h - graphical mode. 40x25. 256 colors. 320x200 pixels. 1 page.


example:
INT 10h / AH = 0Ah - write character only at cursor position.

mov al, 13h


mov ah, 0
int 10h

mov ah, 0ch

mov al, 10
mov cx, 100
mov dx, 30
int 10h

mov bl,80
label:
int 10h
inc cx
dec bl
jnz labl

 First step
We are using a loop in which we increment the cx and decrement the bl register;
While our bl register is not zero the loop is execute in process.
 Second Step
When we print a line using cx then we print a column using increment in dx .
 Third Step
When we print a square using cx and dx
Then again we copying the whole code and paste it again and again

You might also like