BigEdu.ru

Програма "Screen Saver" (зберігач екрану)

Міністерство освіти України

Кіровоградський Державний Технічний Університет

Факультет автоматики, енергетики та програмування

Курсова робота

на тему: Screen Saver

Зміст

Завдання на курсову роботу

Вступ

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

2. Технічні характеристики

2.1 Постановка задачі на розробку програми

2.2 Опис алгоритму та функціонування програми

2.3 Опис язика програмування

2.4 Опис складу технічних і програмних засобів

3. Текст програми

Висновок

Перелік літератури

Завдання на курсову роботу

На мові програмування ASM 86 розробити резидентну програму на тему ”Screen saver” (зберігач екрану), яка гасить екран у разі тривалої перерви в роботі з комп’ютером. Текстову документацію до програми оформити у вигляді пояснювальної записки за вимогами ДГСТ 2.105–79, ДГСТ 2.106–68, ДГСТ 2.104–68 та ДГСТ 7.32–81.

Вступ

Курсова робота з дисципліни “Програмування на ASM 86” на тему “Screen saver” складається з програмної частини (файл ssaver.com ) та документації (пояснювальна записка).

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

Файл ssaver.com є резидентною програмою, яка має призначення гасити екран при тривалій перерві в роботі з комп’ютером. Якщо на протязі хвилини на клавіатурі не була натиснена жодна клавіша, то екран погасне. Для того, щоб відновити зображення достатньо просто натиснути на будь-яку клавішу.

Ця програма є дуже корисною, бо оберігає екран від передчасної втрати чіткості та кольоровості зображення, та має широку область застосування, особливо на персональних ЕОМ.

2. Технічні характеристики

2.1 Постановка задачі на розробку програми

На мові програмування ASM 86 розробити резидентну програму, яка здійснює гасіння екрану через заданий проміжок часу, якщо жодна клавіша не була натиснена.

2.2 Опис алгоритму та функціонування програми

Процедура OLD_09H отримує вектор переривання 09H, зберігає його в змінній OLD_KB та встановлює новий обробник переривання – NEW_09H.

Процедура обробки переривання NEW_09H викликається по натисканню будь-якої клавіші. Так як в процесі її виконання використовуються регістри, на самому початку процедури усі регістри зберігаються в стек. Потім обнуляється лічильник часу COUNTER. Після цього перевіряється чи був погашен екран. Це робиться шляхом перевірки змінної MODE. Якщо MODE=1 (екран погашен), то здійснюється перехід на мітку SS_OFF, де вміст масиву VIDEO0 – збережена раніше відео пам’ять – заноситься назад в відео пам’ять, режим екрану MODE встановлюється в 0 (екран не погашен), і обробник закінчує свою роботу, розблокувавши перед цим контролер переривань та контролер клавіатури, а також відновивши значення всіх регістрів з стеку.

Якщо ж MODE=0 (екран не погешен), то з стеку відновлюються значення усіх регістрів та керування передається старому обробнику переривання.

Процедура OLD_1CH працює аналогічно процедурі OLD_09H. Вона також отримує вектор переривання 1CH, записує його в змінну OLD_TIMER та встановлює новий обробник переривання – NEW_1CH.

Процедура обробки переривання NEW_1CH викликається приблизно 18.2 рази в секунду. Аналогічно процедурі NEW_09H, NEW_1CH також змінює значення регістрів, і для коректної роботи їх потрібно зберегти в стек, що й робиться на самому початку процедури. Далі перевіряється змінна MODE, щоб запобігти багаторазовому гасінню екрану. Якщо MODE=1 (екран був погашен), то здійснюється перехід на мітку EXIT, де відновлюються з стеку значення регістрів та керування передається старому обробнику переривання.

Якщо MODE=0 (екран не погашен), то перевіряється чи досяг лічильник часу COUNTER необхідного значення. Якщо не досяг, то значення COUNTER просто збільшується на одиницю і, відновивши з стеку значення усіх регістрів, керування передається старому обробнику. Якщо ж лічильник COUNTER досяг заданого значення, то здійснюється перехід на мітку SS_ON, де вміст відео пам’яті зберігається в масив VIDEO0, а в відео пам’ять переписуються нулі із масиву VIDEO1. Після цього змінна MODE встановлюється в 1 (екран погашен), з стеку відновлюються значення регістрів та керування передається старому обробнику переривання.

2.3 Опис язика програмування

ASM 86 являє собою мову програмування низького рівня. Основною різницею язика Assembler від язиків високого рівня таких як C, Pascal та інші, є те, що оператори язиків високого рівня звичайно переводяться в цілі набори машинних кодів, а команди язика Assembler безпосередньо в машинний код. Язик Assembler має багато достоїнств і одним з них є те, що на Assemblerі можна на пряму користуватися командами процесора.

Мова ASM 86 дозволяє оперувати такими символами:

– латинські літери: 26 заглавних та 26 строкових літер;

– цифри: від 0 до 9;

– знаки арифметичних операцій:

1. + (додавання)

2. - (віднімання)

3. * (множення)

4. / (ділення)

5. = (еквівалентно);

- команди пересилки даних, (MOV, LEA, XCHG, PUSH, POP),

- команди арифметичних операцій, (ADD, ADC, SUB, SBB, MUL, IMUL, DIV, IDIV),

- команди логічних операцій, (NO

Внимание, отключите Adblock

Вы посетили наш сайт со включенным блокировщиком рекламы!
Ссылка для скачивания станет доступной сразу после отключения Adblock!

Скачать
Курсовые работы по информатике и программированию Міністерство освіти України Кіровоградський Державний Технічний Університет Факультет автоматики, енергетики та програмування
Оценок: 1000 (Средняя 5 из 5)

Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.

© 2016 - 2022 BigEdu.ru