FCMOV - FCMOV

FCMOV a fbo'shashish nuqtasi vqo'shimcha move opkod ning Intel x86 birinchi bo'lib kiritilgan me'morchilik Pentium Pro protsessorlar. Uning tarkibiga qarab, suzuvchi nuqta stek registrlaridan birining tarkibini ko'chiradi EFLAGLAR tamsayı bayrog'i registri, ST (0) (stackning yuqori qismi) registriga. Ko'rsatmani harakatni amalga oshirish uchun belgilanishi kerak bo'lgan shartli kodlar bilan tanlangan ko'rsatmaning 8 ta varianti mavjud.

Ga o'xshash CMOV ko'rsatma, FCMOV ba'zi shartli operatsiyalarni odatdagidek bajarishga imkon beradi dallanma tepada.[1] Biroq, u yuqori darajaga ega kechikish shartli filial ko'rsatmalariga qaraganda.[2] Shuning uchun, bu sodda, ammo oldindan aytib bo'lmaydigan taqqoslash yoki shartli operatsiyalar uchun juda foydalidir, bu erda u ishlash samaradorligini sezilarli darajada oshirishi mumkin.

Ko'rsatma odatda bilan ishlatiladi FCOMI ko'rsatma yoki FCOM -FSTSW -SAHF suzuvchi nuqta taqqoslash natijasi asosida tegishli shart kodlarini o'rnatish uchun idioma.

Variantlar

Ushbu jadvalda FCMOV ko'rsatmalarining variantlari keltirilgan.[1] Birinchi operand har doim ST (0) registridir (teng ravishda, suzuvchi nuqta stekining yuqori qismi). Opcode ustuni ikki baytli ketma-ketlikni bildiradi, bu erda ikkinchi bayt ikkinchi operand uchun foydalaniladigan suzuvchi nuqta stek registrining sonini ko'rsatadigan asosiy qiymatdir. Tegishli opcode qiymatini bajarish uchun kerakli raqamni qo'shing.

OpcodeMnemonikMa'nosiVaziyat
DA C0 + iFCMOVBAgar quyida bo'lsa, harakatlantiringBayroqni ko'taring o'rnatilgan
DA C8 + iFCMOVETeng bo'lsa harakatlaningNolinchi bayroq o'rnatilgan
DA D0 + iFCMOVBEAgar past yoki teng bo'lsa, harakatlantiringBayroq yoki nol bayroq o'rnatilgan
DA D8 + iFCMOVUAgar tartibsiz bo'lsa, harakatlantiringParitet bayrog'i o'rnatilgan
JB C0 + iFCMOVNBAgar quyida bo'lmasa ko'chiringYuk ko'tarish bayrog'i tozalandi
JB C8 + iFCMOVNETeng bo'lmasa harakatlaningNolinchi bayroq o'chirildi
JB D0 + iFCMOVNBEAgar past yoki teng bo'lmasa harakatlaningKo'chirish bayrog'i va nol bayrog'i tozalandi
JB D8 + iFCMOVNUAgar tartibsiz bo'lmasa harakat qilingParitet bayrog‘i tozalandi

Adabiyotlar

  1. ^ a b Intel Architecture Software Developer Manual, 2-jild: ko'rsatmalar to'plami uchun ma'lumotnoma. Yuklab olish uchun mavjud [1]
  2. ^ Tuman, A: Assotsiatsiya tilida subroutinlarni optimallashtirish. X86 platformalari uchun optimallashtirish bo'yicha qo'llanma. Yuklab olish uchun mavjud [2]

Tashqi havolalar