PROGRAM
Program komputer atau sering kali disingkat sebagai program adalah serangkaian instruksi yang
ditulis untuk melakukan suatu fungsi spesifik pada komputer.[1] Komputer pada dasarnya membutuhkan
keberadaan program agar bisa menjalankan fungsinya sebagai komputer, biasanya
hal ini dilakukan dengan cara mengeksekusi serangkaian instruksi program
tersebut pada prosesor.[2] Sebuah program biasanya memiliki suatu
bentuk model pengeksekusian tertentu agar dapat secara langsung dieksekusi oleh
komputer. Program yang sama dalam format kode yang dapat dibaca oleh manusia
disebut sebagai kode
sumber, bentuk program
yang memungkinkan programmer menganalisis serta melakukan penelaahan
algoritma yang digunakan pada program tersebut. Kode sumber tersebut pada
akhirnya dikompilasi oleh utilitas bahasa pemrograman
tertentu sehingga membentuk sebuah program. bentuk alternatif lain model
pengeksekusian sebuah program adalah dengan menggunakan bantuan interpreter, kode sumber tersebut langsung
dijalankan oleh utilitas interpreter suatu bahasa pemrograman yang digunakan.
Beberapa program komputer dapat dijalankan pada sebuah komputer
pada saat bersamaan, kemampuan komputer untuk menjalankan beberapa program pada
saat bersamaan disebut sebagai multitasking. Program komputer dapat dikategorikan
menurut fungsinya; perangkat lunak sistem atau perangkat lunak aplikasi.
Pengertian Program
menurut para ahli :
SUKRISNO
Program
adalah kata, ekspresi, atau pernyataan yang disusun dan dirangkai menjadi satu
kesatuan prosedur, yang berupa urutan langkah, untuk menyelesaikan masalah yang
diimplementasikan dengan menggunakan bahasa pemrograman sehingga dapat
dieksesuksi oleh komputer.
SUNARTO,
S.KOM
Program
adalah sekumpulan instruksi yang diwujudkan dalam bentuk bahasa, kode skema,
ataupun bentuk lain, yang apabila diganbungkan dengan media yang dapat dibaca
dengan komputer akan mampu membuat komputer bekerja untuk melakukan
fungsi-fungsi khusus atau untuk mwncPi hasil yang khusus, termasuk persiapan
dalam merancang instruksi-instruksi tersebut
SINDHUNATA
Program
adalah kelompok pernyataan yang persis dan berurutan yang gunanya adalah utuk
memberi tahu komputer bagaimana melaksanakan sesuatu pekerjaan
JANNER
SIMARMATA
Program
merupakan suatu aplikasi yang dibuat dengan menggunakan bahasa program tertente
dan telah terinstal di dalam komputer
loading...
Pemrograman komputer
#include <stdio.h>
int main()
{
int main()
{
printf("Hello world!\n");
return 0;
return 0;
}
Pemrograman komputer merupakan suatu
proses iteratif penulisan dan penyuntingan kode sumber sehingga membentuk
sebuah program. Penyuntingan kode sumber meliputi proses pengetesan, analisis,
pembetulan kesalahan, pengoptimasian algoritma, normalisasi kode, dan
kadang-kadang pengkoordinasian antara satu programmer dengan programmer lainnya
jika sebuah program dikerjakan oleh beberapa orang dalam sebuah tim. Seorang praktisi
yang memiliki keahlian untuk melakukan penulisan kode dalam bahasa pemrograman
disebut sebagai programmer komputer atau programmer, pengembang
perangkat lunak, atau koder. Istilahrekayasa perangkat lunak (bahasa Inggris: Software engineering) seringkali digunakan karena proses penulisan program
tersebut dipandang sebagai suatu disiplin ilmu perekayasaan.
Paradigma
Program komputer dapat dikategorikan
menurut paradigma bahasa pemrograman yang digunakannya. Dua paradigma utama
yang umum digunakan adalah imperatif dan deklaratif.
Program yang ditulis dalam bahasa
pemrograman imperatif biasanya memiliki algoritma yang ditulis dalam
serangkaian klausal pendeklarasian, ekspresi aritmatis, dan sejumlah perintah.[3] Pendeklarasian meliputi pendeklarasian
variabel serta tipe data atas variabel tersebut, contoh: var x: integer; Penggunaan ekpresi operasi aritmatis yang menghasilkan nilai, contoh: 2 + 2 menghasilkan nilai 4. Dan perintah yang melingkupi
pendelegasian nilai atas hasil dari operasi aritmatis tersebut ke dalam sebuah
variabel, contoh: x := 2 + 2; if x = 4 then lakukan_sesuatu(); Salah satu bentuk kritik atas implementasi imperatif ini adalah efek
samping yang timbul atas pendelegasian perintah terhadap variabel yang berada
di luar cakupan dari fungsi tersebut atau lebih dikenal sebagai non-local variable.[4]
Program yang ditulis dengan bahasa
deklaratif meliputi sejumlah properti yang harus dipenuhi untuk mendapatkan
suatu bentuk hasil tertentu. Properti tersebut tidak mencerminkan suatu
gambaran atas proses kerja suatu program namun merupakan suatu bentuk deklarasi
relasional matematis atas sejumlah objek melaui properti-propertinya. Dua
bagian utama atas pemrograman deklaratif adalah bahasa pemrograman fungsional dan bahasa pemrograman logikal. Prinsip dasar dibalik bahasa
pemrograman fungsional (Haskell) adalah mencegah
timbulnya efek samping seperti yang terdapat pada model pemrograman imperatif
sehingga membuatnya lebih mudah untuk digunakan membuat program yang melakukan
sejumlah operasi matematis.[4] Sementara itu, prinsip dari sebuah
bahasa pemrograman logikal (Prolog) adalah mendefinisikan permasalahan yang hendak diselesaikan, tujuan yang
hendak dicapai, dan membiarkan sistem melakukan analisis atas detail solusi
terhadap permasalahan tersebut.[5] Tujuan utama atas sebuah program
didefinisikan dengan cara membuat sejumlah tujuan-tujuan yang lebih kecil,
kemudian pada tiap-tiap tujuan tersebut secara lebih lanjut didefinisikan
tujuan-tujuan lain yang lebih kecil lagi, dan begitu seterusnya. Jika suatu
arahan tujuan yang didefinisikan gagal digunakan untuk menemukan solusi atas
suatu permasalahan, maka arahan tujuan anakan yang lebih kecil akan di telusuri
ulang, dan arahan lainnya akan diujicobakan.
Bentuk dari cara sebuah program dibuat
bisa berupa tekstual ataupun visual. Dalam pemrograman visual, elemen-elemen
program biasanya dimanipulasi secara grafis, sementara bila dibuat secara
tekstual artinya sebuah program ditulis secara manual.
Kompilasi atau interpretasi
Program komputer dalam bentuk yang dapat
dibaca oleh manusia biasanya disebuat sebagai kode sumber. Kode sumber dapat dikonversikan
menjadi bentuk berkas yang dapat dieksekusi secara langsung oleh komputer.
Proses pengkonversian ini disebut sebagai proses kompilasi dan biasanya
dilakukan sebuah program utilitas dari bahasa pemrograman yang digunakan yang
disebut sebagai kompiler. Pada beberapa bahasa pemrograman tertentu, kode sumber dapat langsung
dieksekusi sebagai sebuah program dengan menggunakan bantuan utilitas yang
disebut sebagai interpreter.
Baik melalui proses kompilasi ataupun
interpretatif, eksekusi program dapat dilakukan dalam sebuah proses batch tanpa membutuhkan interaksi dengan
manusia, namun program interpretatif memungkinkan pengguna untuk menulis
perintah dalam suatu sesi interaktif. Pada kasus ini sebuah program dieksekusi
sebagai sebuah perintah, yang kemudian dieksekusi baik secara serial ataupun
paralel. Bahasa pemrograman yang menyediakan fitur interaktif seperti ini
dinamakan sebagai bahasa skrip.
Kompiler digunakan untuk menerjemahkan
kode sumber dari suatu bahasa pemrograman menjadi kode objek ataupun kode mesin. Kode objek biasanya membutuhkan proses lebih lanjut sehingga dapat
menjadi kode mesin, dan kode mesin merupakan instruksi-instruksi yang dikenali
dan dapat secara langsung dieksekusi oleh prosesor. Program komputer yang telah
terkompilasi biasanya disebut sebagai berkas eksekutabel, ataupun berkas biner;
yang merujuk pada bentuk sistem biner yang digunakan untuk menyimpan kode mesin
tersebut.
Program komputer yang diinterpretasikan
-baik secara batch ataupun dalam modus interaktif- biasanya akan diterjemahkan terlebih dulu
ke dalam sejumlah token baru kemudian dieksekusi, atau bisa juga token-token
tersebut dioptimasi lebih lanjut sehingga menjadi sejumlah instruksi yang
memiliki tingkat efisiensi yang lebih baik dan disimpan sebagai berkas P-Code terpisah untuk dieksekusi kemudian oleh
interpreter. BASIC, Perl, dan Python merupakan beberapa contoh dari bahasa pemrograman yang menyediakan
fasilitas penerjemahaan langsung. Alternatif lainnya, program komputer yang
ditulis dalam bahasa pemrograman Java merupakan hasil kompilasi kode sumber ke
dalam bytcode yang kemudian dieksekusi oleh interpreter yang disebut sebagai mesin virtual java.
Kerugian utama pemanfaatan interpreter
adalah unjuk kerja program biasanya lebih lambat dibandingkan dengan program
yang dikompilasi terlebih dulu. Namun keuntungannya proses pengembangan
perangkat lunak biasanya bisa dilakukan lebih cepat karena proses pengetesan
atas berjalannya program dapat dilakukan dalam waktu yang relatif singkat.
Tanpa memerlukan tahapan-tahapan kompilasi sebelumnya. Kerugian lainnya adalah,
untuk dapat menjalankan program tersebut, utilitas interpreter harus disertakan
dalam setiap pendistribusian, berbeda halnya dengan program terkompilasi yang
dapat didistribusikan tanpa menyertakan kompiler bahasa yang digunakan karena
sifatnya yang sudah dalam bentuk kode mesin.
Umumnya saat ini bahasa-bahasa
pemrograman interpretatif telah dilengkapi pula dengan kompiler JIT (Just in
Time) yang akan menganalisis serta menerjemahkan instruksi-instruksi yang
paling sering digunakan ke dalam bahasa mesin pada saat program dijalankan
sehingga tingkat unjuk kerjanya dapat ditingkatkan mengimbangi unjuk kerja
program yang terkompilasi.
Eksekusi dan penyimpanan
Sebuah program komputer biasanya akan
disimpan terlebih dahulu dalam memori utama (RAM) komputer sebelum
dijalankan yang biasanya dilakukan oleh sistem operasi. Prosesor kemudian akan mengeksekusi program tersebut, instruksi demi
instruksi sampai program tersebut diterminasi. Sebuah program yang tengah
dieksekusi oleh prosesor dinamakan sebagai proses.[6] Terminasi ataupun penghentian eksekusi sebuah
program biasanya terjadi baik karena permintaan dari pengguna, interupsi
pengguna, kesalahan atas program itu sendiri, ataupun kesalahan atas perangkat
keras yang digunakan.
Program terpancang
microcontroller di sebelah kanan dariUSB flash drive di atas dikontrol melalui sebuah program
terpancang.
Beberapa program komputer tertentu
dipancangkan langsung pada perangkat kerasnya sebagai program yang dipanggil
untuk kebutuhan identifikasi serta inisialisasi atas berbagai aspek untuk memastikan
perangkat keras tersebut berfungsi.[7] Saat proses inisialisasi tersebut,
program terpancang tersebut akan dipanggil oleh sistem operasi, program
terpancang tersebut kemudian akan menjembatani penggunaan perangkat keras
tersebut sehingga sistem operasi dapat menggunakannya dengan baik.[8]
Pemrograman manual
pengalih untuk input
manual pada sebuah komputer Data General Nova 3
Program komputer awalnya diinput secara
manual ke prosesor utama dengan memanfaatkan sejumlah
pengalih sebagai representasi atas instruksi yang atas status konfigurasi
on/off. Setelah menetapkan konfigurasi tersebut, tombol eksekusi akan ditekan.
Proses ini kemudian dilakukan secara iteratif. Program komputer dalam
sejarahnya pernah juga ditulis melalui paper tape' ataupunched cards.
Setelah dimasukkan dan alamat awal eksekusi telah dimasukkan, tombol eksekusi
akan ditekan.[9]
Pembuatan program otomatis
Pemrograman generatif merupakan sebuah tipikial dari
pemrograman komputer yang akan membuat kode sumber melalui kelas-kelas generik,
prototipe, aspek, templat, dan pembuat kode (code generator) untuk meningkatkan
produktifitas programmer. Kode sumber yang dibuat oleh utilitas pemrograman
tersebut misalnya pemroses templat pada sebuah IDE. Bentuk yang paling
sederhana adalah pemroses makro yang terdapat pada bahasa pemrograman C.
Eksekusi simultan
Umumnya sistem operasi yang ada saat ini sudah mendukung pemanfaatan multitasking yang memungkinkan beberapa program komputer dijalankan pada saat yang
bersamaan di sebuah komputer. Untuk dapat menjalankan beberapa program tersebut
pada saat yang bersamaan, sistem operasi memanfaatkan mekanisme penjadualan
proses yang merupakan suatu mekanisme yang akan mengatur pengalihan prosesor
dalam melakukan pemrosesan sehingga beberapa program komputer tersebut dapat berinteraksi
dengan pengguna saat dijalankan.[10] Di sisi perangkat keras yang digunakan,
prosesor modern saat ini umumnya telah mendukung beberapa core prosesor yang dipancangkan
sebagai sebuah prosesor yang memungkinkannya menjalankan beberapa program
sekaligus.[11]
Sebuah program komputer dapat melakukan
kalkulasi secara simultan pada beberapa jenis operasi di saat yang bersamaan
dengan memanfaatkan thread atau sebagai proses terpisah. Umumnya
prosesor yang ada saat ini sudah mendukung arsitektur multithreading yang teroptimasi untuk menjalankan
beberapa thread secara efisien.
Sumber : https://id.wikipedia.org/wiki/Program_komputer
http://www.lepank.com/2012/08/pengertian-program-menurut-beberapa-ahli.html
http://www.lepank.com/2012/08/pengertian-program-menurut-beberapa-ahli.html
0 komentar:
Posting Komentar