FPU инструкция FINCSTP. Очистка ST(0)
-
Команда FINCSTP добавляет единицу (без переноса) к трехбитному полю TOP слова состояния FPU.
Эффект действия команды FINCSTP заключается во вращении стека. Она не изменяет регистров тэгов и не перемещает данные. Она не эквивалентна операции выталкивания из стека, потому что, она не устанавливает тэг старой вершины стека в значение пустой.
Флаги C0, C2, C3 регистра SW после выполнения команды не определены, флаг C1 устанавливается равным 0.
Похожа на FSTP, также вращает стек регистров FPU (я кстати не знал, увидел при тестах в CE), но только не перемещает значение по адресу.
FSTP [здесь указывается адрес или регистр] FINCSTPЕсли нужно вытолкнуть значение из ST(0), а адрес куда его выталкивать не нужен, то можно сделать так
FINCSTPИли аналогFSTP ST(0)При использовании стоит обратить внимание на флаги, возможно их состояние будет влиять на исполнение кода.

*Вообще не помню почему я пишу "выталкивать значение" через fstp, когда оно появляется снизу в ST(8). Т.е. не выталкивается по сути.
Здравствуйте! Похоже, вам интересна эта беседа, но у вас пока нет учетной записи.
Вы устали просматривать одни и те же посты каждый раз, когда заходите на сайт? После регистрации, вам не придётся искать обсуждения в которых вы принимали участие, настройте уведомления о новых сообщениях так как вам это удобно (по электронной почте или уведомлением). У вас появится возможность сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост может стать ещё лучше 💗
Зарегистрироваться Войти