DevioLabавтоматичне керування капіталом
ПРАЦЮЄ 24/7
КРИПТОВАЛЮТИ · АКЦІЇ · 10 БІРЖ

Портфель, який керується автоматично

DevioLab підбирає стратегії, відстежує ринки та автоматизує купівлю і продаж активів. Кількість доступних криптовалют, акцій і торгових можливостей зростає щодня.

10підключених біржCrypto + Stocksв одному портфелі24/7автоматичний контроль

Використання математичного співпроцесора

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних технологій, автоматики та метрології
Факультет:
ЗІ
Кафедра:
ЕОМ

Інформація про роботу

Рік:
2014
Тип роботи:
Лабораторна робота
Предмет:
СП
Група:
КН-11
Варіант:
11
Коротко про документ

Про що ця робота

Лабораторна робота присвячена використанню математичного співпроцесора для обчислення арифметичних виразів. Наведено код програми на C та асемблері з реалізацією взаємодії модулів.

У роботі розглядаються

  • Мова програмування C
  • Плавальна кома
  • Взаємодія програмних модулів
  • Обчислення виразів

Зміст і розділи

  1. Тема
  2. Мета роботи
  3. Завдання
  4. Код програми
  5. Результат виконання
  6. Висновок
Для кого:Студенти технічних спеціальностей вищих навчальних закладів
Викладачі:Не вказано

Ключові поняття

модульстекплаваюча комафункціяарифметичні виразиCпрограмування

Частина тексту файла (без зображень, графіків і формул):

Лабораторна робота №3 Тема:Використання математичного співпроцесора Мета роботи: ознайомитися з принципом роботи математичного співпроцесора і використати його можливості для обчислення арифметичних виразів із числами з плаваючою комою Завдання: "X=(A2-B1-K)*D1+E4/F K = 311 Код програми: Main.cpp #include <stdio.h> #include <conio.h> extern "C" double calc(float,float,float,float,float); extrn "C" const dword k; void main(void) { double res=0; float a=0; float b=0; float d=0; float e=0; float f=0; printf("X=(A2-B1-K)*D1+E4/F2:\n\n"); printf("Please, enter your numbers:\n"); printf("A = "); scanf_s("%f",&b); printf("B = "); scanf_s("%f",&b); printf("D = "); scanf_s("%f",&d); printf("E = "); scanf_s("%f",&e); printf("F = "); scanf_s("%f",&f); res=calc(a,b,d,e,f); printf("Result in ASM: %f\n", res); printf("Result is C: %f\n",(a-b-k)*d+e/d) ; _getch(); Calc.asm .386 .model flat,c PUBLIC C calc .const PUBLIC k k dw 311.0 .code calc proc push ebp mov ebp,esp finit ;ініціалізація співпроцесора fld dword ptr[ebp+8];записати в вершину стеку сівпроцесора значення шо записано в [ebp+8] fsub dword ptr[ebp+12];від [ebp+8]відняти [ebp+12] fsub k; відняти к fmul dword ptr[ebp+16] ;помножити на [ebp+16] fadd ;додати fld dword ptr[ebp+20] ;записати в вершину стеку сівпроцесора значення шо записано в [ebp+20] fdiv dword ptr[ebp+24] ;поділити на [ebp+24] pop ebp ret calc endp end Результат виконання:  Висновок: Оволодів навиками створення програм, частини яких написані різними мовами програмування. Засвоїв правила взаємодії між програмними модулями різних мов програмування
Допоможи студентському архіву

Ми допомогли тобі — допоможи наступному студенту

Файл ще не обрано

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!