Rabu, 14 September 2016

Bahasa Pemograman

Bahasa pemrograman
Bahasa pemrograman, atau sering diistilahkan juga dengan bahasa komputer atau bahasa pemrograman komputer, adalah instruksi standar untuk memerintah komputer. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Menurut tingkat kedekatannya dengan mesin komputer, bahasa pemrograman terdiri dari:
Bahasa Mesin, yaitu memberikan perintah kepada komputer dengan memakai kode bahasa biner, contohnya 01100101100110
Bahasa Tingkat Rendah, atau dikenal dengan istilah bahasa rakitan (bah.Inggris Assembly), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode mnemonic), contohnya kode_mesin|MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia (lihat contoh Bahasa Tingkat Tinggi di bawah) dan instruksi yang bersifat simbolik, contohnya {, }, ?, <<, >>, &&, ||, dsb.
Bahasa Tingkat Tinggi, yaitu bahasa komputer yang memakai instruksi berasal dari unsur kata-kata bahasa manusia, contohnya begin, end, if, for, while, and, or, dsb. Komputer dapat mengerti bahasa manusia itu diperlukan program compiler atau interpreter.
Sebagian besar bahasa pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang digolongkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa Tingkat Rendah.
Pengertian Bahasa Pemrograman
Bahasa Pemrograman (programming language) adalah sebuah instruksi standar untuk memerintah komputer agar mempunyai fungsi tertentu. Bahasa pemrograman ini merupakan suatu himpunan dari aturan sintaks dan semantik yang dipakai untuk mendefinisikan program komputer. Bahasa ini memungkinkan seorang programmer dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan diambil dalam berbagai situasi.
Fungsi
Fungsi bahasa pemrograman yaitu memerintah komputer untuk mengolah data sesuai dengan alur berpikir yang kita inginkan. Keluaran dari bahasa pemrograman tersebut berupa program/aplikasi. Contohnya adalah program yang digunakan oleh kasir di mal-mal atau swalayan, penggunaan lampu lalu lintas di jalan raya, dll.

Bahasa Pemrograman yang kita kenal ada banyak sekali di belahan dunia, tentang ilmu komputer dan teknologi dewasa ini. Perkembangannya mengikuti tingginya inovasi yang dilakukan dalam dunia teknologi. Contoh bahasa pemrograman yang kita kenal antara lain adalah untuk membuat aplikasi game, antivirus, web, dan teknologi lainnya.
Bahasa pemrograman komputer yang kita kenal antara lain adalah Java, Visual Basic, C++, C, Cobol, PHP, .Net, dan ratusan bahasa lainnya. Namun tentu saja kebutuhan bahasa ini harus disesuaikan dengan fungsi dan perangkat yang menggunakannya.
Secara umum bahasa pemrograman terbagi menjadi 4 kelompok, yaitu :
Object Oriented Language (Visual dBase, Visual FoxPro, Delphi, Visual C)
High Level Language (seperti Pascal dan Basic)
Middle Level Language (seperti bahasa C), dan
Low Level Language (seperti bahasa Assembly)
Tingkatan
Bahasa Tingkat Tinggi[sunting Bahasa pemrograman masuk tingkat ini karena bahasa tersebut mendekati bahasa manusia. Contohnya bahasa Basic, Visual Basic, Pascal, Java, PHP.
Bahasa Tingkat Menengah
Disebut tingkat menengah karena bisa masuk ke dalam bahasa tingkat tinggi maupun rendah. Contohnya bahasa C.
Bahasa Tingkat Rendah
Bahasa pemrograman masuk tingkat ini karena bahasanya masih jauh dari bahasa manusia. Contohnya bahasa Assembly.

Generasi
Sedangkan menurut generasinya, bahasa pemrograman digolongkan menjadi 4 generasi:
Generasi ke-1: machine language
Generasi ke-2: assembly language: Assembler
Generasi ke-3: high level programming language, contoh: C dan Pascal
Generasi ke-4: 4 GL (fourth-generation language), contoh: SQL
Generasi ke-5: Programming Language Based Object Oriented & Web Development
Proses Pembuatan Program
Proses pembuatan program yaitu kita menulis kode sumber pada teks editor misalnya notepad kemudian mengubahnya menjadi bahasa mesin yang bisa dieksekusi oleh CPU. Proses pengubahan kode sumber (source code) menjadi bahasa mesin (machine language) ini terdiri dari dua macam yaitu kompilasi dan interpretasi.
Kompilasi
Dalam proses kompilasi semua kode sumber dibaca terlebih dahulu dan jika tidak ada kesalahan dalam menulis program maka akan dibentuk kode mesinnya sehingga program bisa dijalankan. Program yang melakukan tugas ini disebut Compiler. Program hasil kompilasi akan berbentuk executable. Program bisa langsung dijalankan tanpa harus memiliki Compiler di komputer yang menjalankan program tersebut. Bahasa yang menggunakan teknik kompilasi misalnya bahasa C, C++, Pascal, Assembly dan masih banyak lagi.
Interpretasi (Interpretation)
 Bahasa yang menggunakan teknik interpretasi akan membaca kode sumber perbaris dan dieksekusi perbaris. Jika ditemukan kesalahan dalam penulisan program maka di baris kesalahan itulah program akan dihentikan. Program yang melakukan tugas ini disebut Interpreter. Pada teknik interpretasi tidak ada akan dihasilkan program standalone, artinya untuk menjalankan program kita harus mempunyai kode sumbernya sekaligus interpreter program tersebut. Bahasa yang menggunakan teknik interpretasi misalnya bahasa Perl, Python, Ruby dan masih banyak lagi.
Kompilasi Sekaligus Interpretasi
Ada juga bahasa pemrograman yang menghasilkan programnya dengan teknik kompilasi sekaligus interpretasi. Misalnya bahasa java. Dalam pembuatan program java kode sumber diubah menjadi bytecode. Meskipun nampak seperti bahasa mesin namun ini bukanlah bahasa mesin dan tidak executable. Untuk menjalankan bytecode tersebut kita membutuhkan Java Runtime Environment (JRE) yang bertugas sebagai interpreter sehingga menghasilkan program dari bytecode tersebut.
Meskipun setiap bahasa pemrograman dibuat untuk membuat program namun setiap bahasa dibuat dengan tujuan dan fungsi yang berbeda-beda. Misalnya untuk membuat driver hardware kita tidak bisa menggunakan bahasa Visual Basic. Untuk membuat program berbasis sistem seperti driver kita bisa gunakan bahasa C atau Assembly. Contohnya sistem operasi linux yang open source. Jika anda melihat kode sumbernya anda akan menemukan bahwa linux dibuat menggunakan bahasa C. Sedangkan untuk pemrograman desktop kita bisa menggunakan Visual Basic. Bahasa tersebut dirancang oleh Microsoft untuk pemrograman desktop dengan tampilan GUI yang memukau.
Bahasa pemrograman yang umum digunaka
HTML / CSS 
banyak yang tidak menggaggap ini bagian dari bahasa pemprograman, tapi jika di lihat dari mana program web berasal maka bisa di pastikan html/CSS adalah dasar dari itu semua,jadi jika anda ingin belajar membuat web statis terebih dahulu anda pasti akan belajar HTML/CSS dasar.
JavaScript 
JavaScript adalah cara yang sangat populer untuk menambahkan fitur interaktif untuk halaman web dan aplikasi . Ini adalah salah satu bahasa yang paling mudah untuk dipelajari dan dapat digunakan untuk apa pun seperti memvalidasi data formulir untuk mengembangkan permainan , menjadikannya pilihan yang sangat populer untuk pemula .
PHP 
bahasa program yang digunakan terutama untuk mengembangkan halaman web dinamis . Ini berarti bahwa daripada menciptakan sebuah file terpisah penuh kode untuk setiap halaman situs , Anda dapat menulis seperangkat aturan untuk mengakses dan menampilkan informasi dari database yang kemudian dapat membuat halaman dan memanggil mereka ketika mereka dibutuhkan .
C + + 
. Dikembangkan untuk menambahkan fitur berorientasi objek dengan bahasa C , dengan penambahan kelas dan fitur lainnya . C + + yang sekarang banyak digunakan dengan berbagai besar aplikasi . Belajar C + + juga memiliki keuntungan yaitu lebih mudah untuk mempelajari bahasa C lainnya yaitu C # dan C. Semua bahasa C umumnya dipandang sebagai bahasa pemprograman tingkat menengah .
C # 
Diucapkan C Sharp , bahasa ini diciptakan oleh Microsoft dalam kerangka NET . . Jika Anda ingin menulis aplikasi jendela , atau terutama jika Anda ingin menulis kode untuk perangkat lunak desktop , ini sangat penting. Ini adalah tujuan OOP umum yang berbagi banyak kesamaan dengan bahasa C tua.
ini adalah versi C yang digunakan oleh sistem operasi Apple serta sejumlah kecil aplikasi lain . Jika Anda ingin mengkhususkan diri dalam menulis kode untuk produk Apple maka ini adalah program yang harus anda kuasai.
Python 
Sangat populer dalam komunitas ilmiah dan akademik , tetapi juga telah digunakan untuk membuat situs web populer seperti Pinterest . Hal ini relatif mudah untuk belajar dibandingkan dengan sesuatu seperti C atau turunannya , namun masih sangat fleksibel dalam hal apa yang dapat Anda lakukan dengan itu .
Java 
Digunakan oleh Google sebagai bagian integral dari sistem operasi Android , dan oleh pengembang independen untuk membuat aplikasi android ( serta kegunaan lain ) . Java diciptakan dengan " tulis sekali , jalankan di mana saja " ( WORA ) pendekatan untuk memudahkan kode yang ditulis pada satu mesin untuk berjalan di lain mesin.
Ruby 
Ini adalah OOP murni populer dari Jepang. Bahasa pemrograman open source dinamis, mudah dimengerti dan produktif. Sintaks Ruby elegan, natural, mudah dibaca dan ditulis.
Visual Basic 
Berasal dari ' BASIC ' , yang sangat populer di hari-hari awal komputasi personal , Visual Basic ( VB ) memungkinkan program sederhana yang akan dibuat dengan cepat dan mudah, sementara juga memungkinkan untuk coding yang lebih kompleks.
Daftar Bahasa Pemrograman
Berikut ini adalah daftar bahasa pemrograman komputer.
Aro
Ada
ALGOL
Applescript
Assembly
BASIC:
ASP
BASIC
COMAL
Visual Basic
Visual Basic for Applications
VBScript
Batch (MS-DOS)
COBOL
UNIX shell script:
Bourne shell (sh) script
Bourne-Again shell (bash) script
Korn shell (ksh) script
C shell (csh) script
C:
C++
C#
Visual C++
ColdFusion
dBase dkk.:
Clipper
Foxbase
Visual FoxPro
Eiffel
Fortran
Go
Haskell
Java
JavaScript
JSP
Lisp
Logo
Pascal
Delphi
Perl
Prolog
Python
PHP
Pike
R
REXX
REBOL
RPG
Ruby
Simula
Smalltalk
Scheme
SQL
Bahasa Mesin Komputer
Kode mesin atau bahasa mesin adalah sistem instruksi dan data yang dijalankan langsung oleh komputer central processing unit. Kode mesin dapat dianggap sebagai primitif (dan rumit) atau sebagai bahasa pemrograman tingkat terendah representasi dari disusun dan / atau program komputer rakitan. Program dalam menafsirkan bahasa  tidak diwakili oleh kode mesin tetapi, walaupun penerjemah mereka (yang dapat dilihat sebagai sebuah prosesor melaksanakan program tingkat yang lebih tinggi) sering terjadi. Kode mesin kadang-kadang disebut kode asli ketika mengacu pada platform-bagian dari bahasa tergantung fitur atau perpustakaan. kode Mesin tidak boleh disamakan dengan apa yang disebut “bytecode”, yang dilaksanakan oleh seorang juru bahasa.
Kode Mesin Instruksi
Setiap prosesor atau keluarga prosesor memiliki set instruksi kode mesin. Instruksi pola bit yang oleh desain fisik sesuai dengan perintah yang berbeda ke mesin. Set instruksi demikian khusus untuk kelas prosesor menggunakan (banyak) arsitektur yang sama. Penerus atau derivatif desain prosesor sering mencakup semua instruksi dari pendahulunya dan dapat menambah petunjuk tambahan. Kadang-kadang desain pengganti akan menghentikan atau mengubah arti dari beberapa kode instruksi (biasanya karena dibutuhkan untuk keperluan baru), kode yang mempengaruhi kompatibilitas sampai batas tertentu, bahkan hampir sepenuhnya kompatibel dengan prosesor mungkin akan menampilkan perilaku yang sedikit berbeda untuk beberapa instruksi tetapi ini jarang yang masalah. Sistem mungkin juga berbeda dalam rincian lainnya, seperti pengaturan memori, sistem operasi, atau perangkat periferal; karena biasanya program bergantung pada faktor-faktor seperti, sistem yang berbeda akan biasanya tidak menjalankan kode mesin yang sama, bahkan ketika jenis prosesor yang sama digunakan.
Sebuah set instruksi kode mesin mungkin memiliki semua instruksi yang sama panjang, atau hal itu mungkin karena panjang variabel-instruksi. Bagaimana pola diorganisir sangat bervariasi dengan arsitektur tertentu dan sering juga dengan jenis instruksi. Sebagian besar instruksi memiliki satu atau lebih opcode bidang yang menentukan jenis instruksi dasar (seperti aritmatika, logis, melompat, dll) dan operasi sebenarnya (seperti menambah atau membandingkan) dan bidang lain yang mungkin memberikan jenis operand (s) , mode pengalamatan (s), pengalamatan offset (s) atau indeks, atau nilai aktual itu sendiri (Operand konstan seperti yang terdapat dalam sebuah instruksi disebut immediates).
Program
Sebuah program komputer adalah suatu urutan instruksi yang dijalankan oleh CPU. Sementara prosesor mengeksekusi instruksi sederhana satu demi satu, prosesor superscalar mampu menjalankan beberapa instruksi sekaligus. Program aliran mungkin dipengaruhi oleh khusus ‘melompat’ instruksi yang mentransfer eksekusi ke instruksi lain dari yang di bawah satu. Lompatan bersyarat diambil (eksekusi berlanjut pada alamat lain) atau tidak (eksekusi berlanjut pada instruksi berikutnya) tergantung pada beberapa kondisi.
Hubungan terfokus
Dalam beberapa arsitektur komputer, kode mesin ini diterapkan oleh lapisan yang lebih mendasar dari program yang disebut microprograms, menyediakan antarmuka bahasa mesin Common melintasi sebuah garis atau keluarga model yang berbeda dengan komputer yang mendasari dataflows sangat berbeda. Hal ini dilakukan untuk memfasilitasi port dari program bahasa mesin antara model yang berbeda. Contoh dari penggunaan ini adalah IBM System/360 komputer keluarga dan para penerus mereka. Dengan jalan dataflow lebar dari 8 bit dengan 64 bit dan seterusnya, mereka tetap menyajikan sebuah arsitektur umum pada tingkat bahasa mesin di seluruh baris.
Menggunakan lapisan terfokus untuk menerapkan sebuah emulator memungkinkan komputer untuk menyajikan arsitektur komputer yang sama sekali berbeda. Baris System/360 ini digunakan untuk mengizinkan program port dari mesin IBM sebelumnya untuk keluarga baru komputer, misalnya IBM 1401/1440/1460 emulator pada IBM S/360 model 40.
Bahasa rakitan (Assembly)
Bahasa rakitan atau lebih umum dikenal sebagai Assembly adalah bahasa pemrograman tingkat rendah yang digunakan dalam pemrograman komputer, mikroprosesor, pengendali mikro, dan perangkat lainnya yang dapat diprogram. Bahasa rakitan mengimplementasikan representasi atas kode mesin dalam bentuk simbol-simbol yang secara relatif lebih dapat dipahami oleh manusia. Berbeda halnya dengan bahasa-bahasa tingkat tinggi yang berlaku umum, bahasa rakitan biasanya mendukung secara spesifik untuk suatu ataupun beberapa jenis arsitektur komputer tertentu. Dengan demikian, portabilitas bahasa rakitan tidak dapat menandingi bahasa-bahasa lainnya yang merupakan bahasa pemrograman tingkat tinggi. Namun demikian, bahasa rakitan memungkinkan programmer memanfaatkan secara penuh kemampuan suatu perangkat keras tertentu yang biasanya tidak dapat ataupun terbatas bila dibuat dengan menggunakan bahasa pemrograman tingkat tinggi.
Pada bahasa rakitan, programmer umumnya menggunakan sebuah program utilitas yang disebut sebagai perakit (bahasa Inggris: assembler) yang digunakan untuk menerjemahkan kode dalam bahasa rakitan tersebut ke dalam kode mesin untuk perangkat keras tertentu. Sebuah perintah dalam bahasa rakitan biasanya akan diterjemahkan menjadi sebuah instruksi mnemonic dalam kode mesin, berbeda halnya dengan kompiler pada bahasa pemrograman tingkat tinggi yang menerjemahkan sebuah perintah menjadi sejumlah instruksi dalam kode mesin.
Beberapa perangkat lunak bahasa rakitan terkenal biasanya menyediakan tambahan fitur untuk memfasilitasi proses pengembangan program, mengontrol proses perakitan, dan alat bantupengawakutuan (debugging).
Dasar alasan menggunakan bahasa rakitan
Ada beberapa dasar alasan menggunakan bahasa rakitan dilihat dari sudut pandang penggunaannya:
Bahasa rakitan dibandingkan dengan bahasa mesin, bahasa rakitan merupakan representasi atas bahasa mesin yang dirancang agar lebih mudah dipahami oleh manusia. Dengan menggunakan bahasa rakitan, seorang programmer dapat lebih mudah mengingat instruksi-instruksi dengan menggunakan simbol yang lebih dimengerti dibandingkan bila menggunakan simbol mnemonic kode mesin secara langsung. Demikian halnya pula dengan mekanisme lompatan yang umum terdapat dalam bahasa mesin yang biasanya menggunakan alamat memori, programmer dapat lebih mudah menggunakan fasilitas pelabelan yang terdapat pada bahasa rakitan dibandingkan menggunakan alamat memori tertentu dalam kode mnemonic.
Bahasa rakitan dibandingkan dengan bahasa tingkat tinggi, bahasa rakitan memungkinkan programmer untuk mengontrol serta memanfaatkan secara penuh kapabilitas yang terdapat atas suatu perangkat keras, berbeda halnya dengan bahasa pemrograman tingkat tinggi yang memiliki banyak keterbatasan dalam pemanfaatan secara penuh suatu perangkat keras. Bahasa rakitan menjanjikan tingkat unjuk kerja yang maksimum karena sifatnya yang menerjemahkan secara langsung instruksi rakitan menjadi instruksi mesin, berbeda halnya dengan bahasa pemrograman tingkat tinggi yang biasanya menerjemahkan sebuah instruksi menjadi sejumlah kode mesin.
Representasi kode mesin
Bahasa rakitan menerjemahkan sebuah instruksi rakitan menjadi instruksi mesin, umumnya mekanisme penerjemahan ini bersifat 1-1, karenanya dapat disebutkan pula bahwa setiap instruksi dalam bahasa rakitan merupakan representasi dari instruksi kode mesin.
Sebagai contoh, berikut adalah instruksi yang digunakan pada prosesor x86 untuk memindahkan nilai 97 sebesar 8-bit ke dalam register prosesor AL. Kode biner atas instruksi pemindahan adalah 10110 diikuti dengan 3-bit pengenal atas register yang akan digunakan. Pengenal atas register AL dalam hal ini adalah 000. Kemudian, nilai 97 dalam kode biner adalah 01100001, sehingga kode mesin yang digunakan untuk memindahkannya adalah sebagai berikut :
10110000 01100001
Kode biner ini dapat diubah agar lebih mudah dibaca manusia dengan mengkonversikannya dalam bilangan heksadesimal sebagai berikut:
B0 61
Pada instruksi diatas, B0 berarti: ‘Pindahkan nilai berikut ke register AL’, dan 61 adalah representasi bilangan heksadesimal untuk nilai 01100001, atau 97 dalam bilangan desimal. Bahasa rakitan untuk prosesor Intel menyediakan simbol mnemonic MOV (yang merupakan singkatan dari move) untuk instruksi serupa sehingga kode mesin sebelumnya dapat ditulis dalam bahasa rakitan sebagai berikut:
Bahasa rakitan memungkinkan programmer menambahkan komentar atas setiap instruksi yang ditulis untuk mempermudah pembacaan dan lebih mudah pemahaman.
bahasan pemrograman tingkat menengah
seperti halnya bahasa pemrograman tinggkat tinggi, bedanya bahasa ini memakai simbol-simbol seperti {, }, ?, <<, >>, &&, ||, dsb.
Bahasa pemrograman tingkat tinggi
Bahasa pemrograman tingkat tinggi adalah sebuah bahasa pemrograman yang jika dibandingkan dengan bahasa pemrograman tingkat rendah memiliki sifat lebih mudah digunakan, lebih portabel (mudah diadaptasikan) antar-platform, dan lebih abstrak. Bahasa-bahasa semacam ini sering melakukan abstraksi terhadap beberapa operasi CPU, seperti halnya pengaksesan memori.
Fitur-fitur Bahasa pemrograman tingkat tinggi
Istilah “bahasa pemrograman tingkat tinggi” tidak serta merta menjadikan bahasa tersebut lebih baik dibandingkan dengan bahasa pemrograman tingkat rendah. Akan tetapi, maksud dari “tingkat tinggi” di sini merujuk kepada abstraksi yang lebih tinggi dibandingkan dengan bahasa tingkat rendah terhadap bahasa mesin. Dibandingkan dengan harus berurusan dengan register, alamat memori dan stack-stack panggilan, bahasa pemrograman tingkat tinggi akan berurusan dengan variabel, larik, dan ekspresi aritmetika atau aljabar Boolean. Selain itu, tidak seperti bahasa rakitan, bahasa tingkat tinggi tidak memiliki opcode atau kode operasi yang dapat secara langsung menjadikan bahasa tersebut menjadi kode mesin. Fitur lainnya seperti rutin-rutin penangananstring, fitur pemrograman berorientasi objek, input/output terhadap berkas juga terdapat di dalam jenis bahasa ini.
Secara umum, bahasa tingkat tinggi akan membuat pemrograman komputer yang kompleks menjadi lebih sederhana, sementara bahasa tingkat rendah cenderung untuk membuat kode yang lebih efisien. Dalam sebuah bahasa tingkat tinggi, elemen-elemen kompleks dapat dipecah ke dalam beberapa elemen yang lebih sederhana, meski masih dapat dianggap kompleks, di mana bahasa tersebut menyediakan abstraksi. Karena alasan ini, kode-kode yang harus berjalan dengan efisien dapat ditulis dalam bahasa pemrograman tingkat rendah, sementara bahasa tingkat tinggi digunakan untuk mempermudah pemrograman.
Akan tetapi, dengan bertambah rumitnya arsitektur mikroprosesor modern, kompilator-kompilator bahasa pemrograman tingkat tinggi dapat membuat kode yang lebih efisien dibandingkan dengan para programmer bahasa pemrograman tingkat rendah yang melakukannya secara manual.
Perlu dicatat bahwa istilah “tingkat tinggi” dan “tingkat rendah” adalah relatif. Pada awalnya, bahasa rakitan dianggap sebagai bahasa tingkat rendah, sementara COBOL, C, dan lain-lainnya dianggap sebagai bahasa tingkat tinggi, mengingat mereka mengizinkan abstraksi terhadap fungsi, variabel, dan evaluasi ekspresi. Akan tetapi, banyak programmer saat ini mungkin menganggap bahasa C sebagai bahasa pemrograman tingkat rendah, mengingat bahasa pemrograman tersebut mengizinkan akses memori secara langsung dengan menggunakan alamatnya, dan juga dapat menggunakan beberapa direktif bahasa rakitan.
Model eksekusi
Ada tiga buah model eksekusi untuk bahasa tingkat tinggi, yakni:
Diinterpretasikan
Bahasa jenis ini akan dibaca dan dieksekusi secara langsung tanpa adanya proses atau tahap kompilasi oleh kompilator. Alat bantu yang mampu melakukannya disebut sebagai penerjemah(interpreter).
Dikompilasi
Bahasa jenis ini akan ditransformasikan ke dalam bentuk yang dapat dieksekusi sebelum dijalankan. Ada dua jenis kompilasi yang sering digunakan, yakni:
Intermediate representation
Ketika sebuah bahasa dikompilasi ke dalam intermediate representation, representasi tersebut dapat dioptimalkan atau disimpan untuk eksekusi pada lain waktu tanpa adanya kebutuhan untuk membaca lagi kode sumber program. Ketika representasi intermediate disimpan, umumnya, hal tersebut dinamakan dengan bytecode.
Machine code generation
Beberapa bahasa dapat melakukan kompilasi secara langsung ke dalam bahasa mesin.
Ditranslasikan
Sebuah bahasa juga dapat ditranslasikan ke dalam bahasa pemrograman tingkat rendah di mana kompilator kode bahasa asli telah beredar luas. Bahasa pemrograman C merupakan salah satu target yang umum untuk translator
REFERENSI:



0 komentar:

Posting Komentar