-2

ADC を使用してアセンブリで 32 ビットの 2 つの数値を加算するにはどうすればよいですか?

4

2 に答える 2

1

ld、st、adc、および加算される値を指す加算およびインデックスレジスタ X と Y を備えた 8 ビットプロセッサを想定すると、result は *X を置き換えます。

ld 3,X
add 3,Y   ; The first add is without carry
st 3,X
ld 2,X
adc 2,Y   ; subsequent adds propagate carry.
st 2,X
ld 1,X
adc 1,Y
st 1,X
ld 0,X
adc 0,Y
st 0,X
于 2011-01-17T14:11:39.067 に答える
0

ADC「ADdwithCarry」の略で、実際には2つの値を加算し、キャリーフラグの値を再度加算するようなものです。

adc eax,ebx

のようなものです:

add eax, ebx
add eax, cf

また:

add eax, ebx
jnc dont_add
inc eax

dont_add:
...
于 2011-01-17T21:09:35.907 に答える