Рисование в графическом редакторе

Автор работы: Пользователь скрыл имя, 09 Октября 2014 в 19:02, курсовая работа

Краткое описание

Задание: разработать программу, позволяющую рисовать на экране монитора в графическом режиме точки и линии с помощью клавиатуры.

Содержание

Задание 3
Блок-схема программы 4
Описание используемых функций программы 6
Листинг программы 7
Заключение. 11
Список использованной литературы 12

Прикрепленные файлы: 1 файл

ПЗ мое.docx

— 148.97 Кб (Скачать документ)

 

 

 

 

 

 

 

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

К КУРСОВОЙ РАБОТЕ

(СПО)

 

 

Тема: Рисование в графическом режиме.

 

 

 

 

 

 

 

 

 

 

Казань 2012г.  
Оглавление

 

 

Задание

 

 Разработать программу, позволяющую рисовать на экране монитора в графическом режиме точки и линии с помощью клавиатуры.

 

 

 

Блок-схема программы

 

Построение линии:

 
Описание используемых функций программы

 

0h функция 10h прерывания.

Вход: в AL код определяющий режим монитора и разрешение

Описание: Задает режимы монитора (текстовый и графический) разного расширения.

 

0h функция 16h прерывания.

Вход: AH = 0h

выход: AL = ASCII символ (если AL=0, AH содержит расширенный код ASCII )

            AH = сканкод  или расширенный код ASCII

Описание: Ожидает нажатие клавиши клавиатуры и возвращает её код символ в AL.

 

07h функция 21h прерывания.

Вход: AH = 07h

Выход: AL = символ, полученный через стандартный ввод

Описание: Считывает (ожидает) символ со стандартного входного устройства и возвращает этот символ в AL.

 

0Сh функция 10h прерывания.

На входе:   AH = 0Ch - запись пиксела;   AL = номер цвета;    BH = номер страницы (для CGA не используется); CX = координата X; DX = координата Y.

Описание: Ставит точку в заданную страницу, заданное место, заданным цветом.

 

4Сh функция 21h прерывания.

Вход: AH = 4Сh; AL = код выхода

Описание: Возвращает управление от порожденного процесса его родителю, устанавливая код выхода.  
Листинг программы

.MODEL small

.STACK 100h

.DATA

x dw 200

y dw 100

color db 1,2,3,4,5,6,7,8,9

perem dw 0

perem1 dw 0

V dw 0

V1 dw 0

.CODE

mov ax,@Data

mov ds,ax

 

;zadanie rezshima

mov ah,00

mov al,12h

int 10h

 

nachalo:

mov ah,0ch ;proverka na nazchatie klavish

int 16h

 

;poluchaem vvedennyy symbol

mov ah,7

int 21h

 

cmp al,'s'

je vniz ;esli raven

cmp al,'w'

je vverh

cmp al,'d'

je vpravo

cmp al,'a'

je vlevo

cmp al,'t'

je tochka

cmp al,'n'

je nach 

cmp al,'k'

je kon

jmp konec

vniz:

inc x

jmp nachalo

vverh:

dec x

jmp nachalo

vpravo:

inc y

jmp nachalo

vlevo:

dec y

jmp nachalo

tochka:

mov ah,0ch

mov al,color 

mov cx,y

mov dx,x

mov bh,0

int 10h

nach:

mov bx,y

mov V,bx

mov bx,x

mov V1,bx

mov ah,0ch

mov al,color

mov cx,y

mov dx,x

mov bh,0

int 10h

jmp nachalo

kon:

mov bx,V

cmp bx,y

jg pr ;pryamoe vychitanie

sub bx,y

inv bx

mov perem,0

jmp m ; obhod pryamogo vychitaniya

 

pr: sub bx,y

mov perem,1

 

m: mov cx,V1

cmp cx,x

jg pr1 ;pryamoe vychitanie

sub cx,x

deg cx

mov perem1,0

jmp m1 ; obhod pryamogo vychitaniya

 

pr1: sub cx,x

mov perem1,1

 

m1: cmp bx,cx

jg gorizont

 

;liniya vertical'naya

cmp perem1,0

jz yvel ;yvelichenie nachal'noy tochki

mov ah,0ch

mov al, color

mov bh,0

t1:

mov cx,V

mov dx,V1

int 10h

dec V1

cmp dx,x

jne t1

jmp nachalo

 

yvel:

mov ah,0ch

mov al, color

mov bh,0

t2:

mov cx,V

mov dx,V1

int 10h

deg V1

cmp dx,x

jne t2

jmp nachalo

 

;liniya gorizontal'naya

gorizont: 

cmp perem,0

jz yvel2 ;yvelichenie nachal'noy tochki

mov ah,0ch

mov al, color

mov bh,0

t3:

mov cx,V

mov dx,V1

int 10h

dec V

cmp cx,y

jne t3

jmp nachalo

 

yvel2:

mov ah,0ch

mov al, color

mov bh,0

t4:

mov cx,V

mov dx,V1

int 10h

inc V

cmp cx,y

jne t4

jmp nachalo

 

konec: 

mov ah,0ch

int 16h

cmp al,13 ;proverka enter

je vce

jmp nachalo

 

vce:

mov ax,3 ;vozvrat v text pezchim

int 10h

mov ah,4ch

int 21h

end 

 

Заключение.

 

Программа, позволяет рисовать точки и линии в графическом режиме.

 

Список использованной литературы

 

  1. Джордан. Программирование на ассемблере.
  2. Абель. Ассемблер. Язык и программирование для IBM PC
  3. Ресурсы интернета.

 


 

 



Информация о работе Рисование в графическом редакторе