Програма Txtprint.com - резидентна програма для швидкого і зручного друкування виборчого тексту з екрану - Курсовая работа

бесплатно 0
4.5 182
Програма Txtprint.com для друку на принтері вибіркового тексту з екрану. Обґрунтування вибору принципу розробки та методики побудови системи. Розрахунки та експерементальні матеріали, які підтверджують вірність програмних рішень, текст програми.

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

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


Аннотация к работе
Програма txtprint.com - резидентна програма, яка предназначена для того, щоб швидко і зручно надрукувати виборчий текст з екрану. Також ця програма може стати у пригоді тоді, коли треба надрукувати текстовий файл, але не повністю, окремими епізодами. Також в програмі встановлено тест на подвійну загрузку, отже при спробі завантажити її вдруге користувач отримає повідомлення про це, а також програма нагадае про «гарячі» клавіші, таким чином запобігаючи подвійного завантаження.Також її можна використовувати в учбових закладах для полегчення і прискорення засвоєння потрібної документації з компютера (різні HELP-програми, завдання задач та ін.). Для цього користувачу потрібно перед переглядом документації на компютері завантажити програму TXTPRINT.COM і в потрібний час викликати її за допомогою «гарячих» клавиш. Після чого цей текст розпечатається на принтері, і буде більш зручнішим для прочитання та багаторазового перегляду під час виконання роботи (лабораторної тощо). Програма має дуже простий і зручний інтерфейс, що дуже полегшує роботу з нею, займає усього 2 кілобайти DOS-памяті. Програма TXTPRINT.COM повинна бути резидентною, працювати швидко та надійно при різних процесорах, а також займати якомога менше памяті.Реентабельною (повторно входимою) програмою називаеться програма чи процедура, одна копія якої в памяті може бути одночасно викликатись кількома процесами, при чьому різноманітні виповнювання цієї процедури не впливають одна на одну. Справа в тому, що ці резидентні програми використовують для свого запуску аппаратні преривания, які можуть статися в будь-який час, у тому числі й тоді, коли виповнюється функція DOS. Існують i інші ситуації, коли зручніше було б використовувати функції DOS. Замість цього периодично перевіряється стан буфера вводу (функція DOS 0BH або функція 01H преривання 16H). Це преривання використовується резидентними процесами самої операційної системи, наприклад, PRINT, та генерується як раз під час виконання функцій DOS, коли прапорець активністі DOS взведений, але система знаходиться у безпечному стані.Під час просмотру інформації на екрані, яку треба розпечатати треба натиснути SCROLLLOCK. Потім для розпечатки натиснути клавишу BACKSPACE, щоб почати розпечатувати, або ESC в разі, якщо текст був помічений неправильно. Коли роботу з розпечаткою закінчено взагалі, можна вилучити програму TXTPRINT.COM з памяті за допомогою комбинації клавиш Ctrl Alt Esc. Програма повідомить про закінчення своєї роботи, і для того, щоб розпочати роботу програми знов, треба заново завантажувати TXTPRINT.COM. Тому якщо після завантаження TXTPRINT.COM були також завантажені інші програми, використовуючи хоча б одне з цих преривань, то цю програму неможна буде вилучити з памяті доти, доки не будуть вилучені ті програми, а отже востановлені вектори цих преривань.; активности START. call prepare ; Запуск. and byte ptr cs:[flags_offset],not(mask Sf or mask Rf or mask Af) end_08h: and byte ptr cs:[flags_offset],not mask Tf ; Сбросити iret ; признак активністи Int_08h. pass_08h: ; Передати управління ісходному jmp dword ptr cs:[int_08h_vect-shift] ; обробнику. int_08h_vect dd ? int_08h endp int_09h proc far push ax ; Сохранити регістр AX. in al,60h ; Ввести код натиснутої клавиши. cmp al,70 ; клавиша SCROLLLOCK. jne remove_test mov ah,2 ; Перевірити Shift state. int 16h and al,0h cmp al,0h jne pass_09h or byte ptr cs:[flags_offset],mask Sf jmp short end_09h remove_test: cmp al,1 ; Клавиша Esc ? jne pass_09h mov ah,2 ; Перевірити Shift state. int 16h and al,0ch cmp al,0ch jne pass_09h or byte ptr cs:[flags_offset],mask Rf end_09h: in al,61h ; Обробити апаратне преривання. push ax or al,80h out 61h,al pop ax out 61h,al mov al,20h out 20h,al pop ax iret pass_09h: pop ax ; Восстановити регістри і передати управління по старому jmp dword ptr cs:[int_09h_vect-shift]; вектору преривання Int_09h. int_09h_vect dd ? int_09h endp int_2fh proc far cmp ax,8900h ; Якщо запитуєтся установка процесу jne pass_2fh ; з номером 89Н, то запретити установку. mov al,0ffh ; Інакше передати управління iret ; ісходному обробнику. pass_2fh: jmp dword ptr cs:[int_2fh_vect-shift] int_2fh_vect dd ? int_2fh endp exeptions proc far int_24h: mov al,3 ; Команда "Зняти системний визов". int_23h: iret ; Вийти з преривання. int_24h_vect dd ? int_23h_vect dd ? exeptions endp dos_flag_off dw ? dos_flag_seg dw ? resident_sign internal_flags ;************************************************************* prepare proc cli ; Ініціализувати стек. mov word ptr cs:[stack_offset-shift],sp mov word ptr cs:[stack_seg-shift],ss push cs pop ss mov sp,start_offset sti push ax ; Сохранити регістри. push bx push cx push dx push di push si push bp push ds pushes push cs pop ds mov al,23h ; Встановити новий обробник преривання Int23h. mov dx,int_23h-shift mov di,int_23h_vect-shift call sethandler mov al,24h ; Встановити новий обробник прерывання Int24h. mov dx,int_24h-shift mov di,int_24h_vect-shift call sethandler mov ah,15 ; Визначити поточний відеор

План
Зміст

Вступ.

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

2. Огляд існуючих систем. Обґрунтування вибору принципу розробки та методики побудови системи. Постановка задачі по реалізації технічного завдання

3. Опис та обґрунтування проектних рішень по проектуванню системи.

4. Разрахунки та експерементальні матеріали які підтверджують вірність програмних рішень

5. Основні висновки

Перелік скорочень, символів та спеціальних термінів.

Список літератури.

Анотація.

Додатки.

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

Вывод
Програма TXTPRINT.COM - програма для вибіркового друку тексту з екрану. Для того, щоб получити готовий COM - файл з тексту програми, треба виконати: TASM TXTPRINT.ASM, потім TLINK TXTPRINT.OBJ /T. Після цього запустити програму TXTPRINT.COM. Під час просмотру інформації на екрані, яку треба розпечатати треба натиснути SCROLLLOCK. Після цього, користуючись клавишами курсору і ENTER помітити необхідний фрагмент тексту. Потім для розпечатки натиснути клавишу BACKSPACE, щоб почати розпечатувати, або ESC в разі, якщо текст був помічений неправильно. Після цього програма завершує своє роботу до наступного виклику по SCROLLLOCK. Коли роботу з розпечаткою закінчено взагалі, можна вилучити програму TXTPRINT.COM з памяті за допомогою комбинації клавиш Ctrl Alt Esc. Програма повідомить про закінчення своєї роботи, і для того, щоб розпочати роботу програми знов, треба заново завантажувати TXTPRINT.COM.

Програма в процесі роботи змінює вектори преривань 08H, 09H, 28H, 2FH, 23H і 24H. Тому якщо після завантаження TXTPRINT.COM були також завантажені інші програми, використовуючи хоча б одне з цих преривань, то цю програму неможна буде вилучити з памяті доти, доки не будуть вилучені ті програми, а отже востановлені вектори цих преривань.

Перелік скороченнь, символів та спеціальних термінів i т.д. - i так далі i т.i. - i таке інше та ін. - та інші т.я. - так як п. - пункт

ОС - операційна система popup - резидентні програми, які викликаються користувачем

DOS - дискова операційна система

BIOS - базова система вводу/виводу

INT - переривання

PC - персональний компютер

WINDOWS - операційна система

Список литературы
1. Р. Джордейн «Справочник программиста персональных компьютеров типа IBM PC» М: Мир, 1991р.

2. П. Абель «Мова асемблера для IBM PC та програмування.» М.: Вища школа,1992.

3. Р. Лей та "Уейт-Груп" «Написання драйверів для MS-DOS.» М.: Мир, 1995р.

4. Електронний спавочник «TEACHHELP»

5. Конспект лекцій по системному програмуванню

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


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

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





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