- •Оглавление
- •Введение
- •1.Системный анализ
- •2.Структурное программирование. Схема алгоритма. Программа на языке Си для int, float
- •3. Программирование
- •3.1 Программа на Ассемблере ум
- •3.2 Подпрограмма ввода и вывода целых чисел на Ассемблере ibm
- •3.3 Программа на языке программирования Ассемблер ibm pc
- •4.Тестирование и отладка
- •5. Инструкция пользователя
- •6. Параметры программы
- •Заключение
- •Список использованной литературы
1.Системный анализ
Целью курсового проекта является закрепление полученных знаний и профессиональных навыков разработки и отладки подпрограмм на языке Ассемблера. Курсовой проект выполняется в соответствии с этапами разработки программного обеспечения: анализ и постановка задачи для решения на ЭВМ, проектирование, кодирование, отладка и тестирование разработанной программы. Проектирование ведется в соответствии с методологией структурного программирования.
Требуется рассчитать выражение (1):
(1)
Необходимо разработать программы для её вычисления на языках Си, Ассемблер УМ и Ассемблер IBM PC. С клавиатуры вводятся 2 переменные и значения массива, после выполняется расчет 2 констант 2c и (a*a+1) данной функции и расчет z. Далее выполняется вывод результата на экран монитора. Программа состоит из 4-х функций: функция ввода переменных, две функция расчета констант, функция вывода результата.
ВЛГУ. 230100.7.1.00 ПЗ
2.Структурное программирование. Схема алгоритма. Программа на языке Си для int, float
Программа на языке программирования Си для int
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
const int N = 4;
void raschet(int a, int c, int d[])
{int g, k, l, z;
int Y = 0;
g = 2 * c;
k = a*a + 1;
cout << "g = " << "2 * " << c << " = " << g << endl;
cout << "k = " << a*a << " + 1" << " = " << k << endl;
for (int i = 1; i <= N; i++)
{l = d[i] / 4;
cout << i << ") " << "l[" << d[i] << "] = " << d[i] << " / 4 = " << l << endl;
z = (g - l) / k;
cout << " z[" << d[i] << "] = " << z << endl;
Y = Y + z;
cout << endl;}
cout << "Y = " << Y << endl;}
int main()
{setlocale(LC_ALL, "Russian");
int a, c, d[N];
cout << "Введите a = ";
cin >> a;
cout << "Введите с = ";
cin >> c;
cout << "Введите элементы массива" << endl;
for (int i = 1; i <= N; i++)
{cout << "d[" << i << "] = ";
cin >> d[i];}
raschet(a, c, d);
_getch();
return 0;}
Программа на языке программирования Си для float
#include "stdafx.h"
#include <iostream>
#include <conio.h>
using namespace std;
const int N = 4;
void raschet(float a, float c, float d[])
{float g, k, l, z;
float Y = 0;
g = 2 * c;
k = a*a + 1;
cout << "g = " << "2 * " << c << " = " << g << endl;
cout << "k = " << a*a << " + 1" << " = " << k << endl;
for (int i = 1; i <= N; i++)
{l = d[i] / 4;
cout << i << ") " << "l[" << d[i] << "] = " << d[i] << " / 4 = " << l << endl;
z = (g - l) / k;
cout << " z[" << d[i] << "] = " << z << endl;
Y = Y + z;
cout << endl;}
cout << "Y = " << Y << endl;}
ВЛГУ. 230100.7.1.00 ПЗ
int main()
{setlocale(LC_ALL, "Russian");
float a, c, d[N];
cout << "Введите a = ";
cin >> a;
cout << "Введите с = ";
cin >> c;
cout << "Введите элементы массива" << endl;
for (int i = 1; i <= N; i++)
{cout << "d[" << i << "] = ";
cin >> d[i];}
raschet(a, c, d);
_getch();
return 0;}
Блок схема
i=0, y=0
Ввод a, c, d[i]
i<5
да
z=(2*c-d[i]/4)/(a*a-1)
y=y+z
нет
Вывод y
ВЛГУ. 230100.7.1.00 ПЗ