konsep dasar teknik kompilasi n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Konsep Dasar Teknik Kompilasi PowerPoint Presentation
Download Presentation
Konsep Dasar Teknik Kompilasi

Loading in 2 Seconds...

play fullscreen
1 / 24

Konsep Dasar Teknik Kompilasi - PowerPoint PPT Presentation


  • 230 Views
  • Uploaded on

Konsep Dasar Teknik Kompilasi. Sigit Widiyanto , ST., MMSi ., MSc. Quick Basic. Turbo Pascal. Turbo C++ 4.5. Java Compiler (Command Prompt). Translator. Translator :

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Konsep Dasar Teknik Kompilasi' - mariah


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
konsep dasar teknik kompilasi

KonsepDasarTeknikKompilasi

SigitWidiyanto, ST., MMSi., MSc

translator
Translator

Translator :

  • Adalahsuatu program yang memlikiinputansebuah program yang ditulisdengansatubahasapemrograman (source language) untukditerjemahkankebahasa lain (object language)
  • Contoh source language: high level language, seperticobol, pascal, fortran
  • Contoh object language: low-level language ataumesin language.
macam macam translator

Assembler

*.asm

Object code

*.exe /*.com

Macam-macam Translator
  • Assembler
    • Source Code : Bahasa Assembly
    • Object Code : BahasaMesin
macam macam translator1

Source

Code

Compiler

Result

Macam-macam Translator
  • Compiler
    • Source Code : Bahasatingkattinggi
    • Object Code : Bahasamesinataubahasa assembly
    • Source Code dan data diprosesberbeda

Data

Execution

Object

Code

macam macam translator2

Interpreter

Result

Data

Macam-macam Translator
  • Interpreter
    • Tidakmenghasilkan object code.
    • Tetapi, hasiltranslasinyadalambentuk internal.
    • Program indukharusselaluberbedadengan compiler.

Source Code

apa itu teknik kompilasi
ApaituteknikKompilasi?
  • Teknik:
    • Metodeatau Cara
  • Kompilasi:
    • Proses mengabungkansertamenterjermahkansesuatu (source program) menjadibentuk lain.
jadi apa itu kompilator

Source

Program

Compiler

OBJECTPROGRAM

ERRORMESSAGES

Jadiapaitukompilator?
  • Kompilator (compiler) adalahsebuahprogram yang membacasuatu program yang ditulisdalamsuatubahasasumber(source language) danmenterjemah-kannyakedalamsuatubahasasasaran(target language).
proses kompilasi
Proses Kompilasi
  • analisa: program sumberdipecah-pecahdandibentukmenjadibentukantara (inter-mediate representation)
  • sintesa: membangun program sasaran yang diinginkandaribentukantara
penganalisa leksikal
PenganalisaLeksikal
  • Membacaprogram sumber, karakter demi karakter. Sederetan (satuataulebih) karakterdikelompokkanmenjadisatukesatuanmengacukepadapolakesatuankelompokkarakter(token)yang ditentukandalambahasasumber.
  • Kelompokkarakter yang membentuksebuah token dinamakanlexemeuntuk token tersebut. Setiap token yang dihasilkandisimpan di dalamtabelsimbol. Sederetankarakter yang tidakmengikutipola token akandilaporkansebagaitoken takdikenal(unidentified token).
contoh penganalisa leksikal
ContohPenganalisaLeksikal
  • Misalnyapola token untukidentifier Iadalah : I = huruf(hurufangka)*. Lexeme ab2c dikenalisebagai token sementara lexeme 2abc atauabCtidakdikenal.
penganalisa sintaks
PenganalisaSintaks
  • Memeriksakesesuaianpoladeretan token denganaturansintaks yang ditentukandalambahasasumber. Sederetan token yang tidakmengikutiaturansintaksakandilaporkansebagaikesalahansintaks(sintax error).
  • Secaralogikaderetan token yang bersesuaiandengansintakstertentuakandinyatakansebagaipohon parsing (parse tree).
contoh penganalisa sintaks
ContohPenganalisaSintaks
  • Misalnyasintaksuntukekspresiif-then E adalah : E if L then, L  IOA, I = huruf(hurufangka)*, O  <=><=>=, A  01...9. Ekspresiif a2 < 9 then adalahekspresisesuaisintaks; sementaraekspresiif a2 < 9 do atauif then a2B < 9tidaksesuai. Perhatikanbahwacontohekspresiterakhirjugamengandung token yang tidakdikenal.
penganalisa semantik
PenganalisaSemantik
  • Memeriksatoken danekspresidaribatasan-batasan yang ditetapkan. Batasan-batasantersebutmisalnya :
    • Panjangmaksimum token identifier adalah 8 karakter,
    • Panjangmaksimumekspresitunggaladalah 80 karakter,
    • Nilaibilanganbulatadalah -32768 s/d 32767,
    • Operasiaritmatikaharusmelibatkanoperan-operan yang bertipesama.
pembangkit kode antara
Pembangkitkodeantara
  • Membangkitkankodeantara (intermediate code) berdasar-kanpohon parsing. Pohon parse selanjutnyaditerjemahkanolehsuatupenerjemah yang dinamakanpenerjemahberdasarkansintak(syntax-directed translator). Hasilpenerjemahaninibiasanyamerupakanperintahtigaalamat(three-address code) yang merupakanrepresentasi program untuksuatumesinabstrak.
pembangkit kode antara1
Pembangkitkodeantara
  • Perintahtigaalamatbisaberbentukquadruples (op, arg1, arg2, result), tripels(op, arg1, arg2). Ekspresidengansatuargumendinyatakandenganmenetapkanarg2 dengan - (strip, dash)
pengoptimalan kode
PengoptimalanKode
  • Melakukanoptimasi (penghematanspace danwaktukomputasi), jikamungkin, terhadapkodeantara.
pembangkitan kode
PembangkitanKode
  • Membangkitkankodedalambahasa target tertentu (misalnyabahasamesin).
contoh
Contoh
  • Identifier:
  • Lexeme:
  • Quadruples: