日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

016-JLE JNG(小于等于)

發(fā)布時(shí)間:2023/12/15 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 016-JLE JNG(小于等于) 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

l? 條件轉(zhuǎn)移指令JLE

l? ?條件轉(zhuǎn)移指令JNG

?

l? 標(biāo)志寄存器PSW

標(biāo)志寄存器PSW(程序狀態(tài)字寄存器PSW)
?? 標(biāo)志寄存器PSW是一個(gè)16為的寄存器。它反映了CPU運(yùn)算的狀態(tài)特征并且存放某些控制標(biāo)志。8086使用了16位中的9位,包括6個(gè)狀態(tài)標(biāo)志位和3個(gè)控制標(biāo)志位。

15

14

13

12

11

10

9

8

7

6

5

4

3

2

1

0

?

?

?

?

OF

DF

IF

TF

SF

ZF

?

AF

?

PF

?

CF

?

?

?

?

?

?

?

?

?

標(biāo)志

?

?

?

?

?

?

?

?


??????????????????

?

?

??

?? CF(進(jìn)位標(biāo)志位):當(dāng)執(zhí)行一個(gè)加法(減法)運(yùn)算時(shí),最高位產(chǎn)生進(jìn)位(或借位)時(shí),CF為1,否則為0。
? ?ZF零標(biāo)志位:若當(dāng)前的運(yùn)算結(jié)果為零,則ZF1,否則為0
?? SF符號(hào)標(biāo)志位:該標(biāo)志位與運(yùn)算結(jié)果的最高位相同。即運(yùn)算結(jié)果為負(fù),則SF1,否則為0。
?? OF溢出標(biāo)志位:若運(yùn)算結(jié)果超出機(jī)器能夠表示的范圍稱為溢出,此時(shí)OF為1,否則為0。判斷是否溢出的方法是:進(jìn)行二進(jìn)制運(yùn)算時(shí),最高位的進(jìn)位值與次高位的進(jìn)位值進(jìn)行異或運(yùn)算,若運(yùn)算結(jié)果為1則表示溢出OF=1,否則OF=0
?? PF奇偶標(biāo)志:當(dāng)運(yùn)算結(jié)果的最低16位中含1的個(gè)數(shù)為偶數(shù)則PF=1否則PF=0
? ?AF輔助進(jìn)位標(biāo)志:一個(gè)加法(減法)運(yùn)算結(jié)果的低4位向高4位有進(jìn)位(或借位)時(shí)則AF=1否則AF=0?


?? 另外還有三個(gè)控制標(biāo)志位用來(lái)控制CPU的操作,可以由程序進(jìn)行置位和復(fù)位。
?? TF跟蹤標(biāo)志:該標(biāo)志位為方面程序調(diào)試而設(shè)置。若TF=1,8086/8088CPU處于單步工作方式,即在每條指令執(zhí)行結(jié)束后,產(chǎn)生中斷。
? ?IF中斷標(biāo)志位:該標(biāo)志位用來(lái)控制CPU是否響應(yīng)可屏蔽中斷。若IF=1則允許中斷,否則禁止中斷。
? ?DF方向標(biāo)志:該標(biāo)志位用來(lái)控制串處理指令的處理方向。若DF=1則串處理過(guò)程中地址自動(dòng)遞減,否則自動(dòng)遞增。

?

OD里能查看到IF標(biāo)志外的 8個(gè)標(biāo)志位

?

一、指令格式

條件轉(zhuǎn)移指令JLE/JNG?

?格式: JLE/JNG 標(biāo)號(hào)地址

?功能: 小于等于/不大于?時(shí)轉(zhuǎn)到標(biāo)號(hào)地址

JNG??? 有符號(hào) 不大于???????? 則跳轉(zhuǎn)??? //Jump ifNot Greater

JLE??? 有符號(hào)小于等于?????? 則跳轉(zhuǎn)??  //Jumpif Less or Equal

??? SF=1,ZF=1,OF=1 //其中一個(gè)或者多個(gè)為1 則跳轉(zhuǎn)

二、代碼測(cè)試????

?? {

???????? printf("begin\n");

???????? int a=3;

???????? int b=5;

???????? if (a>b) //JLE/JNG 小于等于/不大于時(shí)轉(zhuǎn)移

???????? {

???????? ???????? printf("dothis");

???????? }

???? //JNG 不大于

???????? printf("end;\n");

???????? return0;

}

//OD?ctrl+* 設(shè)置下一條要執(zhí)行指令的地址 簡(jiǎn)單的說(shuō)就是設(shè)置EIP

總結(jié)

以上是生活随笔為你收集整理的016-JLE JNG(小于等于)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。