-1
2つの文字列を比較するために次のコードを記述しました.1つはあらかじめ定義されていて、もう1つはユーザーからの入力として扱われます。しかし、プログラムは毎回不平等であると示しています。私を助けてください。私はMASM32アセンブラを使用しています。MASM32文字列コンパイル
.data
msg1 db '***Welcome to My Program***',13,10,0
msg2 db 'Please Enter a Product: ',0
msg3 db 'You Entered Shoes: ',0
p1 db 'Shoes',0
.data?
product db 100 dup(?)
.code
start:
invoke StdOut,ADDR msg1
invoke StdOut,ADDR msg2
invoke StdIn,ADDR product,100 ; receive text input
lea esi, p1 ; Load the buffer start address
lea edi, product ; Load the save buffer start address
mov ecx, 10 ; Load the operation count
repe cmpsb ; Compare the byte into the buffer
jne Terminate
invoke StdOut,ADDR msg3
Terminate:
invoke ExitProcess,0
END start
クイック答えを、と非常に正しい:ちょうど私が(STDINの指定された行動上のハッチのコメントが、バグレポートだという事実を無視して)記述しています正確に何を実証MASM32フォーラムのスレッドを発見しました! – Perception
あなたの返事ありがとうございますが、私はもっと多くのことを学ぶ時間がありません。誰かがこのコードを修正して動作するように教えてください! – Azeem
do:比較の前に 'プッシュオフセット製品' 'call StripLF' ... –