«« ( Date ) »» // «« ( Thread ) »» // ri4sp - 2006

Re: Za profesora

by sinisa komlen
ponedeljak, 28. avgust 2006 - 15:20.


4. Ne trebamo voditi racuna o vrednostima iz data sekcije i opsegu za bajtove operacionog koda. Kad bi to radili za bajt operacioni kod bi morali proveriti da li je u opsegu 00-3C i ako jeste da li je jednobajtna ili dvobajtna instrukcija. Ako je jednobajtna sledi ista provera za sledeci bajt a ako je dvobajtna sledeci bajt ne mora biti u navedenom opsegu jer je u pitanju bajt adresnog polja.

Vezano za ovo tvoje cetvrto pitanje... U tekstu pise da je dovoljno uzeti u obzir samo DC i DS, a sve ostale direktive i naredbe ne moramo
Pozdrav

Da ali upravo zbog toga sto se sa DC moze realizovati bilo koja naredba. Recimo naredba POP u masinskom jeziku realizovana je bajtom 14h. Umesto naredbe POP mi jednostavno mozemo da generisemo DC 14h i dobijamo isti efekat: Upisani bajt koji tumaci masina je 14h sto masini znaci da treba da izvrsi naredbu POP. Ako recimo generisemo DC 19h to znaci da smo upisali dvobajtnu naredbu LDA i da sledeci bajt ustvari predstavlja operand koji moze imati bilo kakav opseg. Ako pak kao naredbu generisemo DC 3D a bajt operacionog koda u masinskom jeziku je u opsegu od 00-3C (od naredbe NOP do naredbe JSR) trebalo bi da prijavimo gresku jer DC 3D kao naredba nema nikakvo znacenje..


---------------------------------
Stay in the know. Pulse on the new Yahoo.com. Check it out.