問題は次のとおりです。「足し算を繰り返すことで掛け算ができるように、引き算を繰り返すことで割り算をすることもできます。数値 N1 が別の数値 N2 になる回数を計算する手順を含むプログラムを作成してください。次のことを行います。ループが必要で、そのループが実行された回数をカウントします。」私は引き算段階で本当に立ち往生しています。ループを作成する必要があることはわかっていますが、どこに配置すればよいかわかりません。
org 100h
.MODEL SMALL
.STACK 100H
.DATA
MSG1 DB 'FIRST > $'
MSG2 DB 'SECOND > $'
MSG3 DB 'THE SUBTRACTION OF '
VALUE1 DB ?
MSG4 DB ' AND '
VALUE2 DB ?, ' IS '
SUM DB ?,'.$'
CR DB 0DH, 0AH, '$'
.CODE
MAIN PROC
;INITIALIZE DS
MOV AX, @DATA
MOV DS, AX
;PROMPT FOR FIRST INPUT
LEA DX, MSG1
MOV AH, 9H
INT 21H
MOV AH, 1H
INT 21H
MOV VALUE1, AL
MOV BH, AL
SUB BH, '0'
;CARRIAGE RETURN FORM FEED
LEA DX, CR
MOV AH, 9H
INT 21H
;PROMPT FOR SECOND INPUT
LEA DX, MSG2
MOV AH, 9H
INT 21H
MOV AH, 1H
INT 21H
MOV VALUE2, AL
MOV BL, AL
SUB BL, '0'
SUBTRACT:
;SUB THE VALUES CONVERT TO CHARACTER AND SAVE
SUB BH, BL
ADD BH, '0'
MOV SUM, BH
;CARRIAGE RETURN FORM FEED
LEA DX, CR
MOV AH, 9H
INT 21H
;OUTPUT THE RESULT
LEA DX, MSG3
MOV AH, 9H
INT 21H
TERMINATE:
;RETURN TO DOS
MOV AH, 4CH
INT 21H
MAIN ENDP
END MAIN