- •Содержание
- •Теоретические основы лабораторной работы
- •1.2 Задание
- •1.3 Схема алгоритма
- •1.4 Решение
- •1.5 Ответ
- •Лабораторная работа 2 «Арифметические команды и команды переходов в ассемблере»
- •2.1 Теоретические основы лабораторной работы
- •2.2 Задание
- •2.3 Схема алгоритма
- •2.4 Решение
- •2.5 Ответ
- •Лабораторная работа 3 «Команды работы с массивами и стеком»
- •3.1 Теоретические основы лабораторной работы
- •3.2 Задание
- •3.3 Схема алгоритма
- •3.4 Решение
- •3.5 Ответ
- •Лабораторная работа 4 «Изучение работы математического сопроцессора в среде Assembler»
- •4.1 Теоретические основы лабораторной работы
- •4.2 Задание
- •4.3 Схема алгоритма
- •4.4 Решение
- •4.5 Ответ
- •Лабораторная работа 5 «Команды нахождения тригонометрических функций с помощью математического сопроцессора»
- •5.1 Теоретические основы лабораторной работы
- •5.2 Задание
- •5.3 Схема алгоритма
- •5.4 Решение
- •5.5 Ответ
- •Лабораторная работа 6 «Нахождение суммы ряда с помощью математического сопроцессора»
- •6.1 Теоретические основы лабораторной работы
- •6.2 Задание
- •6.3 Схема алгоритма
- •6.4 Решение
- •6.5 Ответ
- •Список использованных источников
ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «САМАРСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙ УНИВЕРСИТЕТ ИМЕНИ АКАДЕМИКА С.П. КОРОЛЕВА (САМАРСКИЙ УНИВЕРСИТЕТ)»
Факультет Информатики Кафедра Программных систем
ОТЧЕТ по лабораторному практикуму по дисциплине
«Организация ЭВМ и вычислительных систем»
Вариант № 3
Студент Д.С. Галанова
Руководитель Л.С. Зеленко
Самара 2016
Содержание
1.1 Теоретические основы лабораторной работы 2
1.2 Задание 4
1.3 Схема алгоритма 4
1.4 Решение 5
1.5 Ответ 6
2.1 Теоретические основы лабораторной работы 8
2.2 Задание 9
2.3 Схема алгоритма 9
2.4 Решение 10
2.5 Ответ 12
3.1 Теоретические основы лабораторной работы 14
3.2 Задание 15
3.3 Схема алгоритма 15
3.4 Решение 17
3.5 Ответ 18
4.1 Теоретические основы лабораторной работы 19
4.2 Задание 20
4.3 Схема алгоритма 20
4.4 Решение 22
4.5 Ответ 23
5.1 Теоретические основы лабораторной работы 26
5.2 Задание 26
5.3 Схема алгоритма 27
5.4 Решение 27
5.5 Ответ 28
6.1 Теоретические основы лабораторной работы 30
6.2 Задание 31
6.3 Схема алгоритма 31
6.4 Решение 32
6.5 Ответ 34
Теоретические основы лабораторной работы
Команды, использованные в программе, приведены в таблице 1.1.
Таблица 1.1 Описание команд
Команда |
Назначение |
ADD |
Выполняет сложение байтов или слов, содержащих двоичные данные. |
SUB |
Выполняет вычитание байтов или слов, содержащих двоичные данные. |
IMUL |
Выполняет операцию умножения для знаковых данных. |
IDIV |
Выполняет операцию деления для знаковых данных. |
DEC |
Уменьшает значение операнда в памяти или регистре на 1. |
OR |
Операция логического ИЛИ над битами операнда назначения. Если хотя бы один из сравниваемых битов равен 1, то результат равен 1; если сравниваемые биты равны 0, то результат 0. |
CMP |
Сравнивает два операнда. |
JE |
Инструкция условного перехода «перейти, если равно». |
JMP |
Используется в программе для организации безусловного перехода. |
CDQ |
Расширяет двойное слово со знаком до размера учетверенного слова (64 бита) со знаком. Используется для подготовки к операции деления. |
MOV |
Команда пересылки данных (из источника в приемник). |
PUSH |
Перемещает данные в стек. |
POP |
Считывает данные из стека. |
SAR |
Арифметический сдвиг вправо. |
Использованные в программе регистры приведены в таблице 1.2.
Таблица 1.2 Описание регистров
Регистр |
Назначение |
EAX |
Регистр общего назначения. Аккумулятор. |
EBX |
Регистр общего назначения. База. |
ECX |
Регистр общего назначения. Счетчик. |
EDX |
Регистр общего назначения. Регистр данных. |
Использованные библиотеки приведены в таблице 1.3.
Таблица 1.3 Описание библиотек
Библиотека |
Назначение |
"stdafx.h" |
Служит для генерации файла предкомпилированных заголовков. |
<stdio.h> |
Используется для организации стандартного ввода/вывода. |
<iostream> |
Используется для организации потокового ввода/вывода. |
<locale.h> |
Используется для смены кодировки. |
