回覆列表
  • 1 # 使用者2458114238191884

    1、在運算子後面加上字母P:表示該指令執行完後,還進行一次堆疊彈出操作。如:FADD和FADDP等;

    2、在運算子後面加上字母R:表示該操作是反模式,它僅限於減法、除法指令。如:FSUB和FSUBR等;

    正模式——棧頂資料=棧頂資料op指令運算元,或OPN1=OPN1–OPN2

    反模式——棧頂資料=指令運算元op棧頂資料,或OPN1=OPN2–OPN1

    假設:棧頂資料為10,記憶體變數data的值為1,分別執行下列指令將有不同的結果。

    FSUBdata;指令執行後,棧頂資料為9

    FSUBRdata;指令執行後,棧頂資料為-9

    FSUBST,ST(1);指令執行後,ST=ST-ST(1)

    FSUBRST,ST(1);指令執行後,ST=ST(1)-ST

    3、運算子的第2個字母是I:表示記憶體中資料是整數。它對加、減、乘除指令都有效。

    例如:FADD data——浮點數加法;

    FIADD data——整數加法,它表示記憶體單元data是一個整數,把該整數加到棧頂的浮點數上。

    4、運算子的第2個字母是N:表示在指令執行之前檢查非遮蔽數值性錯誤。如:FSAVE和FNSAVE等,前者稱為等待形式(waitversion),後者稱為非等待形式(no-waitversion)。

    在使用.8087偽指令情況下,彙編程式會在等待形式的指令前面加上指令WAIT,而在非等待形式的指令前面加上空操作指令NOP。

  • 中秋節和大豐收的關聯?
  • 不同房間的臥室對於顏色有什麼要求?