1. 程式人生 > >《組合語言》讀書筆記(3)----jcxz指令的巧妙運用

《組合語言》讀書筆記(3)----jcxz指令的巧妙運用

讀到《組合語言》第9章,一個有關jcxz指令的演算法覺得很妙,問題如下:

利用jcxz指令,實現在記憶體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