lnstr.asm
来自「工欲善其事」· 汇编 代码 · 共 47 行
ASM
47 行
; #########################################################################
.486
.model flat, stdcall ; 32 bit memory model
option casemap :none ; case sensitive
.code
; ########################################################################
lnstr proc lpszString:DWORD
; ---------------------------
; put length of string in eax
; EXCLUDING terminating zero
; ---------------------------
mov eax, lpszString
xor edx, edx
jmp @F
align 4
@@:
REPEAT 3
mov dl, [eax] ; 1
inc eax ; 1
cmp dl, dh ; 1
je @F ; 1 when not taken
ENDM
mov dl, [eax] ; 1
inc eax ; 1
cmp dl, dh ; 1
jne @B ; 3 when jmp taken
@@:
sub eax, lpszString
dec eax ; correct count
ret
lnstr endp
; ########################################################################
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?