彙編JCXZ指令的用法

jcxz的全稱我沒搜到,但大概是jump if cx equals zero,在cx==0時跳向某個標號,cx!=0時繼續向下執行代碼。和循環配合起來可以查找特定的值,比如下面這個例子:在內存2000H段中查找第一個值爲0的字節,找到後將它的偏移地址存儲在dx中。

assume cs:codesg

codesg segment

  start:   mov ax,2000h
           mov ds,ax
           mov bx,0
      s:  mov cl,[bx]
           mov ch,0
           jcxz ok        //檢查cx的值,爲0則查找結束,跳向ok標誌地址
           inc bx
           jmp short s   //查找失敗則循環繼續查找
     ok: mov dx,bx
           mov ax,4c00h
           int 21h
       
codesg ends

end start

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章