Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Часть 1. В17 Практикум по дисциплине «Информатика и программирование» для студентов (часть 1)





Волков А.Г., Демидов Л.Н.

Практикум по дисциплине «Информатика и программирование» для студентов, обучающихся по направлению 230700.62 «Прикладная информатика»

Москва 2011


УДК 681.306

ББК 32.073

В17

 

 

Волков А.Г., Демидов Л.Н.

 

В17 Практикум по дисциплине «Информатика и программирование» для студентов (часть 1), обучающихся по направлению 230700.62 «Прикладная информатика»

 

 

В практикуме изложена методика проведения практических занятий по программированию на языке ассемблера. Все программы рассчитаны на работу с транслятором и редактором связей макроассемблера фирмы Microsoft(R) (Macro Assembler Professional Development System) версии 6.1 и выше. Решение практических задач сопровождается теоретическими сведениями по изучаемой теме и примерами программ. Для каждого занятия приведены задания, требования к оформлению отчета и перечень контрольных вопросов. Данный практикум обеспечивает практические занятия по курсу «Информатика и программирование» в первом семестре. Рекомендовано к изданию решением учебно-методического совета Финансового университета при правительстве РФ (протокол № Х от «___» _____________ 2011 г.)

 

 

УДК 681.306

ББК 32.073

В17

 

© Финансовый университет при правительстве РФ

© Волков Андрей Геннадьевич

© Демидов Лев Николаевич


Оглавление

Введение. 6

Практическое занятие № 1. Трансляция, компоновка и отладка программ. 8

1. ЦЕЛЬ РАБОТЫ.. 8

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 8

2.1. Архитектура компьютера. 8

2.2. Процедуры формирования программы.. 12

2.3. Структура программы.. 18

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 32

4. СОДЕРЖАНИЕ ОТЧЕТА.. 33

5. Контрольные вопросы.. 33

Практическое занятие № 2. Режимы адресации. 33

1. ЦЕЛЬ РАБОТЫ.. 33

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 34

2.1. Команды ассемблера. 34

2.2. Режимы адресации. 36

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 41

4. СОДЕРЖАНИЕ ОТЧЕТА.. 42

5. ВАРИАНТЫ ЗАДАНИЙ.. 43

6. КОНТРОЛЬНЫЕ ВОПРОСЫ.. 44

Практическое занятие № 3. Программирование ветвлений и циклов. 44

1 ЦЕЛЬ РАБОТЫ.. 44

2 ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 45

2.1. Команды условного перехода. 45

2.2. Команда безусловного перехода. 47

2.3. Организация циклов. 52

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 54

4. СОДЕРЖАНИЕ ОТЧЕТА.. 55

5. ВАРИАНТЫ ЗАДАНИЙ.. 55

6. Контрольные вопросы.. 57

Практическое занятие № 4. Арифметические операции целочисленной обработки информации. 57

1. ЦЕЛЬ РАБОТЫ.. 57

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 57

2.1. Десятичные числа. 57

2.2. Сложение и вычитание целых чисел. 58

2.3. Умножение и деление целых чисел. 63

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 67

4. СОДЕРЖАНИЕ ОТЧЕТА.. 67

5. ВАРИАНТЫ ЗАДАНИЙ. 68

6. Контрольные вопросы.. 70

Практическое занятие № 5. Программирование операций ввода-вывода в реальном режиме работы процессора. 70

1.ЦЕЛЬ РАБОТЫ.. 70

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 71

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 77

4. СОДЕРЖАНИЕ ОТЧЕТА.. 77

5. ВАРИАНТЫ ЗАДАНИЙ.. 77

6. Контрольные вопросы.. 80

Практическое занятие № 6. Создание пользовательских функций. 81

1. ЦЕЛЬ РАБОТЫ.. 81

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 81

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 92

4. ВАРИАНТЫ ЗАДАНИЙ. 93

5. СОДЕРЖАНИЕ ОТЧЕТА.. 93

6. Контрольные вопросы.. 93

Практическое занятие № 7. Консольный ввод-вывод. 94

1. ЦЕЛЬ РАБОТЫ.. 94

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 94

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 102

4. ВАРИАНТЫ ЗАДАНИЙ. 103

5. СОДЕРЖАНИЕ ОТЧЕТА.. 103

6. Контрольные вопросы.. 103

Практическое занятие № 8. Работа с файлами. 104

1. ЦЕЛЬ РАБОТЫ.. 104

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 104

2.1 Создание файла и запись в него. 104

2.2 Чтение из файла. 110

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 119

4. ВАРИАНТЫ ЗАДАНИЙ. 120

5. СОДЕРЖАНИЕ ОТЧЕТА.. 120

6. Контрольные вопросы.. 120

Практическое занятие №9. Использование высокоуровневых директив и макросов 121

1. ЦЕЛЬ РАБОТЫ.. 121

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 121

2.1. Условные директивы.. 121

2.2. Директивы организации цикла. 130

2.3. Макросы.. 131

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 136

4. ВАРИАНТЫ ЗАДАНИЙ. 136

6. Контрольные вопросы.. 136

Практическое занятие №10. Создание динамических библиотек. 137

1. ЦЕЛЬ РАБОТЫ.. 137

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 137

2.1 Создание динамических библиотек. 137

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 157

4. ВАРИАНТЫ ЗАДАНИЙ. 157

5. СОДЕРЖАНИЕ ОТЧЕТА.. 157

6. Контрольные вопросы.. 158

Практическое занятие №11. Создание графических приложений для Windows. 158

1. ЦЕЛЬ РАБОТЫ.. 158

2. ОСНОВНЫЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ.. 158

2.1 Создание графических приложений для Windows. 158

2.2 Процедура WinMain. 159

2.3 Процедура WinProc. 160

2.4 Процедура ErrorHandler 161

2.5 Функция MessageBox. 162

3. ПОРЯДОК ВЫПОЛНЕНИЯ РАБОТЫ.. 167

4. ВАРИАНТЫ ЗАДАНИЙ. 167

5. СОДЕРЖАНИЕ ОТЧЕТА.. 167

6. Контрольные вопросы.. 168

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

Приложения. 170

Приложение 1. 170

Приложение 2. 186

Приложение 3. 189

Приложение 4. 198

Приложение 5. 209

Приложение 6. 213

6.1. Начало работы с отладчиком. 213

6.2. Точки останова. 217

6.3 Другие возможности. 221

Приложение 7. 225

Приложение 8. 227

 


Введение

 

Язык ассемблера представляет собой символическую запись команд процессора и, следовательно, определяется его архитектурой. Постоянное совершенствование современных процессоров определяет изменения низкоуровневого языка. Кроме того, развитие операционных систем зарагивает ту часть языка, которая обеспечивает его взаимодействие с внешними устройствами. Поэтому в практикуме рассмотрены вопросы, связанные с изучением особенностей архитектуры и системы команд процессоров Pentium, а также задачи взаимодействия с современными операционными системами (ОС) через вызов процедур, функций и использования структур и констант интерфейса прикладного программирования API (англ. application programming interface) Windows.

Знание ассемблера позволяет понять внутреннее устройство программ и ОС, реализовать взаимодействие с нестандартными внешними устройствами, оптимизировать программу, написанную на языке высокого уровня, по быстродействию и занимаемому объему оперативной памяти.

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

изложить основы архитектуры Intel-совместимых процессоров;

показать тесную связь архитектуры процессора с его машинным языком;

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

научить использовать инструментальные средства разработки ассемблерных программ;

научить применять в программах высокоуровневые средства интерфейса прикладного программирования Windows;

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

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

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

Данный практикум обеспечивает первую часть курса «Информатика и программирование» и предназначен для студентов, обучающихся по направлению 230700.62 «Прикладная информатика», но он будет полезен всем интресующимся вопросами программирования на низкоуровневом языке.








Дата добавления: 2014-11-10; просмотров: 1079. Нарушение авторских прав; Мы поможем в написании вашей работы!




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


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


ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...


Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

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

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

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

Определение трудоемкости работ и затрат машинного времени На основании ведомости объемов работ по объекту и норм времени ГЭСН составляется ведомость подсчёта трудоёмкости, затрат машинного времени, потребности в конструкциях, изделиях и материалах (табл...

Гидравлический расчёт трубопроводов Пример 3.4. Вентиляционная труба d=0,1м (100 мм) имеет длину l=100 м. Определить давление, которое должен развивать вентилятор, если расход воздуха, подаваемый по трубе, . Давление на выходе . Местных сопротивлений по пути не имеется. Температура...

Огоньки» в основной период В основной период смены могут проводиться три вида «огоньков»: «огонек-анализ», тематический «огонек» и «конфликтный» огонек...

Studopedia.info - Студопедия - 2014-2025 год . (0.013 сек.) русская версия | украинская версия