これは、このアセンブリクラスの概要の最初のラボです。cに埋め込まれたアセンブリを記述しなければならない割り当てがあります。教授がCコードを提供しましたが、独自のアセンブリを作成する必要があります。タスクは、3つの値(eax、ebx、およびecxに配置されている)を比較し、最大値と最小値を加算して2を掛けることです。
私はシナリオの1つを書き、自分が正しい方向に進んでいるかどうかを知りたいと思いました。
私は4つのシナリオがあることを知っています:
- a> b> c
- a <b> c
- a> b <c
- a <b <c
私はa>b>cを書きました。
これは正しいです ?教授が提供したテストをコンパイルすると、奇妙な答えが返ってきます。たとえば、eax = 3、ebx = 2、ecx = 1は8の答えを与えるはずですが、それは奇妙な何かを与えます。助けてください、ありがとう。
cmp eax, ebx
jge agreatb
agreatb:
cmp ebx, ecx
jge bgreatc
bgreatc:
add eax, ecx
mov eax, edx