Вывод на экран сведений о звуковом файле в формате Wav; как минимум: размер, дата создания, количество каналов, максимальная громкость

Разработка программы, служащей для вывода информации о файле формата WAV на экран. Проектирование пользовательского интерфейса. Описание формата WAV. Выбор формата представления данных. Список процедур и их назначение. Тестирование и отладка программы.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 17.05.2013
Размер файла 29,8 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Московский энергетический институт (технический университет)

Курсовая работа по дисциплине

«Системное программное обеспечение»

Вывод на экран сведений о звуковом файле в формате Wav; как минимум: размер, дата создания, количество каналов, максимальная громкость)

Студент: Анокин К.А.

Группа:А-8-07

Москва 2010 г.

Оглавление

Введение

1. Анализ задания

2. Проектирование пользовательского интерфейса

3. Описание формата WAV

4. Выбор формата представления данных

5. Список процедур и их назначение

6. Используемые в программе функции

7. Тестирование и отладка программы

Заключение

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

Приложение

Введение

Данная программа служит для вывода информации о файле формата WAV на экран. Файлы формата WAV, как и большинство файлов состоит из заголовка и области данных. Поэтому данная задача довольно универсальна и методы, примененные здесь, могут быть так же использованы для получение информации о файлах других форматах, так же входе выполнения задании, нам необходимо будет научиться работать с файлами, использовать процедуры и макросы и т.д. Для этого нам понадобятся довольно обширные знания в ассемблере. Данная задача интересна так же тем, что в ходе выполнения, мы изучим структуру WAV файлов, что позволит нам в дальнейшем использовать полученные знания для реализации других более сложных задач, например воспроизведение, «склейка» и т.п.

1. Анализ задания

Итак, наша задача «Отображение информации (размер, дата создания, число каналов, максимальная громкость) файла WAV на экране», что для этого необходимо:

Ввести путь к файлу, который c которым будем дальше работать.

Ввод будет осуществляться посимвольно с экрана.

Для реализации данной процедуры нам понадобятся функции 07H, и 02H, соответственно первая функция служит для ввода символов с клавиатуры без эхо, и вторая для вывода этих символов на экран. Сделано это для того чтобы осуществить корректную обработку клавиши Backspace (нельзя стереть больше символов чем ввели), а так же клавиши Enter. Если бы мы ограничились использованием одной функций ввода символа с эхо, например 01H, мы бы не смогли осуществить контроль за количеством введенных символов для Backspace.

Открыть файл.

Для открытия файла используется функция 3DH, так как это единственная функция, предназначенная для открытия файла. Так же при открытии файла, мы должны предусмотреть тот случай, когда указанный файл не найден или не существует.

Убедиться, что это файл формата WAV

Для этого мы считываем идентификатор блока звуковых данных, при корректном выборе файла, он должен иметь значение ('WAVE'), для того чтобы получить данный идентификатор, мы устанавливаем смещение от начала файла 8h с помощью функции 42H, и далее считываем 4h байт при помощи функции чтения из файла 3FH. Выбор этих функций очевиден, т.к. это единственные функции подходящие для данной задачи. Далее сравниваем полученные данные, со строкой Type, в которой хранится `WAVE' при совпадении 2ух строк продолжаем дальнейшую работу, иначе выходим. Сравнение будем производить при помощи cmpsb

Определить размер файла и даты его создания.

Размер файла определяем путем перемещения курсора в конец файла функцией 42H, при этом в CX:DX мы получим искомую величину.

Дату создания файла получаем при помощи функции 57H, которая возвращает нам результат в регистр DX в следующей форме:

| 15 9 | 8 5 | 4 0|

| Год (0...119) | Месяц (1...12) | День (1...31) |

Поэтому нам необходимо будет сначала выделить отдельно день, месяц и год, а затем вывести их в десятичной форме.

Считать данные из файла, необходимые для определения числа каналов и максимальной громкости.

Для считывания данных о числе каналов и максимальной громкости, мы будем использовать ранее примененные функции 42H для установки курсора и 3FH для чтения. Необходимо обратить внимание на то, что в зависимости от длины подблока заголовка (000ch/0010h), смещение от начала файла для максимальной громкости будет 1eh/22h соответственно.

Вывести полученные данные

Для вывода данных, необходимо сначала перевести их в десятичный формат, для этого используется процедура OutWrite для вывода в десятичной форме из регистровой пары AX:DX. Для непосредственного вывода символов на экран используется функция 02H, которая идеально подходит для данной цели.

Закрыть файл

Это осуществляется с помощью функции 3EH,

2. Проектирование пользовательского интерфейса

Ввод информации (а именно пути к фалу) будет осуществляться непосредственно из программы. Нужно всего лишь запустить программу и пользователь увидит приглашение для ввода.

В программе данный метод ввода будет реализован с помощью 07h функции прерывания 21h - ввод с клавиатуры без эхо, с посимвольной обработкой данных, что позволит нам перехватить клавиши BackSpace (для удаления ошибочно введенной информации) и Enter (для завершения ввода строки).

Далее по ходу выполнения программы пользователь увидит сообщения с интересующей его информацией, либо сообщение об ошибке.

3. Описание формата WAV

Описание структуры файла WAV представлено в таблице 1.

Таблица 1. Структура WAV-файла.

Смещение от начала файла

Длина

Описание

0h

4h

Идентификатор формата ('RIFF')

4h

4h

Длина блока данных (длина файла - 8h)

8h

4h

Идентификатор блока звуковых данных ('WAVE')

0ch

4h

Идентификатор подблока заголовка ('fmt" - с пробелом в конце)

10h

4h

000ch/0010h - длина подблока заголовка

14h

2h

01h - тип формата представления данных

16h

2h

Число каналов (1 - моно, 2 - стерео)

18h

2h/4h

Частота дискретизации, Гц

1ah/1ch

2h/4h

Скорость передачи данных, байт/с (произведение числа каналов, частоты дискретизации и разрядности в байтах)

1ch/20h

2h

Числов байт для представления одного отсчета (1 - 8 бит моно, 1 - 16 бит стерео)

1eh/22h

2h

Разрядность, бит (8, 16)

20h/24h

4h

Идентификатор подблока данных ('data')

24h/28h

4h

Длина звуковых данных

2ch

Звуковые данные

4. Выбор формата представления данных

Для определения переменных в моей программе используются метки типа byte (db) и word (dw).

Все строковые сообщения определяются как byte, т.к. только с помощью директивы db можно определить строку, состоящую из нескольких символов. В таблице 2 перечислены все переменные, использующиеся в программе.

Таблица 2. Список переменных.

Имя

Метка

Примечание

MSG1

db

Сообщение. Размер файла

MSG2

db

Сообщение. Приглашение к вводу строки

MSG3

db

Сообщение. Дата создания файла

MSG5

db

Сообщение. Число каналов

MSG6

db

Сообщение. Амплитуда в битах

MSG7

db

Сообщение. Титульная информация о курсовом проекте

ErrorFnd

db

Сообщение об ошибке. Файл не найден.

ErrDate

db

Сообщение об ошибке. Невозможно получить дату.

ErrRead

db

Сообщение об ошибке. Ошибка при чтении из файла

ErrClose

db

Сообщение об ошибке. Ошибка при закрытии файла

Mono

db

Сообщение. Файл моно

Stereo

db

Сообщение. Файл стерео

BUFFER

db

Переменная для хранения считанных данных из файла

FileName

dw

Путь к файлу

FileHand

dw

Дескриптор файла

VolS

dw

Длина подблока заголовка

5. Список процедур, макросов и их назначение

В таблице 3 указан список процедур, макросов и их назначение.

Таблица 3. Список процедур, макросов и их назначение.

INITSRD

Макрос производит инициализацию регистров DS и ES.

SmbOut

Макрос служит для вывод на экран символов.

StrOut

Макрос служит для вывода на экран строки.

FileRead

Макрос служит для установки курсора и чтения из файла

FilePath

Процедура, осуществляющая ввод строки для определения пути к файлу.

OpenFileRead

Процедура открытия файла.

Channels

Процедура определения и вывода количества каналов (1-моно,2-стерео).

Volume

Процедура определения и вывода максимальной громкости в битах.

Sizepr

Процедура определения размера файла.

DateWR

Процедура определения и вывода даты создания файла в формате д день.месяц.год

CloseFile

Процедура закрытия файла

OutWrite

Процедура, выводит результат в десятичном формате из DX:AX

6. Используемые в программе функции

Для вывода символа на экран используется:

Функция 02H прерывания INT 21H

Вход

AH = 02H

DL = символ, выводимый на стандартный вывод

Выход

нет

Описание:

Посылает символ из DL на стандартный вывод.

Для считывания кода символа, в процедуре задания пути к файлу используется:

Функция 07h прерывания 21h. Ввод с клавиатуры без ЭХО.

Вход:

Нет

Выход:

AL = считанный символ.

Для вывод строки используется:

Функция 09H прерывания INT 21H

Вход

AH = 09H

DS:DX = адрес строки, заканчивающейся символом '$' (ASCII 24H)

Выход

нет =

Описание:

Строка, исключая завершающий ее символ '$', посылается на стандартный вывод.

Используется в программе для вывода сообщений по ходу выполнения, а так же для вывода сообщений об ошибках

Для открытия файла используется:

Функция 3DН прерывания INT 21Н

Вход:

AH = 3Dh

AL = 00 - только чтение

DX = адрес ASCIIZ-строки

Выход:

СF = 0 (если файл существует), 1 (если файл не найден)

АХ = дескриптор открытого файла (при успешном выполнении)

код ошибки (при возникновении ошибки)

Для чтения данных из файла используется:

Функция 3FН прерывания INT 21Н

Вход:

AH = 3Fh

ВХ = дескриптор файла

СX = число байтов, которое надо прочитать

DX = адрес области ввода

Выход:

СF = 0 (при успешном выполнении), 1 (при возникновении ошибки)

АХ = число действительно прочитанных байтов (при успешном выполнении) код ошибки (при возникновении ошибки)

Для закрытия файла используется:

Функция 3ЕН прерывания INT 21Н

Вход:

AH = 3Еh

ВХ = дескриптор файла

Выход:

СF = 1 при возникновении ошибки

АХ = код ошибки (06h - некорректный дескриптор)

Для ввода посимвольно пути к файлу используется:

Функция 01h прерывания INT 21h

Вход:

AH = 01h

Выходе:

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

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

Для определения длины файла, а также для установки курсора на место, с которого будет производится считывание используется:

Функция 42h прерывания INT 21h

Вход:

AL - показывает куда переместить указатель

00 - в начало файла

01 - в текущую позицию

02 - в конец файла

BX - дескриптор файла

CX - старшая часть смещения

DX - младшая часть смещения

Для получения даты создания файла используется:

Функция 57H прерывания INT 21h

Вход

AH = 57H

AL = 06H чтобы получить дату/время создания файла

BX = описатель файла (filehandle)

Выход

AX = код ошибки если CF установлен

CX = отметка времени файла в формате время/дата файла

DX = отметка даты файла в формате время/дата файла

7. Тестирование и отладка программы

Тестирование на ошибочный ввод параметров.

a) Попытаемся указать путь к несуществующему файлу.

b) Укажем путь к файлу не WAV формата.

Тестирование правильной работы программы.

Для тестирования правильной работы программы были созданы WAV файлы с различными параметрами, соответственно с разными размерами и датами создания.

Результат:

Программа выполнила все тесты, правильно отреагировав на все возможные ошибки.

Заключение

Программа работоспособна и соответствует предъявленным требованием.

Так как в программе использованы стандартные устройства ввода-вывода, впервые введенные в MS-DOS 2.0, то для работоспособности программы необходимо наличие на машине операционной системы не ниже чем MS-DOS 2.0.

Также возможен запуск из Windows (через меню Пуск/Выполнить…).

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

1. П. Абель Язык ассемблера для IBM PC и программирования - М.: ЭНТРОП, 2007. -447с.

2. Файл руководства по системным функциям - interrup.lst

3. Сведения о формате WAV: http://www.codenet.ru/progr/audio/sbprot.php

Приложение

файл программа интерфейс экран

Листинг программы

INITSRD MACRO

mov AX,@data ;инициализация сегментных

mov DS,AX ;регистров нa @data

mov ES,AX

ASSUME DS:@data

ENDM

SmbOut MACRO symb

mov AH,02h ;вывод символа

mov dl,symb

int 21h

ENDM

StrOut MACRO str

mov AH,09h ;вывод строки

lea dx,str

int 21h

ENDM

FileRead MACRO smesh,len ;

mov ah,42h ;перемещение указателя

mov al,0h ;от начала файла

mov cx, 0h ;

mov dx,smesh ;на величину smesh

int 21h

lea DX,BUFFER ;задаем адрес буфера

lea SI,BUFFER ;в который будет производиться чтение

mov AH,3FH ;чтение

mov CX,len ;считываем len байт

int 21H

ENDM

.MODEL SMALL

.STACK 256

.DATA

MSG1 DB 13,10, 'File size (in bytes): $'

MSG2 DB 13,10, 'Enter file path $'

MSG3 DB 13,10, 'File creation date (dd.mm.yy) : $'

MSG4 DB 13,10, 'Another file (y/n) ? $'

MSG5 DB 13,10, 'Number of channels : $'

MSG6 DB 13,10, 'Max Volume (in bits): $'

MSG7 DB 'Variant #1 Anokin K. A-8-07$'

ErrorFnd DB 13,10, 'File not found $'

ErrDate DB 13,10, 'Cant get date $'

ErrRead DB 13,10, 'Error reading file $'

ErrClose DB 13,10, 'Error closing file $'

Mono DB 'Mono(1)$'

Stereo DB 'Stereo(2)$'

Tpwave DB 'WAVE'

WrongT DB 13,10, 'Wrong type (must be WAV)$'

FileName DB ?

FileHand DW ?

VolS DW 4 DUP(' ')

BUFFER DB 4 DUP(' ')

.CODE

Start:

INITSRD ;инициализация

StrOut MSG7 ;вывод титульного сообщения

Call FilePath ;вызов процедуры получения пути к файлу

Open:

Call OpenFileRead ;вызов процедуры открытия файла

Call Channels ;вывод числа каналов

Call Volume ;вывод макс. амплитуды

CalL Sizepr ;размер файла

CaLL DateWR ;дата создания

Call CloseFile ;закрытие файла

WaitExit: ;организация задержки перед выходом

mov ah,07h ;ждем ввода символа

int 21h

Exit: ;затем выходим

mov ah,04Ch ;выход из программы

mov al,0h

int 21h

Channels PROC ;процедуры вывода числа каналов

StrOut MSG5

FileRead 16h,2h

Jnc NoErr1 ;проверяем на наличие ошибок

StrOUT ErrRead ;вывод сообщения об ошибке

Jmp WaitExit ;выходим из программы

NoErr1: ;ошибок нет

mov al,[si] ;в al загружаем считанное из буфера

cmp al,01h ;канал один ?

je m1 ;да

StrOut Stereo ;нет, канал стерео, выводим сообщение

jmp m2

m1:

StrOut Mono ;выводим сообщение

m2:

ret

Channels ENDP

Volume Proc ;процедура вывода макс. амплитуды

StrOut MSG6 ;выводим сообщение

FileRead VolS,2h ;считываем макс громкость

Jnc NoErr2 ;проверяем на наличие ошибок

StrOUT ErrRead ;сообщение об ошибке

Jmp WaitExit ;выходим из программы

NoErr2: ;ошибок нет

mov al,[si] ;в al загружаем считанное из буфера

xor dx,dx

Call Outwrite ;Вывод результата в десятичной форме

ret

Volume ENDP

FilePath PROC ;процедуры получения пути к файлу

StrOUT MSG2 ;выводим приглсительное сообщение

lea di, FileName ;сохраним адрес в di

mov cx, 0 ;счетчик введенных символов

keypress:

mov ah, 07h ;функция ввода с клавиатуры без эхо

int 21h ;вводим

cmp al, 08h ;проверяем был ли это backspace

jne keydisp ;если нет - пропускаем часть кода до метки

cmp cx, 0 ;нельзя удалить больше чем ввели

je keypress ;поэтому возвращаемся на начало

;иначе удаляем последний символ

push ax ;сохраним регистр ax

mov ah, 02h ;функция вывода символа

mov dl, 08h

int 21h ;курсор на 1 позицию назад

mov dl, 20h

int 21h ;выводим пробел (сотрем последний символ)

mov dl, 08h

int 21h ;курсор на 1 позицию назад

pop ax

dec di ;уменьшаем адрес на 1

dec cx ;и количество введенных символов

jmp keypress ;и возвращаемся на начало

keydisp:

mov ah, 02h ;функция вывода символа на экран

mov dl, al ;символ для вывода в dl

int 21h ;выводим символ

mov [di], al ;сохраняем символ по адресу di

inc di ;увеличиваем адрес на 1

inc cx ;увеличиваем счетчик символов на 1

cmp al, 0dh ;проверим введен ли Enter

jne keypress ;если нет - на начало

dec di ;установим курсор после введенной строки

mov al, 00h ;в al - 00

mov [di], al ;установим 0-символ в конец строки

; что бы привести её к формату ASCI

ret

Filepath ENDP

Sizepr PROC ;процедура вывода размера файла

StrOUT MSG1 ;вывод ссобщения

mov AH,42h ;запрос перемещения указателя

mov AL,02h ;в конец файла

mov BX,[filehand] ;загрузить дескриптор файла

mov CX,0 ;старшее слово смещения

mov DX,CX ;младшее слово смещения

int 21H ;вызов обработчика прерывания

CALL Outwrite ;вызов процедуры вывода в 10чной форме

ret

Sizepr ENDP

Outwrite PROC ;процедура вывода dx:ax в десятичной форме

xchg si,dx ;Сохранить старший dword

mov bx,10 ;Основание системы счисления

xor cx,cx ;Счетчик десятичных цифр

bignum_1:

xchg ax,si ;Рассчитать десятичную цифру

xor dx,dx

div bx

xchg si,ax

div bx

or dl,'0' ;Преобразовать результат в символ цифры

push dx ;Сохранить цифру в стеке

inc cx ;Увеличить счетчик цифр

or ax,ax ;Все преобразовали?

jnz bignum_1

bignum_2:

pop ax ;извлекаем из стека символ

mov dx,ax ;помещаем его в dx

mov ah,02h ;и выводим его

int 21h

loop bignum_2

xor ax,ax

ret

Outwrite ENDP

DateWR PROC ;процедура вывода даты создания файла

mov bx,[filehand] ;загружаем дескриптор файла в BX

StrOUT MSG3 ;выводим сообщение

mov AH,57H ;получение даты создания файла

mov AL,06H

int 21h

jc ErDate ;отработка ошибки

push dx ;полученный результат сохраняем в стеке

and dx,0000000000011111B ;день с 0 по 4 разряд

mov ax,dx ;результат перемещаем в ax

xor dx,dx

Call Outwrite ;вывод в десятичной форме

SmbOUT '.' ;выводим символ `.'

pop dx ;извлекаем из стека

push dx

and dx,0000000111100000B ;месяц с 5 по 8 разряд

shr dx,5 ;смещаем на 5 вправо

mov ax,dx ;результат помещаем в ах

xor dx,dx

Call Outwrite ;выводим в десятичной форме

SmbOUT '.' ;выводим символ `.'

pop dx ;извлекаем из стека

and dx,1111111000000000B ;год с 9 по 15 разряд

shr dx,9 ;сдвигаем на 9 вправо

add dx,1980 ;прибавляем 1980

mov ax,dx ;результат перемещаем в ах

xor dx,dx

Call Outwrite ;выводим в десятичной форме

jmp m3 ;ошибок нет, переходим на метку

ErDate: ;есть ошибки

StrOUT ErrDate ;выводим сообщение

Jmp WaitExit ;и выходим из программы

m3:

ret

DateWR ENDP

OpenFileRead PROC ;процедуры открытия файла

mov ah,3dh ;открываем файла

mov al,0 ;для чтения

lea dx,FileName ;в dx адрес файла

int 21h

jnc NoErr3 ;проверяем на наличие ошибок

StrOUT ErrorFnd ;выводим сообщение об ошибке

jmp WaitExit ;и выходим из программы

NoErr3: ;если ошибок нет

mov [filehand],AX ;в filehand загружаем дескриптор файла

mov bx,ax

FileRead 8h,4h ;Считываем идентификатор блока

;звуковых данных, должен быть WAVE

lea di,TPwave ;в di будет строка с которой будем сравнивать

mov cx,4

repe cmpsb ;сравниваем строки

je RightType ;если строки совпали переход

StrOUT WrongT ;нет- сообщение неверный формат

jmp WaitExit ;выходим из программы

RightType: ;если строки совпали, то

FileRead 10h,4h ;считываем длину подблока заголовка

mov ax,[si] ;должна быть 000ch/0010h -

cmp ax,0010h

je o1 ;если 000ch, то задаем смещение от начала файла

mov Vols,1eh ;для определения макс. громкости равное 1eh

jmp o3

o1: ; если 0010h, то задаем смещение от начала файла

mov VolS,22h ; для определения макс. громкости равное 22h

o3:

ret

OpenFileRead ENDP

CloseFile PROC ;процедуры закрытия файла

mov ah,3eh

int 21h

jnc NoErr4 ;отработка ошибки

StrOut ErrClose ;есть ошибка, выводим сообщение

Jmp WaitExit ;выходим из программы

NoErr4: ;ошибок нет

ret

CloseFile ENDP

End Start

Размещено на Allbest.ru

...

Подобные документы

  • Проектирование пользовательского интерфейса. Выбор формата представления данных, используемые переменные. Список процедур и макросов, их назначение. Используемые в программе функции. Тестирование и отладка правильной работы программы, схема листинга.

    курсовая работа [28,6 K], добавлен 17.05.2013

  • Проектирование пользовательского интерфейса программы, осуществляющей шифрование и дешифрование файлов. Выбор формата представления данных. Список процедур, макросов и их назначение. Описание используемых в программе функций, ее тестирование и отладка.

    курсовая работа [29,3 K], добавлен 17.05.2013

  • Поиск вредоносных программ по средствам программ антивирусных. Выбор формата представления данных. Интерфейс программы, ее тестирование и отладка. Список процедур, их назначение. Поиск как средство для облегчения, удобства, надежности работы на ПК.

    курсовая работа [22,4 K], добавлен 17.05.2013

  • Задача зеркального отражения изображения как одна из подзадач многих программ. Анализ создания программы, выполняющей зеркальное отображение изображения, который хранится в файле формата .pcx (256 цветов). Проектирование пользовательского интерфейса.

    курсовая работа [625,6 K], добавлен 17.05.2013

  • Создание работоспособного приложения, обеспечивающего сокрытие информации произвольного размера в файле формата JPEG и доступ к уже имеющейся информации. Определение основных понятий стеганографии. Структура файла формата JPEG. Метод сокрытия данных.

    курсовая работа [57,5 K], добавлен 30.03.2009

  • Считывание информации из файла, анализ заголовка. Установка видеорежима и анализ его параметров. Разработка процедуры вывода изображения на экран. Методы вывода сообщений. Разработка алгоритма, удовлетворяющего требованиям задания и интерфейса программы.

    курсовая работа [23,6 K], добавлен 17.05.2013

  • Проектирование структуры и архитектуры программного продукта. Реализация программы конвертера файлов баз данных. Описание пользовательского интерфейса. Выбор порядка конвертации dbf файлов. Создание и исполнение шаблонов. Расчет себестоимости продукта.

    дипломная работа [2,2 M], добавлен 21.06.2013

  • Реализация программы-конвертера для создания на основе передаваемых dbf файлов файла формата XML (по заданному пользователем шаблону). Создание шаблонов при помощи кода и при помощи конструктора. Проектирование архитектуры программного продукта.

    дипломная работа [1,6 M], добавлен 27.06.2013

  • Создание программы для вычисления значения функции на основе определённой формулы. Уточнение структуры входных и выходных данных и определение ассемблерного формата их представления. Разработка алгоритмов для реализации работы программного обеспечения.

    курсовая работа [240,6 K], добавлен 17.06.2013

  • Разработка программы на языке Pascal. Описание переменных. Действия, которые должна выполнить программа согласно выбранного алгоритма. Детализация графической части программы. Листинг и тестирование программы. Вывод массива данных на экран монитора.

    контрольная работа [360,4 K], добавлен 13.06.2012

  • Разработка программного продукта для экспорта спецификации из приложения PartList. Выбор метода передачи информации в файл, формата для представления. Разработка конвертера, реализация пользовательского интерфейса. Обоснование актуальности разработки.

    дипломная работа [2,6 M], добавлен 25.09.2014

  • Общая информация о графическом формате. Описание формата Microsoft Windows Bitmap. Структура файла DDВ исходного формата ВМР. Преобразования графических файлов. Просмотр и редактирование растровых изображений. Создание многодокументного приложения.

    дипломная работа [1,5 M], добавлен 06.06.2010

  • Описание работы программы, осуществляющей запись команд графического экрана в файл формата BMP. Изучение функции чтения 18-битовых значений из нескольких последовательно расположенных регистров таблицы цветов. Составление блок-схемы и текста программы.

    курсовая работа [198,1 K], добавлен 20.11.2012

  • Описание формата и структуры входных и выходных файлов. Выбор языка программирования и Perl модуля для генерации документов в формате pdf. Валидация почтового адреса. Процесс создания алгоритма обработки данных. Структура штрихкодового идентификатора.

    дипломная работа [1,6 M], добавлен 04.11.2015

  • Разработка ввода с клавиатуры и вывода на экран монитора данных с помощью стандартных функций printf и scanf. Ввод количества материальных точек. Работа с линейным списком. Хранение содержимого списка в блоке ячеек памяти с последовательными адресами.

    курсовая работа [176,8 K], добавлен 18.01.2016

  • Использование массива данных о сотрудниках небольшой фирмы для создания программы. Введение информации, ее хранение в файле workers.dat. Процедуры и функции программы, дополнительные файлы, описание предметной области и алгоритма задачи, листинг.

    курсовая работа [22,0 K], добавлен 29.11.2009

  • Создание типизированного файла, содержащего информацию о тестировании студентов по учебным дисциплинам. Описание необходимых входных данных. Используемые компоненты при разработке программы. Процедура Output, служащая для вывода базы данных на экран.

    курсовая работа [907,1 K], добавлен 10.01.2015

  • Разработка и тестирование программы на языке Pascal для поиска, вывода на экран и сохранения в файл списка книг с фамилиями авторов в алфавитном порядке, изданных после 2012 года. Разработка алгоритма и его описание. Инструкции по эксплуатации приложения.

    курсовая работа [903,0 K], добавлен 13.06.2013

  • Анализ и сбор сведений по предметной области. Исследование программ-аналогов для выявления имеющихся недостатков. Создание структуры данных. Разработка пользовательского интерфейса и сопроводительной документации. Отладка и тестирование программы.

    отчет по практике [2,2 M], добавлен 28.04.2015

  • Виды моделей жизненного цикла разработки программного продукта. Отладка и тестирование программы. Вопросы и варианты ответов на отдельных вкладках. Запись результатов тестирования в файл, вывод на экран количества правильных и неправильных ответов.

    курсовая работа [663,8 K], добавлен 23.09.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.