016 JLE JNG 小於等於

2021-07-22 15:51:55 字數 1865 閱讀 9919

l條件轉移指令

jle

l

條件轉移指令

jng

l標誌暫存器

psw

標誌暫存器psw(程式狀態字暫存器

psw)

標誌暫存器psw是乙個16為的暫存器。它反映了cpu運算的狀態特徵並且存放某些控制標誌。8086使用了16位中的9位,包括6個狀態標誌位和3個控制標誌位。

1514

1312

111098

7654

3210

ofdf

iftf

sfzf

afpfcf零

標誌 cf(進製標誌位):當執行乙個加法(減法)運算時,最高位產生進製(或借位)時,cf為1,否則為0。

zf零標誌位:若當前的運算結果為零,則zf為

1,否則為0。

sf符號標誌位:該標誌位與運算結果的最高位相同。即運算結果為負,則sf為

1,否則為

0。of溢位標誌位:若運算結果超出機器能夠表示的範圍稱為溢位,此時of為1,否則為0。判斷是否溢位的方法是:進行二進位制運算時,最高位的進製值與次高位的進製值進行異或運算,若運算結果為1則表示溢位of=1,否則of=0

pf奇偶標誌:當運算結果的最低16位中含1的個數為偶數則pf=1否則pf=0

af輔助進製標誌:乙個加法(減法)運算結果的低4位向高4位有進製(或借位)時則af=1否則af=0 

另外還有三個控制標誌位用來控制cpu的操作,可以由程式進行置位和復位。

tf跟蹤標誌:該標誌位為方面程式除錯而設定。若tf=1,8086/8088cpu處於單步工作方式,即在每條指令執行結束後,產生中斷。

if中斷標誌位:該標誌位用來控制cpu是否響應可遮蔽中斷。若if=1則允許中斷,否則禁止中斷。

df方向標誌:該標誌位用來控制串處理指令的處理方向。若df=1則串處理過程中位址自動遞減,否則自動遞增。

od

裡能檢視到除if

標誌外的

8個標誌位

一、指令格式

條件轉移指令jle/jng

格式: jle/jng 標號位址

功能: 小於等於

/不大於 時轉到標號位址

jng有符號 不大於         則跳轉    //jump ifnot greater

jle    有符號小於等於       則跳轉    //jumpif less or equal

sf=1,zf=1,of=1 //其中乙個或者多個為1 則跳轉

二、**測試

printf("begin\n");

inta=3;

intb=5;

if (a>b) //jle/jng

小於等於

/不大於時轉移

printf("dothis");

//jng

不大於

printf("end;\n");

return0;

}

ibatis 大於等於小於等於的寫法

在ibatis的sql語句xml配置檔案中,寫sql語句會經常用到大於等於小於等於等等符號。網上蒐羅了一些寫法,大致有3種 其實就是xml特殊符號,轉義的方式。比如 select case when unix timestamp now unix timestamp ur.offline time ...

ibatis 大於等於小於等於的寫法

在ibatis的sql語句xml配置檔案中,寫sql語句會經常用到大於等於小於等於等等符號。網上蒐羅了一些寫法,大致有3種 其實就是xml特殊符號,轉義的方式。比如 select case when unix timestamp now unix timestamp ur.offline time ...

關於xml中大於等於 小於等於解析錯誤

xml文件中包含類似 elements look like 的文字,其中的 將被解析程式解釋成乙個元素,而人們實際想要的是 所表示的原義文字。1.cdata區 它的全稱為character data,以 結束,在兩者之間嵌入不想被解析程式解析的原始資料,解析器不對cdata區中的內容進行解析,而是 ...