オフセットがdiである文字列があります。このprocはaxの整数に変換します。 procは0-999で有効です。たとえば1000または2343の場合、または1000より大きい他の数の場合は機能しません。問題はどこだ ?私は混乱している。また、tlenは私が定義した一時バイトです。とにかく:)アセンブリatoi dizzyエラー
かなり恐ろしいです
atoi proc far
mov cl,len
mov ch,0
mov ah,0
start:
dec cl
jcxz addlastdigit
mov tlen,cl;save cl
mov al,1
mov bl,10
getMultiplier:
mul bl
Loop getMultiplier
mov cl,tlen ; retrive cl
mov dl,byte ptr[di]
sub dl,30h
mul dl
add num,ax
inc di
jmp start
addlastdigit:
mov ax,num
mov dl,byte ptr[di]
sub dl,30h
mov dh,0
add ax,dx
Ret
atoi endp
コードを正しくフォーマットしてください... – trojanfoe