Реалізація функцій бібліотеки графіки для виводу тексту у графічному режимі (OutTextXY, SetTextStyle) - Курсовая работа

бесплатно 0
4.5 167
Програмування під DOS мовою низького рівня Асемблер (ASM-86). Функції програми: виведення в довільне місце екрану тексту заданого стилю та кольору, змінення шрифту, розміру літер та напрямку їх виводу. Алгоритм програми, системні вимоги до комп"ютера.

Скачать работу Скачать уникальную работу

Чтобы скачать работу, Вы должны пройти проверку:


Аннотация к работе
Становлення високоефективної світової економіки, неможливо без розвиненого ринку програмних засобів і засобів звязку. Тепер компютери відіграють у житті людини велику роль, бо в ті часи коли ще не було компютерів, людина витрачала свій час на ручну роботу, в той час щоб робити щось інше. Зараз з їх допомогою ми можемо проводити числові розрахунки, створювати фільми, музику, проводимо управління заводами та космічними кораблями, пишемо нові корисні програми. Компютери отримали широке розповсюдження, стали універсальним засобом для обробки усіх видів інформації, які використовує людина. Користуючись цією мовою програмування, програміст повинен: добре знати систему, вміти користуватися системними функціями, перериваннями.Вона здатна змінювати матрицю, за якою будується літера, розмір літери та напрямок виводу літер.Перед програмістом постала досить складна та цікава задача - написати аналог функцій OUTTEXTXY та SETTEXTSTYLE.Спектр функцій, які повинна виконувати програма є досить широким. Саме цей фактор спонукав до вибору стандартного відео режиму номер 13h. Він має 320 пікселів по горизонталі та 200 по вертикалі і здатен виводити 256 кольорів одночасно. Крім того, вивід однієї точки на екран зводиться лише до простого запису номеру кольору у відеобуфер, що суттєво спрощує вивід на екран. Загальна кількість точок на екрані складає 64000, що позбавляє необхідності перемикати банки памяті відео карти (вікна).Програма вирішує поставлену задачу за допомогою використання підпрограм: vvod - процедура вводу з клавіатури. vvodvsego - процедура виводу інструкцій для користувача та вводу даних; probeli - процедура виводу на екран заданої кількості синіх проміжків у заданому місці екрану; vivstr - процедура виводу на екран строки у задане місце екрану;Як зазначалося вище, вимоги до компютеру є досить низькими: процесор 80286

ОЗУ 640 кб.

ОС MS-DOS 4.0 і вищеПісля цього на екрані зявиться запрошення до роботи. Якщо вибрано вивід тексту, то потім слід дотримуватись інструкцій, які будуть зявлятися на екрані.Дана програма має досить широке коло використання завдяки широкому спектру дій, які вона виконує.Лістинг програми dseg segment hor dw 0 ver dw 0 y dw 0 x dw 0 razm db 0 sdvig dw 0 stroka db 9 buf db 5 dup (0) koord dw 5 dup (0) buftxt db 22 dup (?) mes1 db "Введите номер действия: $" mes3 db "1 - Вывод текста$" mes4 db "2 - Выход в DOS$" mes5 db "Введите координату X $" mes6 db "Введите координату Y $" mes7 db "Введите размер матрицы: $" mes8 db "1 - 8 X 14$" mes9 db "2 - 8 X 8$" mes10 db "3 - 8 X 16$" mes11 db "Введите текст $" mes12 db "Введите номер цвета$" mes13 db "Введите размер шрифта$" mes14 db "Введите направление вывода: $" mes15 db "1 - Слева - напрво (_) $" mes16 db "2 - Сверху - вниз (_) $" r1 db "г=======================================-$" r2 db "¦ ¦$" r3 db "¦ ¦$" r4 db "¦ ¦$" r5 db "¦ ¦$" r6 db "¦ ¦$" r7 db "L=======================================-$" indeks dw 0 dseg ends sseg segment stack db 256 dup (?) sseg ends cseg segment stack assume cs: cseg,ds: dseg,ss: sseg vvod proc lea dx,buf mov ah,3fh mov cx,3 mov bx,0 int 21h mov al,buf sub al,"0" ret vvod endp vvodvsego proc call ramka mov dx,0b1eh lea cx,mes5 call vivstr call vvkoor mov dx,0b1eh lea cx,mes6 call vivstr call vvkoor call ramka mov dx,0a1ch lea cx,mes7 call vivstr mov dx,0c23h; поз. курсора mov cx,1 call probeli; вывод синего пробела lea cx,mes8 call vivstr mov dx,0d23h; поз. курсора mov cx,1 call probeli; вывод синего пробела lea cx,mes9 call vivstr mov dx,0e23h; поз. курсора mov cx,1 call probeli; вывод синего пробела lea cx,mes10 call vivstr mov dx,0a35h; поз. курсора mov cx,1 call probeli; вывод синего пробела call vvod rcl al,1 mov byte ptr koord 4,al rcr al,1 cmp al,1 je dal2 cmp al,2 je dal3 mov razm,16 jmp kon1 dal3: mov razm,8 mov byte ptr koord 4,3 jmp kon1 dal2: mov razm,14 kon1: inc indeks inc indeks call ramka mov dx,0b1ch lea cx,mes12 call vivstr call vvkoor; ввод цвета call ramka mov dx,0b1dh lea cx,mes13 call vivstr call vvkoor; ввод размера шрифта call ramka mov dx,0b1ah lea cx,mes14 call vivstr mov dx,0c1eh; поз. курсора mov cx,1 call probeli; вывод синего пробела lea cx,mes15 call vivstr mov dx,0d1eh; поз. курсора mov cx,1 call probeli; вывод синего пробела lea cx,mes16 call vivstr mov dx,0b37h; поз. курсора mov cx,1 call probeli; вывод синего пробела call vvod cmp al,1 je dal mov hor,0 mov al,razm add al,2 mov byte ptr ver,al jmp kon2 dal: mov hor,10 mov ver,0 kon2: ret vvodvsego endp vvkoor proc mov dx,0d26h mov cx,3 call probeli mov ah,3fh mov bx,0 mov cx,6 lea dx,buf int 21h mov dx,ax ; вывод рамки lea ax,r1; загрузка смещения mov sdvig,ax; в пер. sdvig mov cx,7; колво рядков рамки next1: push cx mov cx,sdvig mov dh,stroka mov dl,14h call vivstr inc stroka; переходна след. строку add

План
Зміст

Вступ

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

1.1 Постановка задачі

1.2 Обґрунтування вибору методів розвязання задачі

1.3 Алгоритм програми

2. Системні вимоги

3. Інструкція користувача

4. Висновок

5. Використана література

Додатки

Вывод
Дана програма має досить широке коло використання завдяки широкому спектру дій, які вона виконує. Вона здатна змінювати матрицю, за якою будується літера, розмір літери та напрямок виводу літер. Також вона здатна змінювати колір тексту. Гама кольорів є досить широкою і складає 256 кольорів.

Ця програма може використовуватись у компютерному дизайні при оформленні текстових повідомлень, объяв тощо.

Список литературы
1. Том Сван "Освоение Turbo Assembler"

2. Роберт Журден "Справочник программиста на персональном компьютере фирмы IBM"

3. Бредлі Д. "Програмування на мові Асемблер".

4. Абель П. "Мова Асемблера для IBM PC та програмування"

5. Зубков С.В. “Assembler для DOS, Windows и Unix”

Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность
своей работы


Новые загруженные работы

Дисциплины научных работ





Хотите, перезвоним вам?