'''Bahasa pemrograman''' adalah sistem notasi untuk menulis program komputer. Sebagian besar bahasa pemrograman adalah bahasa formal berbasis teks, tetapi mungkin juga berupa grafis.<ref>{{Cite book|last=Simarmata|first=Janner|url=https://books.google.co.id/books?id=QP1BjG_VIsoC&pg=PA403&dq=Program+komputer&hl=id&newbks=1&newbks_redir=0&source=gb_mobile_search&sa=X&ved=2ahUKEwiFwZDxtfX-AhUC-jgGHVqkAhQQ6AF6BAgNEAM|title=Rekayasa Perangkat Lunak|publisher=Penerbit Andi|isbn=978-979-29-1347-7|language=id}}</ref>[[Berkas:C Hello World Program.png|jmpl|Kode sumber untuk program komputer sederhana yang ditulis menggunakan bahasa pemrograman C. Saat program dikompilasi dan dijalankan, maka layar akan menampilkan "Hello, world!"]]
{{noref}}
Deskripsi bahasa pemrograman biasanya dibagi menjadi dua komponen [[Sintaksis|sintaks]] (bentuk) dan [[semantik]] (makna), yang biasanya didefinisikan oleh bahasa formal. Beberapa bahasa ditentukan oleh dokumen spesifikasi (misalnya, bahasa pemrograman C ditentukan oleh Standar [[ISO]]) sementara bahasa lain (seperti [[Perl]]) memiliki implementasi dominan yang diperlakukan sebagai referensi. Beberapa bahasa memiliki keduanya, dengan bahasa dasar yang ditentukan oleh standar dan ekstensi diambil dari implementasi dominan yang umum.
{{tone}}
[[Berkas:C Hello World Program.png|jmpl|Kode sumber untuk program komputer sederhana yang ditulis menggunakan bahasa pemrograman C. Saat program dikompilasi dan dijalankan, maka layar akan menampilkan "Hello, world!"]]
'''Bahasa pemrograman''' atau '''bahasa penataolahan''' adalah instruksi standar untuk memerintah [[komputer]], namun seringkali diistilahkan sebagai [[bahasa komputer]]. Bahasa pemrograman ini merupakan suatu himpunan dari aturan [[sintaks]] dan [[semantik]] yang dipakai untuk mendefinisikan [[program komputer]]. Bahasa ini memungkinkan seorang [[Programmer|penata olah]] dapat menentukan secara persis data mana yang akan diolah oleh komputer, bagaimana data ini akan disimpan/diteruskan, dan jenis [[algoritma|langkah]] apa yang akan diambil dalam berbagai situasi secara persis.
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]] (''Assembly''), yaitu memberikan perintah kepada komputer dengan memakai kode-kode singkat (kode ''mnemonic''), contohnya, MOV, SUB, CMP, JMP, JGE, JL, LOOP, dsb.
# Bahasa Tingkat Menengah, yaitu bahasa komputer yang memakai campuran instruksi dalam kata-kata bahasa manusia{{Butuh rujukan}} (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.''{{Butuh rujukan}} Komputer dapat mengerti bahasa manusia itu diperlukan program [[Compiler|kompilator]] atau [[Interpreter|penerjemah]].
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 ==
|