2013-10-01 104 views
-1

我試圖做我的任務是循環和現在我卡在正確的循環進位標誌計數器。這是要求:彙編語言進位標誌計數器

「將值1放入寄存器eax中,並向左移動,直到進位標誌置位,並保持計數器完成轉換的次數。」

所以我不明白這是如何完成的。我迄今爲止所做的一切都以負數結束。關於我在做什麼的任何提示都是錯誤的?

 mov  eax, 1 
Loop3: 
     shl  eax, 1 
     cmp  eax, 0 
     jnz  Loop3 
     mov  eax, counter 

回答

2

你應該做如下事情:

mov eax, 1 
    mov ecx, 0 
Loop3: 
    inc ecx 
    shl eax, 1 
    jnc Loop3 
    mov counter, ecx 
+2

'XOR ECX,ecx'等同於'MOV ECX,0'和更短的兩個字節。只是我2美分。 –