Вывод на экран сведений о звуковом файле в формате 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