Posts

Showing posts with the label SPOS

Write a Java program for pass-II of a two-pass macro-processor. The output of assignment-3 (MNT, MDT and file without any macro definitions) should be input for this assignment.

import java.io.*; import java.util.HashMap; import java.util.Vector; public class macroPass2 { public static void main(String[] Args) throws IOException{ BufferedReader b1 = new BufferedReader(new FileReader("intermediate.txt")); BufferedReader b2 = new BufferedReader(new FileReader("mnt.txt")); BufferedReader b3 = new BufferedReader(new FileReader("mdt.txt")); BufferedReader b4 = new BufferedReader(new FileReader("kpdt.txt")); FileWriter f1 = new FileWriter("Pass2.txt"); HashMap<Integer,String> aptab=new HashMap<Integer,String>(); HashMap<String,Integer> aptabInverse=new HashMap<String,Integer>(); HashMap<String,Integer> mdtpHash=new HashMap<String,Integer>(); HashMap<String,Integer> kpdtpHash=new HashMap<String,Integer>(); HashMap<String,Integer> kpHash=new HashMap<String,Integer>(); HashMap<String,Integer> macroNameHash=new HashMap<String,Int...

Design suitable data structures and implement pass-I of a two-pass macro-processor using OOP features in Java.

  /* Problem Statement: Design suitable data structures and implement pass-I of a two-pass macro-processor using OOP features in Java */ import java.io.BufferedReader; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.HashMap; public class macroPass1 { public static void main(String[] Args) throws IOException{ BufferedReader b1 = new BufferedReader(new FileReader("input.txt")); FileWriter f1 = new FileWriter("intermediate.txt"); FileWriter f2 = new FileWriter("mnt.txt"); FileWriter f3 = new FileWriter("mdt.txt"); FileWriter f4 = new FileWriter("kpdt.txt"); HashMap<String,Integer> pntab=new HashMap<String,Integer>(); String s; int paramNo=1,mdtp=1,flag=0,pp=0,kp=0,kpdtp=0; while((s=b1.readLine())!=null){ String word[]=s.split("\\s"); //separate by space if(word[0].compareToIgnoreCase("MACRO")==0){ flag=1; if(word.length<...