public static void OBRADI_odnosni_izraz(boolean staviNaStog){
		String linija = mParser.ParsirajNovuLiniju();	
		int trenLabela = mBrojacLabela++;
		
		if (linija.equals("<aditivni_izraz>")){
			OBRADI_aditivni_izraz(staviNaStog);
			return;
		}
		
		if (linija.equals("<odnosni_izraz>")){
			OBRADI_odnosni_izraz(true);
			linija = mParser.ParsirajNovuLiniju(); // ucitaj (OP_LT | OP_GT | OP_LTE | OP_GTE)
			UniformniZnak uz_operator = UniformniZnak.SigurnoStvaranje(linija);
			linija = mParser.ParsirajNovuLiniju(); // ucitaj <aditivni_izraz>
			OBRADI_aditivni_izraz(true);
			mIspisivac.DodajKod("POP R1", "odnosni izraz " + uz_operator.mLeksickaJedinka + ": pocetak");
			mIspisivac.DodajKod("POP R0");
			if (uz_operator.mNaziv.equals("OP_LT")){
				mIspisivac.DodajKod("CMP R0, R1", "usporedba");
				mIspisivac.DodajKod("JR_SLT OI_ISTINA_" + trenLabela, "skoci na OI_ISTINA_ ako je R0 manji");
			}else if (uz_operator.mNaziv.equals("OP_GT")){
				mIspisivac.DodajKod("CMP R0, R1", "usporedba");
				mIspisivac.DodajKod("JR_SGT OI_ISTINA_" + trenLabela, "skoci na OI_ISTINA_ ako je R0 veci");
			}else if (uz_operator.mNaziv.equals("OP_LTE")){
				mIspisivac.DodajKod("CMP R0, R1", "usporedba");
				mIspisivac.DodajKod("JR_SLE OI_ISTINA_" + trenLabela, "skoci na OI_ISTINA_ ako je R0 manji ili jednak");
			}else if (uz_operator.mNaziv.equals("OP_GTE")){
				mIspisivac.DodajKod("CMP R0, R1", "usporedba");
				mIspisivac.DodajKod("JR_SGE OI_ISTINA_" + trenLabela, "skoci na OI_ISTINA_ ako je R0 veci ili jednak");
			}	
			mIspisivac.DodajKod("MOVE %D 0, R0", "izraz nije istinit");
			mIspisivac.DodajKod("JR OI_DALJE_" + trenLabela, "preskoci postavljanje R0 u 1");
			mIspisivac.PostaviSljedecuLabelu("OI_ISTINA_" + trenLabela);
			mIspisivac.DodajKod("MOVE %D 1, R0", "izraz je istinit");
			mIspisivac.PostaviSljedecuLabelu("OI_DALJE_" + trenLabela);
			
			// makni 2 sa stoga i stavi novi ako je potrebno
			NaredbenaStrukturaPrograma_G.mStog.remove(NaredbenaStrukturaPrograma_G.mStog.size()-1);
			NaredbenaStrukturaPrograma_G.mStog.remove(NaredbenaStrukturaPrograma_G.mStog.size()-1);
			
			if (staviNaStog){
				mIspisivac.DodajKod("PUSH R0", "odnosni izraz: postavi rezultat na stog");
				Ime_Velicina_Adresa novi = new Ime_Velicina_Adresa();
				novi.mIme = null;
				novi.mAdresa = false;
				novi.mVelicina = 4;
				NaredbenaStrukturaPrograma_G.mStog.add(novi);
			}
			return;
		}
	}