8085
最初の 20 個の偶数 (8 ビット) の合計を計算し、その結果を と に格納6000
するアセンブリ言語プログラム6001
。試しましたが完了できませんでした
MVI c,00H
MOV B, C
MOV D, 00H
NEXT:
INX, H
最近アセンブリを使用する最も一般的な理由は速度であるため、ループを使用しないでください。
n
偶数の合計は に2, 4, 6, ...
等しいn(n + 1)
。(または、もちろんn(n + 1) - 2
、 から開始する場合0, 2, 4, ...
。)
最高のパフォーマンスを得るには、結果を手で計算し、2 つほどの命令でメモリに格納するだけです。
アセンブリで数値が偶数か奇数かをテストするには、最下位ビットをテストするだけです。したがって、値を増やしてこのビットを繰り返しテストするループのみが必要です。はいの場合は、それを合計に追加します。
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