二進(jìn)制浮點數(shù)比較指令ECMP
(1)二進(jìn)制浮點數(shù)比較指令ECMP(FNC110) DECMP(P)指令的使用如圖1所示,將兩個源操作數(shù)進(jìn)行比較,比較結(jié)果反映在目標(biāo)操作數(shù)中。如果操作數(shù)為常數(shù)則自動轉(zhuǎn)換成二進(jìn)制浮點值處理。該指令源操作數(shù)可取K、H和D,目標(biāo)操作數(shù)可用Y、M和S。為32位運算指令,占17個程序步。
圖1 二進(jìn)制浮點數(shù)比較指令的使用
二進(jìn)制浮點數(shù)區(qū)間比較指令EZCP
(2)二進(jìn)制浮點數(shù)區(qū)間比較指令EZCP(FNC111) EZCP(P)指令的功能是將源操作數(shù)的內(nèi)容與用二進(jìn)制浮點值指定的上下二點的范圍比較,對應(yīng)的結(jié)果用ON/OFF反映在目標(biāo)操作數(shù)上,如圖2所示。該指令為32位運算指令,占17個程序步。源操作數(shù)可以是K,H和D;目標(biāo)操作數(shù)為Y、M和S。[S1.]應(yīng)小于[S2.],操作數(shù)為常數(shù)時將被自動轉(zhuǎn)換成二進(jìn)制浮點值處理。
圖2 二進(jìn)制浮點數(shù)區(qū)間比較指令的使用
加法指令EADD
減法指令ESUB
乘法指令EMVL
除法指令EDIV
(3)二進(jìn)制浮點數(shù)的四則運算指令 浮點數(shù)的四則運算指令有加法指令EADD (FNC120)、減法指令ESUB(FNC121)、乘法指令EMVL(FNC122)和除法指令EDIV(FNC123)四條指令。四則運算指令的使用說明如圖3所示,它們都是將兩個源操作數(shù)中的浮點數(shù)進(jìn)行運算后送入目標(biāo)操作數(shù)。當(dāng)除數(shù)為0時出現(xiàn)運算錯誤,不執(zhí)行指令。此類指令只有32位運算,占13個程序步。運算結(jié)果影響標(biāo)志位M8020(零標(biāo)志)、M8021(借位標(biāo)志)、M8022(進(jìn)位標(biāo)志)。源操作數(shù)可取K、H和D,目標(biāo)操作數(shù)為D。如有常數(shù)參與運算則自動轉(zhuǎn)化為浮點數(shù)。
圖3 二進(jìn)制浮點數(shù)四則運算指令的使用
二進(jìn)制的浮點運算還有開平方、三角函數(shù)運算等指令,在此不一一說明。