Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
Так говорил Заратустра...
62 / 47 / 6
Регистрация: 19.01.2012
Сообщений: 162
1

Вывод результата после выполнения функций для сопроцессора

27.10.2012, 23:05. Показов 2155. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задание:
Посчитать 6 значений функции Yn = 25х3 – 2,1 (x изменяется с шагом 0.2)

Подскажите, каким образом вывести результаты на экран?

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
; Обчислити 6 значень функції Yn = 25х^3 – 2,1 (x змінюється  з кроком 0.2)
 
.686                                ; директива визначення типу мікропроцесора
.model flat,stdcall                                 ; завдання лінійної моделі пам’яті
         ; та угоди ОС Windows
option casemap:none                     ; відмінність малих та великих літер
include    \masm32\include\windows.inc
include    \masm32\include\kernel32.inc
include    \masm32\include\user32.inc
include    \masm32\include\fpu.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib
includelib \masm32\lib\fpu.lib
                                                 
.data                     ; директива визначення даних
    ttl db "Обчислити 6 значень функції Yn = 25х^3 – 2,1 (x змінюється  з кроком 0.2)",0
    _y1 dt 0.0
    _y2 dt 0.0
    _y3 dt 0.0
    _y4 dt 0.0
    _y5 dt 0.0
    _y6 dt 0.0
    _x REAL10 2.0
    _op1 REAL10 25.0
    _op2 REAL10 2.1
    _step REAL10 0.2
 
    Dest dt ?
    
.code
_start:
    finit
    mov ecx, 6
  m1: 
    invoke FpuMul, ADDR _x, ADDR _x, ADDR Dest, SRC1_REAL or SRC2_REAL or DEST_MEM
    invoke FpuMul, ADDR Dest, ADDR _x, ADDR Dest, SRC1_REAL or SRC2_REAL or DEST_MEM
    invoke FpuMul, ADDR Dest, ADDR _op1, ADDR Dest, SRC1_REAL or SRC2_REAL or DEST_MEM
    invoke FpuSub, ADDR Dest, ADDR _op2, ADDR Dest, SRC1_REAL or SRC2_REAL or DEST_MEM 
    invoke FpuAdd, ADDR _step, ADDR _x, ADDR _x, SRC1_REAL or SRC2_REAL or DEST_MEM
    dec ecx
    jnz m1
    
 
    invoke MessageBox ...
    invoke ExitProcess,0
end _start
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.10.2012, 23:05
Ответы с готовыми решениями:

Как подключить модуль математического сопроцессора FPU emu8086 для выполнения арифметических операций
Как подключить модуль математического сопроцессора FPU для выполнения арифметических операции над...

Вывод результата выполнения в файл
Dim fso Set WshNetwork = CreateObject("WScript.Network") namePC = WshNetwork.ComputerName...

Вывод результата выполнения процедуры
Здравствуйте. Извините за глупый вопрос, никак не могу понять как мне выдать на экран результат...

Вывод результата выполнения скрипта в Excel
И снова добрый день с: Есть некий скрипт, проверяющий железки на всех компьютерах в лесу AD и...

11
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
28.10.2012, 09:07 2
А это была первая серия? https://www.cyberforum.ru/asse... 66469.html
0
Так говорил Заратустра...
62 / 47 / 6
Регистрация: 19.01.2012
Сообщений: 162
28.10.2012, 10:59  [ТС] 3
Цитата Сообщение от Charles Kludge Посмотреть сообщение
А это была первая серия? https://www.cyberforum.ru/asse... 66469.html
То была версия без использования встроенных masm32 функций. Там было легче в том плане, что видно было в отладчике, что значения вычисляются в ST(0), ST(1) и т.д. И потом всё вместе выводилось на экран
А с использование встроенных функций я пока немного не разобрался, что и куда отправлять...
0
639 / 482 / 12
Регистрация: 10.01.2011
Сообщений: 1,045
28.10.2012, 11:41 4
Цитата Сообщение от alex120 Посмотреть сообщение
видно было в отладчике
А здесь в функцию войти не судьба? F7 в Ollydbg.
0
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
28.10.2012, 12:05 5
Дык, результат после FpuSub будет по адресу Dest. Дальше вызывайте FpuFLtoA/wsprintf или printf из msvcrt.dll. И да, wsprintf/printf вызываются через cinvoke .
0
608 / 406 / 8
Регистрация: 26.04.2012
Сообщений: 2,065
28.10.2012, 12:50 6
Цитата Сообщение от Charles Kludge Посмотреть сообщение
wsprintf/printf вызываются через cinvoke .
зачем? я через invoke норм вызывал... или это для вещественных чисел??
0
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
28.10.2012, 13:56 7
Цитата Сообщение от Fatal Error
зачем?
Дело в том, что ф-ция с переменным числом параметров может быть объявлена только как __cdecl, то есть стек после вызова очищает вызывающий, т.к. вызываемая ф-ция не знает, сколько ей откусить от стека по retf nn.
Не спорю, вызвать по invoke разок-другой с парой аргументов, конечно, прокатит... Пока стек не кончится.
1
639 / 482 / 12
Регистрация: 10.01.2011
Сообщений: 1,045
28.10.2012, 14:40 8
Charles Kludge, в user32.inc прототип wsprintf описан как C:VARARG, поэтому при использовании invoke ассемблер сам выравнивает стек.
0
Клюг
7674 / 3189 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
28.10.2012, 14:52 9
Vadimych, в FASM'e wsprintf не описан никак, посему...
Изображения
 
0
608 / 406 / 8
Регистрация: 26.04.2012
Сообщений: 2,065
28.10.2012, 15:06 10
Цитата Сообщение от Charles Kludge Посмотреть сообщение
в FASM'e wsprintf не описан никак, посему...
ну я через масм вызывал, наверное поэтом можно и через инвок
0
639 / 482 / 12
Регистрация: 10.01.2011
Сообщений: 1,045
28.10.2012, 16:17 11
Charles Kludge, я об masm32 речь вёл. Fasm мне не интересен.
0
0 / 0 / 0
Регистрация: 10.10.2012
Сообщений: 3
28.10.2012, 17:21 12
https://www.cyberforum.ru/asse... 68337.html
Помогите Пожалуйста, скоро Академ разницу досдавать, а я так и не разобрался в ассемблере!!!
0
28.10.2012, 17:21
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2012, 17:21
Помогаю со студенческими работами здесь

Вывод результата выполнения скрипта в .csv
Доброго дня, нужна помощь с: Cкрипт опрашивает около 200 компьютеров в лесу AD. Не все из них...

Вывод результата выполнения команды в два файла
Всем привет, подскажите пожалуйста как результат направить в 2 файла В первый запись шла >...

Вывод результата выполнения скрипта в модальном окне
суть в следующем: на сайте в шапке задуман адрес и ссылка на схему проезда. в яндексовском...

Вывод результата выполнения консольной утилиты в QPlainTextEdit
Qt5 + Win Пытаюсь вывести результат выполнения запуска консольки (например ipconfig) не могу...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru