2 つの 6 桁の 10 進数を取得してそれらの加算を表示するプログラムを作成しようとしていますが、16 ビット 8086 で数値をダブルワードとして定義し、ワード 1 に LO を、ワード 2 に HO を配置しました。以下のコードに似ていますが、私は次に何をするか考えていません。次の操作のアルゴリズムを提案してくれる人はいますか? thnx
x dd(?)
next_no:
mov cl,2
mov ch,4
two_bit:
getch
sub al,30h
mov bl,10
mul bl
mov di,ax
add word ptr x+2,di
dec cl
jnz two_bit
fourbit:
getch
sub al,30h
mov bl,10
mul bl
mov di,ax
add word ptr x,di
dec ch
jnz fourbit
このプログラムでは、di は、ユーザーが数値を入力したときにループを介して作成された数値を格納する場所です。di は 10 の倍数になり、次のように新しい数字が di に追加されます: 28 を取得するプロセス di=0*10+2=2 di= 2*10*+8=28