c語言必背100代碼 匯編指令中的movxoror分別是什么意思?
匯編指令中的movxoror分別是什么意思?在匯編語言中,MOV指令是一條數(shù)據(jù)傳輸指令和最基本的編程指令,用于將數(shù)據(jù)從源地址傳輸?shù)侥繕?biāo)地址(寄存器之間的數(shù)據(jù)傳輸基本相同)。它的特點(diǎn)是不破壞源地址單元的
匯編指令中的movxoror分別是什么意思?
在匯編語言中,MOV指令是一條數(shù)據(jù)傳輸指令和最基本的編程指令,用于將數(shù)據(jù)從源地址傳輸?shù)侥繕?biāo)地址(寄存器之間的數(shù)據(jù)傳輸基本相同)。它的特點(diǎn)是不破壞源地址單元的內(nèi)容。例如:mov ax,2000h;將16位數(shù)據(jù)2000h傳輸?shù)絘x寄存器mov Al,20h;將8位數(shù)據(jù)20h傳輸?shù)紸l寄存器mov ax,BX;將BX寄存器的16位數(shù)據(jù)傳輸?shù)絘x寄存器mov Al,[2000h];將2000h單元的內(nèi)容傳輸?shù)紸l寄存器時(shí),需要注意的是:(1)數(shù)據(jù)不能在兩個(gè)存儲(chǔ)單元之間直接傳輸,即MOV指令只允許內(nèi)存中有一個(gè)操作數(shù)。Mov[Si],[2000h];這是錯(cuò)誤的。(2) MOV指令是中性的,即數(shù)字不能直接傳輸?shù)蕉渭拇嫫鳎–S、DS、SS、ES)和IP;段寄存器不能直接傳輸。Mov IP,2000小時(shí);這是一個(gè)錯(cuò)誤。(3) Cs和IP不能用作目標(biāo)操作數(shù)。Mov CS,ax;這是一個(gè)錯(cuò)誤。(4) MOV指令是中性的,即數(shù)字不能是目標(biāo)操作數(shù)。Mov 2000h,[Si];這是錯(cuò)誤的
JNZ結(jié)果不為零(或不相等),然后傳輸。
JZ為零,標(biāo)志為1。
JNZ(或jne)(不為零或不等于時(shí)跳轉(zhuǎn)),匯編語言中的條件轉(zhuǎn)移指令。如果結(jié)果不為零(或不相等),則將進(jìn)行傳輸。
測(cè)試條件:ZF=0
ZF匯編語言中PSW標(biāo)志寄存器的一位,JZ根據(jù)ZF決定是否跳轉(zhuǎn)。如果ZF=1(意味著這個(gè)操作的結(jié)果是0,否則ZF=0),它將跳轉(zhuǎn)。否則,它不會(huì)跳。ZF的狀態(tài)是根據(jù)其他指令的執(zhí)行結(jié)果來設(shè)置的。
JZ=零時(shí)跳轉(zhuǎn),即零標(biāo)志為1時(shí)跳轉(zhuǎn)。它通常與CMP一起用來判斷兩個(gè)數(shù)是否相等。另一種寫JZ的方法是JE,JE=jump if equal。JZ和JE的功能完全相同。
JZ是累加器a的零狀態(tài)轉(zhuǎn)移指令。