A következő feladat a szignum függvény kiszámítása.
Az Sgn(x) függvény három értéket vehet fel
- -1: ha x < 0,
- 0: ha x = 0,
- 1, ha x > 0.
CMP EAX, 0 ; vizsgáljuk az EAX-et
JL negativ ; Ha 0-nál kisebb, akkor megyünk a megfelelő cimkére
JG pozitiv ; Ha 0-nál nagyobb, akkor is
nulla:
MOV MOV EAX, 0 ; különben ha EAX==0, akkor nem volt ugrás és itt folytatódik a program
JMP vege ; a művelet után gondoskodnunk kell a többi ág átugrásáról is.
negativ:
MOV EAX, -1 ; Ha EAX negatív volt
JMP vege ; A művelet után még kell egy ugrás, hogy a pozitív ág ne fusson le
pozitiv:
MOV EAX, 1 ; Ha EAX pozitív volt (utána már, végeztünk nem kell több ugrás)
vege: