java. Programmitekst transleeritakse kahendfailidesse laiendiga .class. .class-failid koosnevad baitkoodist, mis on abstraktse Java-protsessori käskude kogu ja mis koosnevad selle protsessori käskude ja andmete sõnede jadast. Selleks, et baitkood mõnel arvutil täita, interpreteerib Javavirtuaalmasin iga käsu antud protsessori käskudeks. Esialgu baitkoodi interpreteerimine toimus nii, et iga baitkoodi jada viidi üle masinakoodi ja täideti. Selle tagajärel Java-programmid töötasid aeglasemalt, kui teised operatsioonisüsteemisõltuvad programmid. Nüüd aga kasutatakse keerulisemat süsteemi selle nimeks on JIT-kompileerimine (Just-In-Time) selles variandis baitkood kompileeritakse käitusajal. Kui mõni instruktsioon oli korra kompileeritud, siis see jäeti meelde spetsiaalses puhvris ja korduvalt kasutati juba valmiskoodi. Seega interpreteerimine
//system-on-a-chip//) ja kiipide süsteemideni (SiP //systems-in-package//). 68. Assemblerikeele kasutamine arvutite programsel juhtimisel (praktikum). Protsessorsõltuv. Keele kasutamine eeldab protsessori arhitektuuri ja talitluse detailset tundmist. Programm kasutab mäluruumi säästlikult, programmi töötlusaeg on lühem aga programmeerimine on tülikas (keerukas) ja keel ei ole kasutajasõbralik. Arvutiprogramm tuleb transleerida (virtuaalmasina puhul interpreteerida) masinakoodi. 69. Assemblerikeelse programmi transleerimine masinakeelde (praktikum). Assamblerikeelne programm (masinast sõltuv madalataseme keel) -> assambleri programm (transleerimine) -> masinakood. Translaatorina kasutatava programmi ülesanne on lähtekeelse, kas masinast sõltumatu kõrgkeelse või sõltuva madaltaseme keelse, programmi teisendamine masinakeelde. 70. Pseudokäskude (direktiivide) kasutamine kompilaatori ohjel (praktikumis kasutatud simulaatori näitel).
Common Language Specification(CLS) CLR (3) -käitusehaldus ·MSIL (Microsoft Intermediate language) ·JIT (Just In Time) kompileerimine ·Käitus(Execution) ·Assemblies ·Rakendusdoomenid(ApplicationDomains) ·Käitusajahostid(RuntimeHosts) CLR (4) -JIT ·Osa programmi ei täideta konkreetses käituses MSIL-kood konverteeritakse masinakoodiks ja laaditakse mällu vaid siis, kui vaja ·Laadur loob igale meetodile vahendaja(stub) ·Järgnevad pöördumised suunatakse juba loodud masinakoodi poole ·Konverteerimisel verifitseeritakse koodi metaandmeid kasutatadessafecode CLR (4) -Assemblies ·Assemblykäitusühik. annab CLR-leinfo tüüpide implementeerimiseks assembly on failide hulk, assembly omab faile ·Staatilised assembly-d sisaldavad NET-karkassi ressurse(nt JPEG-failid) ·Dünaamilised assembly-d luuakse skriptide täitmise tulemusel, neid ei salvestata kettale ·Assembly on "loogiline.dll"(realiseerimisühik, versioonihaldus, turvaõigused, ...)
operatsioonisüsteem, translaatorid, kõrgprogrammeerimiskeeled ning kasutajaprogrammid. 2.4.2. Assembler Assemblerikeelt on vaja tunda siis, kui puudub kõrgkeele translaator, mis avastaks programmis oleva vea, mida kõrgkeele tasemel ei õnnestu avastada. Mikroprotsessor- süsteemide loomisel ning juhtraalide kasutamisel tööstusseadmete ja -protsesside juhtimisel tuleb seda tihti ette. Kõrgkeele näiteks Basic'u või Pascal'i programmi tõlgib assemblerikeelde või masinakoodi kõrgkeelde translaator. Assemblerikeeles programmeerimine sarnaneb masinakoodis programmeerimisega, kuid on mõnevõrra mugavam. Masinakoodis programmeerimisel kasutatakse absoluutaadresse, mis eeldab, et programmeerija tunneb täpselt infobittide asukohta (aadresse) mälus. Assemblerikeeles kasutatakse sümbol- ja suhtadresseerimist. Sümboladresseerimise korral antakse muutujale või käsule nimi, nn märgend, ja edaspidi opereeritakse selle nimega, mitte absoluutse aadressiga