Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Индивидуалка / Отчет по индивидуальной работе.docx
Скачиваний:
14
Добавлен:
11.02.2015
Размер:
52.48 Кб
Скачать

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

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

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

«Магнитогорский Государственный Технический Университет

им Г.И. Носова»

Кафедра Вычислительной Техники и Прикладной Математики

Индивидуальная работа №2

по дисциплине: Организация ЭВМ

Вариант 32

Выполнила: студентка группы АВ-09-1

Сичная М.А.

Проверил: проф., д.т.н. Ячиков И.М.

Магнитогорск 2012г

Содержание

Условие задачи 3

Постановка задачи 3

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

Инструкция для программиста 3

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

Список использованной литературы 17

Условие задачи

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

Постановка задачи

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

Чтобы работать с мышью необходимо изучить основные функции прерывания 33h, для работы с клавиатурой – функции прерывания 21h, работа с графическим режимом – функции прерывания 10h.

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

После открытия файла my_calc.exe программа готова к использованию.

Клавиши управления:

  • Enter – начать программу, войти в графический режим;

  • Левая кнопка мыши – выбрать нужный блок;

  • ESC – выход.

Первый блок в программе отвечает за первое число, второй блок – за операцию, третий блок – за второе число. Блок со знаком «=» считает и записывает ответ в пятый блок.

Инструкция для программиста

Переменные:

  • x, y – текущие координаты мышки

  • a, b – операнты

  • op – операнд

  • sum, razn, pr, del, ost – переменные для хранения суммы, разности, произведения, деления и остатка от деления

  • x_n, y_n, x_n1, y_n1 – вспомогательные координаты, используем при рисовании блоков

  • color – цвет рамки блока

  • color_f – цвет фона

Список процедур, используемых в программе:

  • exit – выход из программы;

  • Color_fon – прорисовка фона;

  • Draw1 – рисование первого блока;

  • Draw_op – рисование второго блока;

  • Draw2 – рисование третьего блока;

  • Draw_ravno – рисование четвертого блока;

  • Draw_rez – рисование пятого блока;

  • Mouse_visible – показать курсор мыши;

  • Coord – функция, которая проверяет текущие координаты мыши и в зависимости от них выполняет действия;

  • Work – функция, в которой устанавливается графический режим, вызов всех функция прорисовки объектов, консольный ввод с клавиатуры;

  • Input – вспомогательная функция для того, чтобы правильно считать число;

  • Input_op – вспомогательная функция для того, чтобы правильно считать знак операции;

  • Curs – позиционирование текстового курсора в месте вывода подсказок;

  • Curs_r – позиционирование текстового курсора в месте вывода ответа;

  • Write_10 и wr_cifra – используются для правильного перевода в десятичную систему счисления.

Используется прерывание 33h – работа с мышью

AX = 0001h – показать курсор

AX = 0002h – скрыть курсор

AX = 0003h – определение состояния мыши

Прерывание 10h – работа с графикой

AH = 00h – установка видеорежима

AH = 02h – перемещение курсора, позиционирует курсор, использует тестовые координаты

AH = 0Ch - вывод пикселя, рисует на дисплее точку в указанных графических координатах

Прерывание 21h – прерывание работы с клавиатурой

AH = 09h – ввод символьной строки в установленную позицию курсора

AH = 06h – консольный ввод

AH = 08h – консольный ввод без эха

AX = 4C00h – выход из программы, возврат в операционную систему.

Соседние файлы в папке Индивидуалка