|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.04.2009, 04:45 | #1 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Использование libc в FASM
Допустим импортировал я функцию sprintf из MSVCRT.DLL.
Задано число Arg0 dt 34566.3352 Arg1 dq 3455.335 Вопрос состоит в том как передать его в аргументы? invoke sprintf,szCh,"Hello world %f",Arg0 invoke sprintf,szCh,"Hello world %f",Arg1 Обе строки при отображении MSGBox-ом выглядят так: Hello world 0.000000 Как передать туда аргумент? Регистр FPU, функции в аргументы тоже никак не передашь. Хочется иметь под рукой функцию_из_коробочки для отображения FLOAT-чисел.
"Тяжело в учении, легко в бою" - А.В. Суворов
|
27.04.2009, 11:09 | #2 |
я получил эту роль
Старожил
Регистрация: 25.05.2007
Сообщений: 3,694
|
Для cdecl-функций вроде cinvoke есть
-- Странно, как оно вообще работает? invoke sprintf,szCh,"Hello world %f",Arg0 строка не заканчивается нулём, адрес левый Код:
пыщь
Последний раз редактировалось JTG; 27.04.2009 в 12:48. |
12.06.2009, 05:20 | #3 |
somewhere else
Участник клуба
Регистрация: 17.07.2008
Сообщений: 1,409
|
Дополню старую тему:
_atof из MSVCRT возвращает результат в st0. пример: .data string db "-124555.242" dNum dq 0.0 .code cinvoke atof, string fstp qword[dNum] ; сохраняем переменную и чистим стек FPU.
"Тяжело в учении, легко в бою" - А.В. Суворов
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Учебник по FASM | Roof | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 33 | 09.12.2013 23:16 |
LEA [FASM] | m32 | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 10 | 03.10.2010 13:57 |
tasm>>fasm | better | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 11 | 09.02.2009 19:34 |
Не компилируется исходник FASM | nikleb | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 09.03.2008 17:34 |
не компилируется исходник на FASM | pro-john | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 15.01.2008 18:40 |