當前位置:成語大全網 - 書法字典 - CMP在匯編語言中是什麽意思?

CMP在匯編語言中是什麽意思?

Cmp是比較指令,其功能相當於減法指令,只是不保存結果。cmp指令執行後,將影響標誌寄存器。其他相關指令通過識別這些受影響的標誌寄存器位來了解比較結果。

例如:

mov ax,8

mov bx,3

cmp ax,bx

實現後:AX = 8,ZF = 0,PF = 1,SF = 0,CF = 0,of = 0。

執行cmp指令後,可以通過相關標誌位的值查看比較結果。

cmp ax、bx和bx的邏輯意義是比較ax和bx中的值。如果執行後:

ZF=1然後AX=BX。

ZF=0然後斧頭!=BX

SF=1,ax

SF=0,AX & gt=BX

SF=0且ZF=0,則ax》0;布朗克斯(Bronx)

SF=1或ZF=1,然後AX

當CPU執行cmp指令時,它還包含兩種含義:無符號運算和有符號數運算。

CMP ah BH

如果ah=bh,ah-bh=0,那麽ZF=1。

如果ah≠bh,那麽ah-bh≠0,所以ZF=0。

所以我們可以根據cmp指令執行後ZF的值來判斷這兩個數據是否相等。如果啊

對於有符號數運算,在ah中

Ah=1,bh=2,那麽AH-BH = 0FH,0FH是-1的補數,因為結果是負數,所以SF=1。

ah=0FEH,bx = OFFH;那麽ax-bx =-2-(-1)= OFFH,SF=1,因為結果是負的。

擴展數據:

匯編語言常用的指令集如下:

數據傳輸指令集

MOV

功能:將源操作數發送到目標操作數。

語法:MOV目標操作數,源操作數

格式:MOV r1,r2

MOV·r·m

MOV河

MOV河數據

XCHG

功能:交換兩個操作數的數據。

語法:XCHG

格式:XCHG r1,r2 XCHG m,r XCHG r,m r,m。

用力,爸爸

功能:將操作數推入或推出堆棧

語法:推送操作數彈出操作數

格式:推送數據彈出

POPF普什夫,POPA普沙

功能:堆棧指令組

格式:普什夫·POPF·普沙PUSHA

LEA、LDS、LES

功能:獲取要註冊的地址

語法:lea r、mlds r、mles r、m。

XLAT(XLATB)

功能:查表指令

語法:XLAT XLAT m

算術運算指令

模數轉換器加法

功能:加法指令

語法:add op1,op2 ADC op1,op2

格式:addr1,R2地址,m地址,r地址,數據。

撞擊痕跡:C、P、A、Z、S、o。

SBB潛艇

功能:減法指令

語法:subop1,op 2 sbop 1,op2。

格式:subr1,R2 subr,m subm,r subr,data subm,data。

撞擊痕跡:C、P、A、Z、S、o。

公司,12月

功能:將OP的值增加或減少壹。

語法:INC OP DEC OP

格式:INC r/m DEC r/m

撞擊痕跡:P、A、Z、S、o。

底片

功能:反轉OP的符號(取二進制補碼)

語法:否定OP

格式:負r/m

撞擊痕跡:C、P、A、Z、S、o。

穆爾,伊穆爾

功能:乘法指令

語法:MUL OP IMUL OP

格式:多路/多路/多路/多路

沖擊標記:C、P、A、Z、S、O(只有IMUL會影響S標記)。

IDIV分區

功能:除法指令

語法:DIV OP IDIV OP

格式:IDIV r/m分區

CWD CBW

功能:有符號數擴展指令

語法:CBW·CWD

AAA、AAS、AAM、AAD

功能:無壓BCD碼操作調整指令

語法:aaaaaaaamaad

撞擊痕跡:A、C(AAA、AAS)S、Z、P(AAM、AAD)

百度百科-CMP指令