Input: R0 and R1
Output: R0 ? R0 * R1
.ORIG x3000
LD R0, N1
LD R1, N2
AND R2, R2, #0
AGAIN ADD R2, R2, R0
ADD R1, R1, #-1
BRp AGAIN
HALT
ADD R0, R2, #0
N1 .FILL x0005
N2 .FILL x0002
.END
2. Subroutine Div
Input : R0 ? dividend, R1 ? divisor
Output: R0 ? the quotient , R1 ? the remainder
(Note) R0 ? R0 / R1, R1 ? R0 % R1
.ORIG x3000
LD R0, N1
LD R1, N2
AND R2, R2, #0
AND R3, R3, #0
NOT R1, R1
ADD R1, R1, #1
AGAIN ADD R2, R2, #1
ADD R0, R0, R1
ADD R3, R0, R1
BRzp AGAIN
HALT
AND R1, R1, #0
ADD R1, R1, R0
AND R0, R0, #0
ADD R0, R0, R2
N1 .FILL x000A
N2 .FILL x0002
.END
3. Subroutine PrintInt (Div 활용) ? 2자리수 정수 처리
Input: R0 ? the integer
Print as a decimal integer string
4. Subroutine ReadInt (Mult 활용) ? 2자리수 정수 처리
Read a decimal integer string from keyboard (until enter key)
Output: R0 ? the integer
5. Program Calculator (ReadInt, Mult, PrintInt 활용)
Read 2 integers
Multiply them
Print the result
AX 레지스터 사용법에 익숙해지시면 되요..이건 기본중에 기본인데...허거걱..
이런건 물어보면 안되요 책보고하셔야죠 8086어셈은 매크로 어셈블리 보면 잘나와 있어요 한번 보고 해보세요.
아공 찾아봤는데 못찾겠네요 .그냥 add , mul div 명령의 사용법 찾으시면 답나옵니다.