outStr を出力するようにコンパイラに指示する printf ステートメントがあります。outStr はもともと emptybuf[1000] = "??? まだ翻訳されていません ???"; に設定されています。答えを outStr に移動することになっています。これにより、print ステートメントの outStr が更新されます。
何らかの理由で、私のインライン アセンブリは、以下に示すコードから何も出力しません。私は自分が間違っていることを理解できません。小文字を大文字に変換し、特殊文字を無視しようとしています。どんなアドバイスでも大歓迎です。
mov esi,inStr ;To start off initialize esi point to input string
mov edi,outStr ;edi point to the output string area
; using esi and edi with [esi] and [edi] as indirect operand
; suggestion to start mov each character to al like --> mov al,[esi]
; test, and manipulate character in al
jmp getNext
getNext: mov al,[esi]
cmp al,0
je exitProc
test al,01100000b ;test to see if its a lowercase letter
je toUpperCase
test al,01000000b
mov [edi],al
inc esi
toUpperCase: test al,01000000
AND al,11011111b
mov [edi],al
inc esi
jmp getNext
exitProc: mov outStr, edi