BigEdu.ru
» » » Програма для перегляду великих текстових файлів, розмір яких більший за 64 кілобайти
Вернуться назад

Програма для перегляду великих текстових файлів, розмір яких більший за 64 кілобайти

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

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

Кафедра програмного забезпечення

Курсовий проект

з дисципліни

“Програмування на мові ASM-86”

на тему:

“Програма для перегляду великих текстових файлів, розмір яких більший за 64 кілобайти”


ЗМІСТ

Завдання

1. Вступ

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

3. Обґрунтування вибору методів розв’язку задачі

4. Алгоритм програми

5. Реалізація програми

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

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

8. Висновки.

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

Лістинг програми.

1. Вступ

Для перегляду текстових файлів використовуються програми – переглядачі. Вони дозволяють користувачу роздивлятись будь-яку частину файла у зручному для нього вигляді.

Деякі переглядачі мають різні обмеження, наприклад на об’єм файла. Інші можуть переглядати файли будь-якої довжини. Мета цієї роботи – показати програму-переглядач саме для великих файлів.


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

Необхідно створити програму, з допомогою якої можна було б переглядати текстові файли, за об’ємом більші за 64 кілобайти.

3. Обґрунтування вибору методів розв’язку задачі

При перегляді маленьких файлів зручно їх повністю прочитати з диска у пам’ять і виводити на екран звідти. Звичайно, можна застосувати такий спосіб і для великих файлів, але при цьому буде витрачатися багато оперативної пам’яті в машині.

Для того щоб не читати файл повністю, його читають по частинах. Читають якийсь блок і переглядають його. Коли перегляд блоку завершується, то з диска підчитується наступний блок або попередній. Отже, це дає змогу переглядати великі файли при невеликому об’ємі пам’яті.

4. Алгоритм програми

1. Ввести ім’я файла

2. Відкрити файл і прочитати перший блок.

3. При натисненні клавіші “вниз” прокрутити текст вниз.

4. При натисненні клавіші “вгору” прокрутити текст вгору.

5. Вивести на екран зміст файлу.

6. Якщо область перегляду вийшла за межі блоку, то прочитати наступний або попередній блок.

7. Якщо користувач не натиснув ESC, перейти до пункту 3.

8. Стоп


5. Реалізація програми

Для операцій з файлами використовуються засоби ДОС.

Програма складається з таких процедур:

key_up - обробка “клавіша вгору”

key_down - обробка “клавіша вниз”

openfile - відкриття файла

closefile - закриття файла

readnextblock - читання наступного блоку

readprevblock - читання попереднього блоку

initblocks - ініціалізація програми

cleanup - очистка

showframe - відображення кадру

key_pgup - обробка клавіші Page Up

key_pgdn - обробка клавіші Page Down

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

Операційна система МS-DOS

Процесор 8086 або старший

Екран CGA або старший

Пам’ять 640 К

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

Для запуску програми необхідно виконати файл view64.exe. Після нього в командному рядку вводиться ім’я файла. Наприклад, “view64 big_text.txt”. Після цього на екрані з’явиться зміст файлу. Його можна “гортати” клавішами “Page Up”, “Page Down”, “Up”, “Down”.

Для виходу з програми треба натиснути клавішу “ESC”.

8. Висновки

Отже, на мові Асемблера для процесорів сімейства INTEL x86 створена програма, яка призначена для перегляду в текстовому режимі файлів. Її особливістю є те, що розмір файлів може бути більшим за 64 кілобайти.

Програма працює, але все ж таки може містити помилки. Але робота з нею не вимагає від користувача якихось спеціальних навичок, вона проста в користуванні.


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

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

2. П. Абель. Асемблер и программирование для IBM PC.


Додаток. ЛІСТИНГ ПРОГРАМИ

.model compact

.stack 1024

.386

.data

;буфери

pvideobuffer db 4000 dup(0)

fileblock db 32000 dup(0) ;блок з файла

video db 2000 dup(0) ;копiя кадра

errormsg db 'Помилка читання файла!$'

filename0 db 50 dup(0)

msg1 db 'Введiть iм`я файла. $',10,13

filehandle dw 0 ;зсилка

nblock dw 0

currentposbegin dw 0 ;початок блоку

currentposend dw 0 ;кiнець блоку

blocklength dw 0 ;фактична довжина блоку

lastkey db 0 ;останнiй рух: 0 = вниз, 1 - вгору

sym_count dw 0 ;кiлькiсть символiв на екранi

upperend dw 0

block_num dw 0

.code

start:

jmp begin

;====================ОБРОБКА КЛАВIШ

;====================KEY_UP

key_up proc

pusha

cmp word ptr fs:[lastkey],0

jne ok_up1

;перевiрка: якщо end<begin то пiдчитати попереднiй блок

mov si,word ptr fs:[currentposend]

mov di,word ptr fs:[currentposbegin]

cmp si,di

ja ok_up1

cmp word ptr fs:[block_num],1

jne ok_up1

;пiдчитка

call readprevblock

mov si,word ptr fs:[blocklength]

add si,offset fileblock

;sub si,word ptr fs:[sym_count]

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

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

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

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

© 2016 - 2022 BigEdu.ru