Основы Ассемблирования

Автор работы: Пользователь скрыл имя, 09 Декабря 2013 в 19:09, курсовая работа

Описание работы

Ассемблер - низкоуровневый язык программирования. Для каждого процессора существует свой ассемблер. Программируя на ассемблере вы непосредственно работаете с аппаратурой компьютера. Исходный текст на языке ассемблера состоит из команд (мнемоник), которые после компиляции преобразуются в коды команд процессора.Разработать программу на ассемблере тяжело. Взамен потраченному времени вы получаете эффективную программу. Программы на ассемблере пишут, когда важен каждый такт процессора. На ассемблере вы даёте конкретные команды процессору. Этим и достигается высокая скорость выполнения вашей программы.Чтобы грамотно использовать ассемблер необходимо знать программную модель микропроцессорной системы.

Содержание работы

Введение 4
1.Анализ задания 8
2.Запись решения задачи вычисления функции на языке высокого уровня С++ 9
3.Блок-схема записи решения задачи вычисления функции на языке высокого уровня С++ 10
4.Запись решения задачи вычисления функции на языке высокого уровня С++, с использованием функций на Ассемблере 11
5.Запись решения задачи вычисления функции на языке Ассемблер 12
Расчет результатов программы на языке с++ 13
Расчет результатов программы на с++ c ассемблерными вставками 16
Вывод 17
Использованная литература 18

Файлы: 7 файлов

BS1.vsd

— 277.00 Кб (Скачать файл)

BS2.vsd

— 322.50 Кб (Скачать файл)

BS3.vsd

— 164.00 Кб (Скачать файл)

Клеткин Д.В.docx

— 866.42 Кб (Скачать файл)

mov    esi,result

mol    spvordptr[esi],eax

ret

err:

move    ax,0

ret

Расчет результатов программы на языке с++

 

Вводимые данные

Вывод программы

Расчетный результат

A= 3;D=4;C=10

7

7.625

A= 1;D=2 ;C=3

ошибка

Делить на 0 невозможно

A= 7;D=1 ;C=7

1

1.041


 

Расчет результатов программы на с++cассемблерными вставками

 

Вводимые данные

Вывод программы

Расчетный результат

A= 3;D=4;C=10

7

7.625

A= 1;D=2 ;C=3

ошибка

Делить на 0 невозможно

A= 7;D=1 ;C=7

1

1.041


 

 

 

 

 

 

 

 

 

 

 

 

Вывод

 

В ходе выполнения курсового  проекта были изучены базовые  составляющие архитектуры x86 и MacroAssembler. Выполнено ознакомление с основными командами ассемблера с использованием Intel-синтаксиса. Реализована программа на языке высоком уровнеязыка программированияС++ и машинного языка Ассемблер. Выполнен анализ реализованных процедур. Разработана отдельная процедура вычисления функции на языке Асссемблер, которая была подключена к проекту на языке высокого уровня (С++). Ассемблерные вставки отлаживаются точно так же, как и весь остальной высокоуровневый код. Программы, целиком написанные на ассемблере, транслируются в машинный код при помощи ассемблера.

 

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

Использованная  литература


 

  1. Калашников О. А. Ассемблер? Это просто! Учимся программировать. — СПб.: БХВ-Петербург, 2007.

2. Юров В., Хорошенко С. Assembler: учебный курс. — СПб.: Питер, 1999. —

3. Пирогов В.Ю. Ассемблер для Windows. – 2-е изд., перераб. и доп. – СПб.: БХВ-Петербург, 2003.

4. Голубь Н.Г. Искусство программирования на Ассемблере. Лекции и упражнения. – 2-е изд., испр. и доп. – СПб.: ООО «ДиаСофтЮП», 2002.

5. Герберт Шилдт. С++: базовый курс. – М.: «Вильямс», 2008.

6. Assembler. Учебник для вузов. 2-е изд. / В.И. Юров – СПб.: Питер, 2003.

7. Пильщиков В.Н. Программирование на языке ассемблера IBM PC. – М.: Диалог-МИФИ, 2003.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Анатация

В данном курсовом проекте представлена работа, которая проводилась в соответствии с учебной дисциплиной по предмету «Программирование» реализована программа на языке высшего уровня С++ и машинного языка Ассемблер.

Результатом выполнения проекта является данная пояснительная записка, сопровождающаяся тремя чертежами.

Таб. 1, Ил. 3, Библиогр. 4

In this course project is a work that was carried out in accordance with the academic discipline on the subject of "Programming" program was implemented in the language of higher-level C + + and Assembler machine language.

The result of this project is the explanatory note accompanying the three drawings.

Table 1, Il. 3, Bibliogr. 4

 

 

 

 

 

 


 

 

 

 

 

 

 

 

 

 

 

 


Запись решения задачи вычисления функции на языке Ассемблер.txt

— 2.08 Кб (Скачать файл)

Запись решения задачи вычисления функции на языке высокого уровня С++, с использованием функций на Ассемблере.txt

— 1.61 Кб (Скачать файл)

Запись решения задачи вычисления функции на языке высокого уровня С++.txt

— 627 байт (Скачать файл)

Информация о работе Основы Ассемблирования