我是一个汇编初学者,这有一个汇编程序,(就是masm32中的一个调用的子程序),哪位高手能帮小弟注释一下,我有点看不懂!!多谢!!!不胜感激!!
dwtoa proc dwValue:DWORD, lpBuffer:DWORD
    push ebx
    push esi
    push edi
    mov eax, dwValue
    mov edi, [lpBuffer]
    or eax,eax
    jnz sign
  zero:
    mov word ptr [edi],30h
    jmp dw2asc
  sign:
    jns pos
    mov byte ptr [edi],'-'
    neg eax
    inc edi
  pos:      
    mov ecx,429496730
    mov esi, edi
    .while (eax > 0)
      mov ebx,eax
      mul ecx
      mov eax,edx
      lea edx,[edx*4+edx]
      add edx,edx
      sub ebx,edx
      add bl,'0'
      mov [edi],bl
      inc edi
    .endw
    mov byte ptr [edi], 0       ; terminate the string
    ; We now have all the digits, but in reverse order.
    .while (esi < edi)
      dec edi
      mov al, [esi]
      mov ah, [edi]
      mov [edi], al
      mov [esi], ah
      inc esi
    .endw
    dw2asc:
    pop edi
    pop esi
    pop ebx
    ret
dwtoa endp
end
[em1][em1]