Teknik Kompilasi - Pertemuan 2 (Analisis Leksikal)

00:13:47
https://www.youtube.com/watch?v=KusyuNq3ef4

Résumé

TLDRVideo ini menjelaskan analisis leksikal sebagai tahap pertama dalam kompilasi, di mana kode sumber dipecah menjadi token. Proses ini melibatkan pemeriksaan karakter demi karakter dan menghasilkan token yang memudahkan parsing. Ada lima jenis token: identifier, keywords, operators, literals, dan delimiters. Scanner berfungsi untuk membaca kode, mengenali token, dan menghapus elemen yang tidak diperlukan seperti spasi dan komentar. Proses ini penting untuk memastikan kode dapat diparsing dengan benar dan efisien.

A retenir

  • 🔍 Analisis leksikal adalah tahap pertama dalam kompilasi.
  • 📝 Token adalah bagian-bagian dari kode sumber yang dihasilkan dari analisis leksikal.
  • 📜 Ada lima jenis token: identifier, keywords, operators, literals, dan delimiters.
  • 🔄 Scanner membaca kode sumber karakter demi karakter.
  • ❌ Spasi dan komentar dihapus untuk memudahkan parsing.

Chronologie

  • 00:00:00 - 00:05:00

    Dalam pertemuan ini, dibahas mengenai analisis leksikal atau scanner yang merupakan tahap pertama dari proses kompilasi. Analisis leksikal bertugas memecah kode program menjadi bagian yang disebut token agar proses parsing menjadi lebih mudah. Token adalah entitas paling rendah dalam diagram sintaks. Ada beberapa jenis token, antara lain identifier, kata kunci, operator, literal, dan pembatas. Setiap token memiliki fungsi dan peran tertentu dalam proses analisis leksikal.

  • 00:05:00 - 00:13:47

    Adapun pemisah dan pembatas dalam program dibagi menjadi dua, yaitu yang berpengaruh (seperti titik koma) dan yang tidak berpengaruh (seperti whitespace). Contoh analisis leksikal dijelaskan melalui pengenalan dan pembacaan kode sumber, yang menghasilkan token dan memungkinkan sintaks analyzer untuk bekerja. Proses ini melibatkan pembuangan spasi dan komentar, serta penanganan kesalahan hingga semua karakter selesai diproses sebelum melanjutkan ke tahap parsing.

Carte mentale

Vidéo Q&R

  • Apa itu analisis leksikal?

    Analisis leksikal adalah tahap pertama dalam proses kompilasi yang memecah kode sumber menjadi token.

  • Apa saja jenis-jenis token dalam analisis leksikal?

    Ada lima jenis token: identifier, keywords, operators, literals, dan delimiters.

  • Apa fungsi dari scanner dalam analisis leksikal?

    Scanner membaca kode sumber karakter demi karakter dan mengubahnya menjadi token.

  • Mengapa penting untuk menghapus spasi dan komentar?

    Menghapus spasi dan komentar penting agar proses parsing tidak terganggu.

  • Apa output dari analisis leksikal?

    Output dari analisis leksikal adalah token yang memudahkan proses parsing.

Voir plus de résumés vidéo

Accédez instantanément à des résumés vidéo gratuits sur YouTube grâce à l'IA !
Sous-titres
id
Défilement automatique:
  • 00:00:00
    Halo assalamualaikum warahmatullah
  • 00:00:02
    wabarakatuh dalam pertemuan kali ini
  • 00:00:04
    kita akan membahas mengenai Analisis
  • 00:00:07
    leksikal atau biasa disebut sebagai
  • 00:00:10
    scanner ini adalah tahapan-tahapan dari
  • 00:00:14
    proses kompresi dan dimana analisis
  • 00:00:16
    leksikal itu adalah tahapan pertama yang
  • 00:00:19
    dilakukan oleh proses kompilasi Nah di
  • 00:00:24
    sini untuk analisa leksikal atau scanner
  • 00:00:27
    itu merupakan antarmuka antar kode
  • 00:00:30
    program sumber atau first program dan
  • 00:00:34
    analisa sintaks atau juga pasar nah
  • 00:00:38
    dimana disini untuk pengertiannya Itu
  • 00:00:40
    adalah sebuah proses yang mendahului
  • 00:00:44
    parsing di dalam sebuah rangkaian
  • 00:00:47
    karakter nah Berarti outputnya itu harus
  • 00:00:51
    mudah untuk dibaca oleh si partsim nah
  • 00:00:56
    disini scanner sendiri seperti
  • 00:01:00
    Sebelumnya saya Japan ia akan melakukan
  • 00:01:02
    pemeriksaan karakter per karakter pada
  • 00:01:06
    teks masukkan ini Mana dia akan memecah
  • 00:01:10
    sumber program menjadi bagian-bagian
  • 00:01:12
    yang kita sebut sebagai token kemudian
  • 00:01:17
    proses parsing akan lebih mudah
  • 00:01:20
    dilakukan bila inputnya itu sudah dalam
  • 00:01:23
    bentuk token Nah tadi Seperti yang saya
  • 00:01:27
    jelaskan juga ready output dari analisis
  • 00:01:30
    leksikal itu harus memudahkan dalam
  • 00:01:32
    proses selanjutnya atau proses asing Nah
  • 00:01:37
    di sini untuk model dasar untuk
  • 00:01:40
    membentuk suatu analisis leksikal Itu
  • 00:01:43
    adalah sebuah Phillip state automata kau
  • 00:01:47
    sebuah FFA nah inget-inget lagi nih di
  • 00:01:52
    mata kuliah teori bahasa dan automata
  • 00:01:56
    new untuk SSH sendiri juga dapat
  • 00:01:59
    denganmu
  • 00:02:00
    yang digunakan untuk mengenali
  • 00:02:01
    konstruksi bahasa yang digambarkan
  • 00:02:04
    menggunakan bahasa reguler jadi ingat
  • 00:02:09
    lagi selain epsa itu juga adalah
  • 00:02:11
    mengenai ekspresi reguler nah kemarin
  • 00:02:15
    pundi teori bahasa dan automata kita
  • 00:02:18
    membahas mengenai konversi dari evessa
  • 00:02:23
    ekspresi reguler dan juga sebaliknya
  • 00:02:27
    yo yo jadi disini proses analisis
  • 00:02:29
    leksikal itu dia akan melakukan
  • 00:02:33
    pemeriksaan karakter per karakter pada
  • 00:02:36
    sebuah teks masukkan dan dia akan
  • 00:02:39
    memecahnya menjadi bagian-bagian yang
  • 00:02:42
    kita sebut sebagai token nah kemudian
  • 00:02:45
    kita akan lihat disini untuk tokennya
  • 00:02:48
    sendiri Itu adalah sebuah level entitas
  • 00:02:51
    yang paling rendah di dalam diagram
  • 00:02:53
    sintaks dan untuk jenis-jenis token
  • 00:02:57
    sendiri disini ini ada lima Yang pertama
  • 00:03:00
    itu adalah identifier nah contohnya itu
  • 00:03:03
    bisa variabel atau function name
  • 00:03:07
    Hai nih untuk yang kedua itu adalah
  • 00:03:09
    rewards atau ini adalah kata-kata kunci
  • 00:03:12
    yang ada pada bahasa program tersebut
  • 00:03:15
    Dena kata kunci disini ini bisa while
  • 00:03:18
    its function metal untuk di Pa ini bisa
  • 00:03:21
    bikin bisa Ende nya neh tapi di beberapa
  • 00:03:26
    penjelasan untuk identifier dan keyboard
  • 00:03:29
    ini dijadikan satu token nih disebut aja
  • 00:03:33
    sebagai identifier eh Kemudian untuk
  • 00:03:40
    token yang ketiga itu adalah operator
  • 00:03:44
    ini bisa dalam bentuk operator
  • 00:03:46
    aritmatika dan lain sebagainya untuk
  • 00:03:48
    Operator ini misal seperti penjumlahan
  • 00:03:51
    pengurangan perkalian dan juga lain
  • 00:03:54
    sebagainya Kemudian untuk yang keempat
  • 00:03:57
    ini bisa kita sebut juga sebagai literal
  • 00:04:02
    atau karena dia merupakan sebuah nilai
  • 00:04:05
    konstanta a
  • 00:04:07
    Hai ini biasa juga disebut sebagai
  • 00:04:09
    konstanta jadi ini bisa disebut sebagai
  • 00:04:13
    trail atau bisa juga disebut sebagai
  • 00:04:16
    konstanta karena yang masuk ke dalam
  • 00:04:20
    lebih terang atau omsan TNI kita adalah
  • 00:04:23
    semua nilai konstanta atau nilai-nilai
  • 00:04:26
    yang tidak dapat berubah bentuknya ini
  • 00:04:30
    beda halnya kalau dengan variabel Eh kau
  • 00:04:34
    Saya punya X = 5x disini Ini adalah
  • 00:04:39
    sebuah variabel karena nilainya akan
  • 00:04:43
    mengikuti iplay di sebelah kanannya tapi
  • 00:04:48
    untuk lima Ini dia tidak akan berubah
  • 00:04:50
    ini kita sebut sebagai konstanta untuk
  • 00:04:56
    yang terakhir tokennya itu kita sebut
  • 00:04:58
    sebagai function atau juga sebagai
  • 00:05:02
    pemisah atau pembatas pada program nah
  • 00:05:06
    tapi
  • 00:05:07
    ini nanti akan dibagi lagi untuk memisah
  • 00:05:10
    dan pembatas ya di sini ada pemisahan
  • 00:05:12
    atau pembatas yang berpengaruh pada
  • 00:05:15
    program dan juga ada pemisah atau
  • 00:05:21
    pembatas yang tidak berpengaruh eh untuk
  • 00:05:28
    yang berpengaruh ini misal seperti titik
  • 00:05:31
    koma kemudian titik dua koma dan lain
  • 00:05:34
    sebagainya Intinya kalau tidak ada
  • 00:05:37
    pemisah tersebut programnya akan jadi
  • 00:05:41
    kacau Nah kalau untuk yang tidak
  • 00:05:43
    berpengaruh ini kita sebut juga dia
  • 00:05:46
    sebagai whitespace Nah di sini untuk
  • 00:05:51
    pemisahan pembatas whitespace ini misal
  • 00:05:54
    seperti spasi atau juga enter dan lain
  • 00:06:01
    sebagainya intinya dia tidak akan
  • 00:06:03
    berpengaruh terhadap program
  • 00:06:07
    Mbok kimia contohnya nih saya menuliskan
  • 00:06:11
    X = Prima dengan x ini ada spasi
  • 00:06:17
    kemudian sama dengan ini spasi lagi
  • 00:06:21
    Kemudian biru limanya nah ini hasilnya
  • 00:06:25
    pada program akan sama Nah tapi di sini
  • 00:06:31
    ada spasi spasi disini dia tidak akan
  • 00:06:35
    berpengaruh pada program secara
  • 00:06:38
    keseluruhan nah sebenarnya untuk
  • 00:06:41
    WordPress ini bisa kita gunakan untuk
  • 00:06:43
    visualisasi kejutannya misal kita
  • 00:06:48
    menggambarkan program x = 5 titik koma
  • 00:06:52
    kemudian di sini ada bahasa program lain
  • 00:06:55
    kemudian titik koma dan lain sebagainya
  • 00:06:57
    ini bisa kita Tuliskan tanya dalam satu
  • 00:07:01
    baris
  • 00:07:02
    Hai nah tapi saat Adek error yang
  • 00:07:08
    menyatakan kesalahan pada baris tersebut
  • 00:07:10
    kita akan kesulitan mencarinya beda
  • 00:07:15
    halnya kalau kita menyusunnya x = 5
  • 00:07:19
    menyesal titik koma di sini kita enter
  • 00:07:23
    berikan ada baris kedua kemudian disini
  • 00:07:27
    kita enter dan seterusnya nah saat ada
  • 00:07:30
    error misal diberi seberapa kita lebih
  • 00:07:33
    mudah untuk menentukannya edan untuk
  • 00:07:36
    action sendiri ini biasa juga dikenal
  • 00:07:39
    sebagai delimiter Nah di sini ada lima
  • 00:07:46
    jenis pekan Gimana ada identifier reward
  • 00:07:49
    operator literal dan function atau bisa
  • 00:07:54
    juga kita kenal untuk identifier dan
  • 00:07:56
    tipe word itu kita sebut sebagai
  • 00:07:58
    identifier sebagai
  • 00:08:02
    akhir-akhir kemudian operator tetap
  • 00:08:05
    sebagai operator Kemudian untuk l halnya
  • 00:08:10
    kita kenalnya sebagai konstanta dan yang
  • 00:08:14
    keempat pangcu ion atau kita sebut
  • 00:08:16
    sebagai delimiter jadi yang
  • 00:08:19
    menyebutkannya menjadi lima atau juga
  • 00:08:22
    menjadi empat Iya pasti kita harus tahu
  • 00:08:26
    dulu mana saja yang masuk kedalam
  • 00:08:29
    token-token tersebut misal di sini kita
  • 00:08:33
    coba untuk contohnya di sini ada sebuah
  • 00:08:38
    kedepan program untuk follower nah
  • 00:08:42
    Berarti tadi kita gunakan untuk yang 5
  • 00:08:44
    aja Nah untuk identifier ini berarti
  • 00:08:47
    tadi adalah variabel-variabel ini adalah
  • 00:08:52
    yang bukan sebuah keyboard ini sini Kita
  • 00:08:56
    akan punya identifier yang pertama itu
  • 00:08:58
    adalah Hello where are
  • 00:09:02
    Hai application kemudian mana lagi Kita
  • 00:09:06
    akan punya itu adalah tes Java
  • 00:09:14
    identifier Kemudian untuk keyboard
  • 00:09:22
    kemudian ada juga public class kemudian
  • 00:09:29
    Static void mantring ton ART system.out
  • 00:09:42
    dan krim LN Kemudian untuk operatornya
  • 00:09:47
    ya di sini untuk operatornya Iya dedek
  • 00:09:51
    yang kita gunakan untuk litrol atau
  • 00:09:55
    konstanta dari sini adalah yang Hello
  • 00:10:00
    Word
  • 00:10:02
    Nyai dia tidak akan berubah yakni tukang
  • 00:10:06
    situation atau delimiter ini kita akan
  • 00:10:10
    punya titik koma kemudian buka kurung
  • 00:10:14
    kurawal ada juga tutup kurung kurawal
  • 00:10:18
    kurung siku kemudian ada juga detik dan
  • 00:10:24
    ada juga double apostrof kiri sini
  • 00:10:28
    berarti ini adalah salah satu contoh
  • 00:10:30
    untuk kita melakukan analisis leksikal
  • 00:10:33
    dimana kita akan menscan karakter per
  • 00:10:36
    karakter dan kita ubah dia ke dalam
  • 00:10:40
    bentuk token-token disini contoh yang
  • 00:10:44
    lain misalnya program ini adalah yang
  • 00:10:50
    bisa berubah kita punya itu adalah
  • 00:10:52
    latihan dan juga eks Kemudian untuk di
  • 00:10:58
    Word ini ada program yg
  • 00:11:02
    kemudian far kemudian integer kemudian
  • 00:11:10
    bikin kemudian juga ada m dan untuk
  • 00:11:17
    operatornya ini dia titik dua atau titik
  • 00:11:21
    dua sama dengan dan juga plus Kemudian
  • 00:11:26
    untuk literal atau konstanta ini kita
  • 00:11:30
    punya adalah satu dan atau Pangestu
  • 00:11:35
    izinnya ini kita punya ada titik koma
  • 00:11:38
    ada juga sebenernya spasi ada juga enter
  • 00:11:44
    dan juga ada titik yang di sebelumnya
  • 00:11:48
    pun kalau kita mau memasukkan spasi dan
  • 00:11:51
    enter itu tidak masalah nah disini kita
  • 00:11:56
    akan lihat gimana untuk fungsi scanner
  • 00:11:58
    sendiri yang pertama itu adalah
  • 00:12:00
    melakukan pembacaan kode sumber dengan
  • 00:12:02
    Bruno karakter demi karakter Kemudian
  • 00:12:06
    yang kedua itu adalah mengenali besaran
  • 00:12:08
    leksikalnya kemudian akan
  • 00:12:11
    mentransformasi menjadi sebuah tekan dan
  • 00:12:13
    menentukan jenis token nyaman kemudian
  • 00:12:17
    yang selanjutnya adalah akan mengirimkan
  • 00:12:19
    token nah Disini yang kelima dia akan
  • 00:12:22
    membuang Blank dan komentar di dalam
  • 00:12:24
    program jadi saat kita proses
  • 00:12:28
    kompilasinya si spasi si enter dan lain
  • 00:12:34
    sebagainya itu tidak akan kita lanjutkan
  • 00:12:37
    ke dalam proses parsing jadi itu dia
  • 00:12:42
    akan kita masukkan ke dalam white dan
  • 00:12:45
    itu akan kita hilangkan Kemudian untuk
  • 00:12:50
    menangani kesalahan dan yang terakhir
  • 00:12:52
    beberapa scene nya juga biasa memasukkan
  • 00:12:55
    simbol kedalam tabel simbol C Kemudian
  • 00:12:58
    untuk jalannya analisis leksikal sendiri
  • 00:13:01
    tuturnya
  • 00:13:02
    Hai dari sebuah sospro G dia akan masuk
  • 00:13:05
    kedalam sebuah leksikal analyzer
  • 00:13:08
    kemudian dia akan Ubah menjadi sebuah
  • 00:13:11
    token dan masuk ke dalam sintaks
  • 00:13:13
    analyzer jika belum semua karakter itu
  • 00:13:18
    scam Iya singkat analyzer akan
  • 00:13:23
    mengembalikan lagi ke flexicare analyzer
  • 00:13:26
    sampai tokennya selesai nah jika semua
  • 00:13:30
    pertanyaan selesai atau karakternya
  • 00:13:32
    selesai semua baru dia akan masuk
  • 00:13:35
    kedalam sebuah parsing Dri yg Mungkin
  • 00:13:39
    aja penjelasan mengenai Analisis
  • 00:13:41
    leksikal silahkan dipelajari
  • 00:13:44
    Wassalamualaikum warahmatullah
  • 00:13:46
    wabarakatuh
Tags
  • analisis leksikal
  • scanner
  • token
  • kompilasi
  • parsing
  • identifier
  • keywords
  • operators
  • literals
  • delimiters