char
ポインタを小文字に変換するプログラムです。Visual Studio 2010 を使用しています。
これは別の質問からのものですが、読みやすく、より直接的です。
int b_search (char* token)
{
__asm
{
mov eax, 0 ; zero out the result
mov edi, [token] ; move the token to search for into EDI
MOV ecx, 0
LOWERCASE_TOKEN: ;lowercase the token
OR [edi], 20h
INC ecx
CMP [edi+ecx],0
JNZ LOWERCASE_TOKEN
MOV ecx, 0
トークンへのアドレスを含むレジスタをすべて小文字に変更しようとしているOR命令で、未処理の例外が発生し続けます...アクセス違反が発生し、括弧なしではエラーは発生しませんが、何も発生しません小文字になります。何かアドバイス?これは別の質問のより大きなコードの一部ですが、このソリューションのみが必要だったため、分割しました。