![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#2 | |||
C++, Java
Старожил
Регистрация: 10.04.2010
Сообщений: 2,665
|
![]()
Хм, мучают подозрения что это команды математического сопроцессора.
К счастью, под рукой есть "Ассемблер и дизассемблирование", вот нашёл там: Цитата:
Цитата:
Цитата:
![]() |
|||
![]() |
![]() |
![]() |
#3 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
VintProg
а еще есть fcom -- сравнение вещественных чисел ”COMPARE Floating point values” и вариации с выталкиванием из стека FPU (fcomp, fcompp) ficom (ficomp) -- сравнивается содержимое регистра ST(0) и 16- или 32-битной переменной, считая что в SRC содержится целое число. В остальном команды FICOM/FICOMP эквивалентны командам FCOM/FCOMP/FCOMPP fucom (fucomp, fucompp) -- сравнение вещественных чисел без учета порядка ”Unordered COMPARE Floating point values” При сравнении командами fcom/ficom/fucom используются флаги состояния C3, C2 и C0 в FPU и команды FSTSW, SAHF, POPF Команды FCOMI, FCOMIP, FUCOMI, FCOMIP появились в процессорах P6 и позволяют напрямую заносить результаты сравнения в регистр EFLAGS, не используя команды FSTSW AX/SAHF |
![]() |
![]() |
![]() |
#4 |
not
Участник клуба
Регистрация: 27.06.2009
Сообщений: 1,399
|
![]()
Вот отрывок кода:
Код:
|
![]() |
![]() |
![]() |
#5 |
Участник клуба
Регистрация: 11.01.2010
Сообщений: 1,139
|
![]()
VintProg
Либо fcompp это "мусорный код" либо данные, которые распознались как код. Так как fcompp для сравнения в стек FPU ничего не передавалось, а результат сравнения должен был быть передан из FPU командой FSTSW reg а затем должен быть push reg/popf |
![]() |
![]() |
![]() |
#6 |
not
Участник клуба
Регистрация: 27.06.2009
Сообщений: 1,399
|
![]()
Вот весь код:
Код:
|
![]() |
![]() |
![]() |
#7 |
not
Участник клуба
Регистрация: 27.06.2009
Сообщений: 1,399
|
![]()
Я его в C++ перевести пытаюсь но думаю что-то не то делаю:
Код:
|
![]() |
![]() |
![]() |
#8 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]()
((radarBlips.field_24<< 16) | index)
и -1 в случае ошибки (index>75) |
![]() |
![]() |
![]() |
#9 |
not
Участник клуба
Регистрация: 27.06.2009
Сообщений: 1,399
|
![]()
Теперь этот код значит правильный?
Код:
|
![]() |
![]() |
![]() |
#10 |
C/C++, Asm
Участник клуба
Регистрация: 02.03.2010
Сообщений: 1,323
|
![]() Код:
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Команды | KostyaS | Свободное общение | 2 | 03.04.2011 16:58 |
Команды | cargo29 | Работа с сетью в Delphi | 2 | 16.12.2010 13:14 |
Ловля команды | volotsky | Помощь студентам | 2 | 05.12.2008 19:52 |
2 команды | Aivar | Помощь студентам | 2 | 01.10.2008 19:23 |
Подскажите что обозначают команды | Luska | Помощь студентам | 4 | 22.05.2007 21:04 |