Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Моя курсовай МПС.docx
Скачиваний:
7
Добавлен:
19.12.2018
Размер:
335.07 Кб
Скачать

Министерство общего и профессионального образования

Государственное бюджетное образовательное учреждение высшего профессионального образования

КУБАНСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра Вычислительной техники и АСУ

(наименование кафедры)

ПОЯСНИТЕЛЬНАЯ ЗАПИСКА

к курсовому проекту (работе)

по дисциплине: Микропроцессорные системы

(наименование дисциплины)

на тему: Разработка программы по преобразованию информации, заданной дампом памяти, в канальный файл

(тема курсового проекта (работы)

Выполнил студент группы 10-К-ПИ1

Абдулаев Мурад Гаджиевич

(ф.и.о.)

Допущен к защите_____________________________________________

Руководитель проекта __________________________________________

Нормоконтроллер _____________________________________________

Защищен _____________________ Оценка ________________________

                         (дата)

Члены комиссии ______________________________________________

(подпись, дата, расшифровка подписи)

Краснодар

2011

Кубанский государственный технологический университет

Кафедра Вычислительной техники и АСУ

(наименование кафедры)

УТВЕРЖДАЮ:

Зав.кафедрой   ВТ и АСУ 

Д.т.н. проф. В.И. Ключко

З А Д А Н И Е

на курсовое проектирование

Студенту: Абдулаеву М.Г. группы 10-К-ПИ1 2-го курса

факультета   КТАС     

специальности   080801 Прикладная информатика в экономике

Тема проекта: Разработка программы по преобразованию информации, заданной дампом памяти, в канальный файл

Содержание задания: Разработать программу на языке Assembler, формирующую слова из заданных байтов и битов исходного файла; по данным конечного файла построить график

Объем работы:

а) пояснительная записка к проекту 33 стр.

б) 2 приложения

Рекомендуемая литература: Юров В.И., Зубков С.В., Пирогов В.Ю.

Срок выполнения проекта: с " 6" октября по" 19 " декабря 2011г.

Срок защиты:                      " 25" декабря 2011г.

Дата выдачи задания:                  "6" октября 2011г.

Дата сдачи проекта на кафедру:            "___"______г.

Руководитель проекта к.т.н., доц. А.Г. Мурлин

                                                                         (подпись , ф.и.о., звание, степень)

Задание принял студент ____________________6 октября___________

                                                                                          (подпись, дата)

Министерство образования и науки Российской Федерации

Федеральное агентство по образованию

Государственное бюджетное образовательное учреждение высшего

профессионального образования

«Кубанский государственный технологический университет»

(КубГТУ)

РЕФЕРАТ

Пояснительная записка курсового проекта (работы) 32 страницы, 8 рисунков, 4 источников, 2 приложения.

МИКРОПРОЦЕССОРЫ, РЕГИСТРЫ, ASSEMBLER, КОМАНДЫ, СТЕК, ОПЕРАЦИИ СДВИГА, ПРОЦЕДУРЫ, ПРЕРЫВАНИЯ, ЦИКЛЫ.

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

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

Содержани

Введение 7

1 Формулировка задачи 8

2 Алгоритм программы 9

2.1 Разработка алгоритма основной программы 9

2.2 Разработка алгоритма процедуры чтение из файла UK64.dat и запись в файл My.dat до нулевой строки 11

2.3 Разработка алгоритма выбор определённых байтов и битов и записи результата в файл Result.dat 12

2.4 Построение графика 14

3 Разработка программы 15

3.1 Описание используемых регистров 15

3.1.1 Регистры общего назначения 15

3.1.2 Регистры EAX и AX 15

3.1.3 Регистры EBX и BX 15

3.1.4 Регистры ECX и CX 15

3.1.5 Регистры EDX и DX. 15

3.1.6 Регистры EBP и BP. 15

3.1.7 Индексные регистры 16

3.1.8 Сегментные регистры 16

3.2 Используемые команды 17

3.2.1 Команды пересылки и загрузки 17

3.2.2 Арифметические команды 17

3.3 Используемые функции DOS 17

3.3.1 Открытие файла 18

3.3.2 Создание файла 18

3.3.3 Чтение данных из файла 19

3.3.4 Закрытие файла 19

3.3.5 Запись в файл 20

3.3.6 Установка указателя файла 20

3.4 Синтаксис процедуры 21

3.5 Описание программы 21

3.5.1 Begin- Начало 21

3.5.2 OpenUK – Открытие файла UK64 21

3.5.3 CreationMy – Создание файла My.dat 21

3.5.5 CloseCadr – Закрытие uk64.dat, создание result.dat. выполнение функции установки указателя файла 22

3.5.6 Cursor – Установка указателя на начало файла My.dat 22

3.5.7 NextStr – выбор определённых байтов и битов и записи результата в файл Result.dat 23

4 Результаты выполнения программы 23

4.1 График построен на языке C# в среде программирования Visual Studio 2010. Нумерация осей в десятичной форме 23

4.2 My.dat 24

4.3 Числа отображены в 16-тиричной форме 24

4.4 Карта памяти 25

Заключение 25

Список используемых источников 26

Приложение А – Код основной программы 27

Приложение B – Код программы построения графика 33

Введение 6

1 Формулировка задачи 7

2 Алгоритм программы 8

2.1 Разработка алгоритма основной программы 8

2.2 Разработка алгоритма процедуры чтение из файла UK64.dat и запись в файл My.dat до нулевой строки 10

2.3 Разработка алгоритма выбор определённых байтов и битов и записи результата в файл Result.dat 11

2.4 Построение графика 13

3 Разработка программы 14

3.1 Описание используемых регистров 14

3.1.1 Регистры общего назначения 14

3.1.2 Регистры EAX и AX 14

3.1.3 Регистры EBX и BX 14

3.1.4 Регистры ECX и CX 14

3.1.5 Регистры EDX и DX. 14

3.1.6 Регистры EBP и BP. 14

3.1.7 Индексные регистры 15

3.1.8 Сегментные регистры 15

3.2 Используемые команды 16

3.2.1 Команды пересылки и загрузки 16

3.2.2 Арифметические команды 16

3.3 Используемые функции DOS 16

3.3.1 Открытие файла 17

3.3.2 Создание файла 17

3.3.3 Чтение данных из файла 18

3.3.4 Закрытие файла 18

3.3.5 Запись в файл 19

3.3.6 Установка указателя файла 19

3.4 Синтаксис процедуры 20

3.5 Описание программы 20

3.5.1 Begin- Начало 20

3.5.2 OpenUK – Открытие файла UK64 20

3.5.3 CreationMy – Создание файла My.dat 21

3.5.4 NewStr – Чтение из файла UK64.dat и запись в файл My.dat до 21

3.5.5 CloseCadr – Закрытие uk64.dat, создание result.dat. выполнение функции установки указателя файла 21

3.5.6 Cursor – Установка указателя на начало файла My.dat 22

3.5.7 NextStr – выбор определённых байтов и битов и записи результата в файл Result.dat 22

4 Результаты выполнения программы 23

4.1 График построен на языке C# в среде программирования Visual Studio 2010. Нумерация осей в десятичной форме 23

4.2 My.dat 23

4.3 Числа отображены в 16-тиричной форме 24

4.4 Карта памяти 24

Заключение 25

Список используемых источников 26

Приложение А – Код основной программы 27

Приложение B – Код программы построения графика 31

Введение

Целью данного курсового проекта является закрепление основ и углубление полученных знаний в области программирования микропроцессоров, приобретение дополнительных практических навыков в создании программного продукта, включая операционную систему, интегрированную среду C#.

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

Тематика заданий курсового проекта позволит закрепить полученные знания в области языка программирования Assembler, одновременно закрепить полученные ранее знания в области языка C# и освоить специфику встроенного Ассемблера.

В данной курсовой работе будет разработана программа по преобразованию информации, заданной в виде дампа памяти в канальный файл с использованием системы команд МП i486.

1 Формулировка задачи

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

МП i486.

В качестве исходных данных использовать данные дампа памяти, сведенные в файл Uk64.dat, в котором находятся дампы памяти в соответствии с вариантом задания. Каждый вариант отделяется от предыдущего строкой, состоящей из шестнадцати нулевых байт. Для выборки, например, третьего варианта, необходимо отсчитать две нулевых строки (по шестнадцать байт каждая), и до следующей нулевой строки будет соответствующий дамп памяти. Этот дамп, при выполнении курсового проекта, записывают в файл My.dat.

При выполнении курсовой работы использовать операционную систему Windows, инструментальные программы ассемблер (TASM, MASM). Для графических построений можно использовать Turbo Pascal.

Согласно варианту 1, номера байтов - 16 и 21, номера битов, которые необходимо извлечь, - 2 и 5, соответственно.

2 Алгоритм программы

2.1 Разработка алгоритма основной программы

Программа состоит из 6 процедур. Первая процедура – открытие файла UK64.dat. Вторая процедура - Создание файла My.dat. Третья процедура – чтение из файла UK64.dat и запись в файл My.dat до нулевой строки. Четвертая процедура – закрытие файла UK64.dat и создание файла Resual.dat. Пятая процедура – установка указателя на начало файла My.dat. Шестая процедура – выбор определённых байтов и битов и записи результата в файл Result.dat, после чего закрываются файлы My.dat , Result.dat. На этом программа завершает свою работу.

Рисунок 1 – Блок схема алгоритма основной программы

2.2 Разработка алгоритма процедуры чтение из файла uk64.Dat и запись в файл My.Dat до нулевой строки

После входа в процедуру чтение из файла UK64.dat и запись в файл My.dat до нулевой строки происходит чтение данных из файла Uk64.dat. Затем в регистр DI заносим строку, заполненную значениями, считанными с файла (первая строка из 16-ти байт), в AX заносим ноль, сравниваем их побайтово. Если они не совпадают, то происходит сохранение строки в файл My.dat, и повторение процедуры. После функции 3DH в AX находится количество считанных байт. Если считается не 16 байт (AX не равен 16) или найдется нулевая строка , то происходит выход из процедуры.

Рисунок 2 – Блок схема алгоритма процедуры чтение из файла UK64.dat и запись в файл My.dat до нулевой строки