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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

汇编语言 test 和 cmp 区别

發布時間:2024/7/23 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汇编语言 test 和 cmp 区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?

From:https://blog.csdn.net/zz709196484/article/details/77755243

?

看過破解教程,都知道 test,cmp 是比較關鍵,可是我一直不清楚它們究竟是怎么比較的,最后下決心找了很多資料,和大家一起把它們弄清楚.

首先看看:狀態寄存器(即標志寄存器)

PSW(Program Flag)程序狀態字(即標志)寄存器,是一個16位寄存器,由條件碼標志(flag)和控制標志構成,?
如下所示:
條件碼:?

  • ① OF(Overflow Flag)溢出標志,溢出時為1,否則置0.標明一個溢出了的計算,如:結構和目標不匹配.?
  • ② SF(Sign Flag)符號標志,結果為負時置1,否則置0.?
  • ③ ZF(Zero Flag)零標志,運算結果為0時置1,否則置0.?
  • ④ CF(Carry Flag)進位標志,進位時置1,否則置0.注意:Carry標志中存放計算后最右的位.?
  • ⑤ AF(Auxiliary carry Flag)輔助進位標志,記錄運算時第3位(半個字節)產生的進位置。有進位時1,否則置0.?
  • ⑥ PF(Parity Flag)奇偶標志.結果操作數中1的個數為偶數時置1,否則置0.

控制標志位:?

  • ⑦ DF(Direction Flag)方向標志,在串處理指令中控制信息的方向。?
  • ⑧ IF(Interrupt Flag)中斷標志。?
  • ⑨ TF(Trap Flag)陷井標志。

為舉例方便說一下 jnz 和 jz 。測試條件:?

JZ ZF=1? ? ? 即 Jz =jump if ZF ( 結果為 0, 則設置 ZF 零標志為 1,跳轉)? JNZ ZF=0? ? 即??Jnz=jump if not ZF ( 結果不為 0,則設置 ZF 為 0 (0表示假) )

好,接著來看 test 和 cmp

?

?

test?指令

?

test 屬于邏輯運算指令 (邏輯 與 )
? ? ? ? 功能: 執行BIT與BIT之間的邏輯運算?
? ? ? ? 測試(兩操作數作與運算,僅修改標志位,不回送結果).?
? ? ? ? Test 對兩個參數(目標,源)執行AND邏輯操作,并根據結果設置標志寄存器,結果本身不會保存。
? ? ? ? TEST AX,BX 與 AND AX,BX 命令有相同效果
? ? ? ??
? ? ? ? 語法: TEST r/m,r/m/data?
? ? ? ? 影響標志: C,O,P,Z,S (其中 C 與 O 兩個標志會被設為 0)

運用舉例:?
1.Test 用來測試一個位,
例如寄存器:
? ? ? ? test eax, 100b; b后綴意為二進制?
? ? ? ? jnz **; 如果eax右數第三個位為1,jnz將會跳轉
? ? ? ? jnz 跳轉的條件是 ZF=0,ZF=0 意味著ZF(零標志)沒被置位,即邏輯與結果為1.

2.Test的一個非常普遍的用法是用來測試一個寄存器是否為空:
? ? ? ? test ecx, ecx?
? ? ? ? jz somewhere
? ? ? ? 如果 ecx 為零,設置 ZF 零標志為1,Jz跳轉

?

?

CMP 屬于算術運算指令

?

? ? ? ? 功能: 比較兩個值(寄存器,內存,直接數值)?
? ? ? ? 語法: CMP r/m,r/m/data?
? ? ? ? 標志位: C,P,A,Z,O

CMP 比較.(兩操作數作減法,僅修改標志位,不回送結果).?
cmp 實際上是只設置標志不保存結構的減法,并設置Z-flag(零標志).?
零標志很像carry,也是內部標志寄存器的一位.

例如:?
? ? ? ? cmp eax, 2; 如果 eax-2=0 即 eax=2 就設置零標志為1?
? ? ? ? Jz **; 如果設置了零標志就跳轉

?

?

結論:?

  • ? ? ? ? test 邏輯與運算結果為零,就把 ZF(零標志)置 1
  • ? ? ? ? cmp 算術減法運算結果為零,就把 ZF(零標志)置 1

?

?

?

?

?

?

?

?

?

?

?

?

總結

以上是生活随笔為你收集整理的汇编语言 test 和 cmp 区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美大肚乱孕交hd孕妇 | 天堂av2014| www夜夜 | 全毛片| 精品亚洲一区二区三区四区五区 | a级特黄视频 | 亚洲综合久久网 | 西西毛片 | a天堂中文 | 日韩视频在线观看二区 | 国模无码视频一区二区三区 | 极品91尤物被啪到呻吟喷水 | 99视频国产精品免费观看a | 91中出| 无码人妻丰满熟妇区96 | 毛片哪里看 | 欧美日韩一区二区三区69堂 | 亚洲精品高潮久久久久久久 | 日韩一区二区在线观看视频 | 一级片少妇| 无码国产精品一区二区免费式直播 | 国产精品影音先锋 | 91色视频 | 男女激情久久 | 精品免费在线观看 | 国产精品欧美在线 | 精品伊人久久 | 欧美日韩在线中文字幕 | 日韩精品久久久久久久电影99爱 | 日韩福利视频网 | 日本三级韩国三级三级a级中文 | 色免费看| av日韩精品 | 日韩三级一区 | av片国产 | 欧美乱码精品一区二区三区 | 在线五月天 | 亚洲成人a√ | 亚洲免费观看视频 | 激情综合网五月婷婷 | 淫久久 | 三级久久| 色哟哟免费视频 | 亚洲国产日韩一区无码精品久久久 | 91黄色免费网站 | 国产熟妇搡bbbb搡bbbb搡 | 国产精品色婷婷 | 女人脱下裤子让男人桶 | 久久牛牛 | www.成人av | 天天视频亚洲 | 久久亚洲AV无码 | 久久精品视频网 | 日韩精品一区二区三区视频在线观看 | 欧美日韩国产二区 | 欧美精品自拍视频 | 丁香六月婷婷 | 亚洲国产精品久久久久婷蜜芽 | 亚洲一级免费毛片 | 少妇高潮一区二区三区99小说 | 国产精品网站入口 | 亚洲亚洲人成综合网络 | 亚色在线视频 | 午夜精品久久久内射近拍高清 | 我的好妈妈在线观看 | 国产精品美乳在线观看 | 国产尤物在线视频 | 日本熟女毛茸茸 | 国产白浆视频 | 日本视频www| 久久精品视频在线免费观看 | 无码一区二区三区免费视频 | 午夜不卡福利视频 | 制服诱惑一区二区三区 | 初尝人妻少妇中文字幕 | 国产粉嫩av | 综合性色 | 国产97超碰 | 一区二区视频在线观看免费 | 国产无码久久精品 | 亚洲精品国产精品乱码不卡 | 中文字幕国产 | 国产精品香蕉在线观看 | 欧美天天搞| 久久精品屋 | xxxxx黄色片 噜噜噜噜噜色 | 日韩精品第一页 | aa片在线观看视频在线播放 | 性一交一乱一区二区洋洋av | 色网站在线播放 | 毛片毛片毛片毛片毛片毛片毛片毛片毛片毛片 | 老熟女毛茸茸浓毛 | h视频在线免费观看 | 国产网站免费观看 | 在线看网站 | 亚洲手机av| 亚洲成人黄色av | 香蕉视频在线观看网站 | 欧美不卡在线视频 |