-3

8085最初の 20 個の偶数 (8 ビット) の合計を計算し、その結果を と に格納6000するアセンブリ言語プログラム6001。試しましたが完了できませんでした

MVI c,00H
MOV B, C
MOV D, 00H
NEXT:
INX, H
4

4 に答える 4

2

最近アセンブリを使用する最も一般的な理由は速度であるため、ループを使用しないでください。

n偶数の合計は に2, 4, 6, ...等しいn(n + 1)。(または、もちろんn(n + 1) - 2、 から開始する場合0, 2, 4, ...。)

于 2013-06-21T07:11:47.300 に答える
0

最高のパフォーマンスを得るには、結果を手で計算し、2 つほどの命令でメモリに格納するだけです。

于 2013-06-21T08:06:08.917 に答える
0

アセンブリで数値が偶数か奇数かをテストするには、最下位ビットをテストするだけです。したがって、値を増やしてこのビットを繰り返しテストするループのみが必要です。はいの場合は、それを合計に追加します。

sum = 0
value = 0
found = 0

loop:
    if found == 20
        goto done

    if value & 1
        sum += value
        found = found + 1

   value = value +1
   goto loop

done:
    print sum
于 2013-06-21T07:17:25.290 に答える