1. 程式人生 > >彙編JCXZ指令的用法

彙編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