예제 #1
0
        public void CrearArchivo()
        {
            if (!File.Exists(path))
            {
                using (StreamWriter sw = File.CreateText(path))
                {
                    NodoVariable p = listaVariables;
                    sw.WriteLine("INCLUDE macros.mac");
                    sw.WriteLine("DOSSEG");
                    sw.WriteLine(".MODEL SMALL");
                    sw.WriteLine("STACK 100h");
                    sw.WriteLine(".DATA");

                    while (p != null)
                    {
                        sw.WriteLine();
                    }
                }
            }
        }
예제 #2
0
파일: Form1.cs 프로젝트: serfer494/Compi
        public void btnSintactico_Click(object sender, EventArgs e)
        {
            sint = new Sintactico(lexi.p);
            sint.ProcSintactico();
            if (sint.error != null)
            {
                MessageBox.Show(sint.error);
            }
            else
            {
                MessageBox.Show("No se encontraron errores de sintaxis");
            }
            if (sint.errorSemantico != null)
            {
                MessageBox.Show(sint.errorSemantico);
            }
            else
            {
                MessageBox.Show("No se encontraron errores de semantica");
            }
            if (sint.error == null && sint.errorSemantico == null)
            {
                string     cadenaPolish = "";
                NodoPolish listaPolish  = sint.GetPolish();
                while (listaPolish != null)
                {
                    cadenaPolish = cadenaPolish + listaPolish.lexema + " ";
                    listaPolish  = listaPolish.sig;
                }

                listaPolish = sint.GetPolish();
                variables   = sint.cabeza;
                polish      = sint.GetPolish();
                frmPolish ventanaPolish = new frmPolish(listaPolish);
                ventanaPolish.Show();
            }
        }
예제 #3
0
 public Ensamblador2(NodoVariable cabezaV, NodoPolish cabezaP)
 {
     cabezaVsintaxis = cabezaV;
     cabezaPsintaxis = cabezaP;
 }
예제 #4
0
 public Ensamblador(NodoVariable variables, NodoPolish polish)
 {
     this.listaVariables = variables;
     this.polish         = polish;
 }