Vaje - Nalagalnik

Nalagalnik

Obj format

Prevedi nekaj programov v SIC/XE zbirniku, ki si jih napisal v začetku vaj. Oglej si nastale obj datoteke.

  • Katere zapise vsebujejo?
  • Kateri je začetni naslov programa?
  • Na katere naslove se naloži koda?
  • Kateri naslov je prvi naslov za izvajanje?

Nalagalnik v Javi

Pomožne metode

Za nalaganje obj datoteke potrebujemo metode za branje niza, enega bajta in ene besede. Lahko jih napišemo (kot statične metode) v nekem pomožnem razredu, npr. Utils. Branje je smiselno izvesti preko Java razreda Reader; kasneje bomo to uporabili, da bomo lahko brali iz datoteke, stringa ipd.

Napišite torej naslednje metode:

  • String readString(Reader r, int len)
  • int readByte(Reader r)
  • int readWord(Reader r)

Nalaganje sekcije

Datoteka obj pravzaprav predstavlja kontrolno sekcijo (angl. control section). V razredu Machine podprite njeno nalaganje. Potrebujemo metodo, npr.:

  • boolean loadSection(Reader r)

Napišite absolutni nalagalnik, t.j. koda naj se naloži na naslov, ki je podan v datoteki. Po nalaganju ne pozabite ustrezno nastaviti registra PC.

*Nalagalnik v SIC/XE zbirniku

Oglejte si primer nalagalnika v SIC/XE zbirmiku.

  • Kam se program naloži?
  • Iz katere naprave bere kodo?
  • V kakšni obliki je zapisana koda?

Prenesite si datoteko F1.dev, ki vsebuje nek program, katerega zna zgornji nalagalnik naložiti in zagnati. Preizkusite!

  • Za kateri program gre?

Poskusite katerega od svojih programov naložiti na ta način.

  • Obj datoteko lahko predelate, da bo kompatibilna z zgornjim nalagalnikom.
  • Bodite pozorni na RESB in RESW ukaze, ki ne generirajo T zapisov, namesto teh morate sami vstaviti ustrezno število ničel.
Last modified: Tuesday, 19 November 2013, 9:47 AM