Name: Shubhangi Mapare Roll No: 17112 Div: TE A Subject: SPOS Lab
Name: Shubhangi Mapare Roll No: 17112 Div: TE A Subject: SPOS Lab
Assignment No: A3
Problem statement: Design suitable data structures and implement pass-I of a two-pass
macro-processor using OOP features in Java.
Input code:
PassOne.java
package A3;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;
import java.util.StringTokenizer;
input.txt
MACRO
INCR &X,&Y,®=AREG
MOVER ®,&X
ADD ®,&Y
MOVEM ®,&X
MEND
MACRO
DECR &A,&B,®=BREG
MOVER ®,&A
SUB ®,&B
MOVEM ®,&A
MEND
START 100
READ N1
READ N2
INCR N1,N2,REG=CREG
DECR NA,N2
STOP
N1 DS 1
N2 DS 1
END
Output:
output_pass2.txt
START 100
READ N1
READ N2
INCR N1,N2,REG=CREG
DECR NA,N2
STOP
N1 DS 1
N2 DS 1
END
MNT.txt
INCR 0
DECR 5
MDT.txt
0 INCR &X,&Y,®=AREG
1 MOVER #3,#1
2 ADD #3,#2
3 MOVEM #3,#1
4 MEND
5 DECR &A,&B,®=BREG
6 MOVER #3,#1
7 SUB #3,#2
8 MOVEM #3,#1
9 MEND