Bahasa
pemrograman
Bahasa Pemrograman Bahasa
pemrograman atau sering diistilahkan sebagai bahasa komputer, adalah teknik
komando/instruksi standar untuk memerintah komputer. Bahasa pemrograman
merupakan himpunan atau kumpulan dari aturan sintaks dan semantik yang dipakai
untuk mendefinisikan program komputer. 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 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. Sebagian besar bahasa
pemrograman digolongkan sebagai Bahasa Tingkat Tinggi, hanya bahasa C yang
digolon gkan sebagai Bahasa Tingkat Menengah dan Assembly yang merupakan Bahasa
Tingkat Rendah. Berikut ini ada beberapa macam bahasa pemrograman yang perlu
anda ketahui: 1. Bahasa Pemrograman HTML HyperText Markup Language (HTML)
adalah sebuah bahasa markup yang digunakan untuk membuat sebuah halaman web dan
menampilkan berbagai informasi di dalam sebuah browser Internet. HTML saat ini
merupakan standar Internet yang didefinisikan dan dikendalikan penggunaannya
oleh World Wide Web Consortium (W3C). HTML berupa kode-kode tag yang
menginstruksikan browser untuk menghasilkan tampilan sesuai dengan yang
diinginkan. Sebuah file yang merupakan file HTML dapat dibuka dengan
menggunakan browser web seperti Mozilla Firefox atau Microsoft Internet
Explorer. 2. Bahasa Pemrograman PHP PHP adalah bahasa pemrograman script yang
paling banyak dipakai saat ini. PHP pertama kali dibuat oleh Rasmus Lerdorf
pada tahun 1995. Pada waktu itu PHP masih bernama FI (Form Interpreted), yang
wujudnya berupa sekumpulan script yang digunakan untuk mengolah data form dari
web. PHP banyak dipakai untuk membuat situs web yang dinamis, walaupun tidak
tertutup kemungkinan digunakan untuk pemakaian lain. PHP biasanya berjalan pada
sistem operasi linux (PHP juga bisa dijalankan dengan hosting windows). 3.
Bahasa Pemrograman ASP ASP adalah singkatan dari Active Server Pages yang
merupakan salah satu bahasa pemograman web untuk menciptakan halaman web yang
dinamis. ASP merupakan salah satu produk teknologi yang disediakan oleh
Microsoft. ASP bekerja pada web server dan merupakan server side scripting. 4.
Bahasa Pemrograman XML Extensible Markup Language (XML) adalah bahasa markup
serbaguna yang direkomendasikan W3C untuk mendeskripsikan berbagai macam data.
XML menggunakan markup tags seperti halnya HTML namun penggunaannya tidak
terbatas pada tampilan halaman web saja. XML merupakan suatu metode dalam
membuat penanda/markup pada sebuah dokumen. 5. Bahasa Pemrograman WML WML
adalah kepanjangan dari Wireless Markup Language, yaitu bahasa pemrograman yang
digunakan dalam aplikasi berbasis XML (eXtensible Markup Langauge). WML ini
adalah bahasa pemrograman yang digunakan dalam aplikasi wireless. WML merupakan
analogi dari HTML yang berjalan pada protocol nirkabel. 6. Bahasa Pemrograman
PERL Perl adalah bahasa pemrograman untuk mesin dengan sistem operasi Unix
(SunOS, Linux, BSD, HP-UX), juga tersedia untuk sistem operasi seperti DOS,
Windows, PowerPC, BeOS, VMS, EBCDIC, dan PocketPC. PERL merupakan bahasa
pemograman yang mirip bahasa pemograman C. 7. Bahasa Pemrograman CFM Cfm dibuat
menggunakan tag ColdFusion dengan software Adobe ColdFusion / BlueDragon /
Coldfusion Studio. Syntax coldfusion berbasis html. 8. Bahasa Pemrograman
Javascript Javascript adalah bahasa scripting yang handal yang berjalan pada
sisi client.JavaScript merupakan sebuah bahasa scripting yang dikembangkan oleh
Netscape. Untuk menjalankan script yang ditulis dengan JavaScript kita
membutuhkan JavaScript-enabled browser yaitu browser yang mampu menjalankan
JavaScript. 9. Bahasa Pemrograman CSS Cascading Style Sheets (CSS) adalah suatu
bahasa stylesheet yang digunakan untuk mengatur tampilan suatu dokumen yang
ditulis dalam bahasa markup. Penggunaan yang paling umum dari CSS adalah untuk
memformat halaman web yang ditulis dengan HTML dan XHTML. Walaupun demikian,
bahasanya sendiri dapat dipergunakan untuk semua jenis dokumen XML termasuk SVG
dan XUL. Spesifikasi CSS diatur oleh World Wide Web Consortium (W3C). Bahasa
Pemrograman Generasi I Bahasa pemrograman generasi pertama berorientasi pada
mesin. Program disusun dengan menggunakan bahasa mesin. Tentu saja program
generasi ini sangat sulit untuk dipahami oleh orang awam dan sangat membosankan
bagi pemrogram. Pemrogram harus benar-benar menguasai operasi komputer secara
teknis. Namun bahasa generasi ini memberikan eksekusi program yang sangat
cepat. Selain itu, bahasa mesin sangat bergantung pada mesin (machine
dependent), artinya, bahasa mesin antara satu mesin dengan mesin lainnya akan
berbeda. Bahasa Pemrograman Generasi II Bahasa pemrograman generasi kedua
menggunakan bahasa rakitan (assembly). Sebagai pengganti kode-kode biner,
digunakanlah kependekan dari kata-kata. Misalkan “MOV” untuk menyatakan “MOVE”
dan JNZ yang berarti “jump non-zero”. Setiap instruksi dalam bahasa rakitan
sebenarnya identik dengan satu instruksi dalam bahasa mesin. Bahasa ini sedikit
lebih mudah dipahami daripada bahasa mesin. Bahasa ini sedikit lebih mudah
dipahami daripada bahasa mesin mengingat perintah dalam bentuk kata-kata yang
dipendekkan lebih mudah daripada mengingat deretan angka biner. Berikut adalah
contoh instruksi yang ditulis dalam bahasa rakitan akan menjadi seperti
berikut: Tampak bahwa penggunaan notasi seperti MOV AH, 02 jauh lebih mudah
diingat atau dipahami daripada penulisan instruksi dalam bahasa mesin: B402
atau 1011 0100 0000 0010. Bahasa Pemrograman Generasi III Bahasa pemrograman
generasi ketiga menggunakan pendekatan prosedural. Sebagai bahasa prosedural,
pemrogram perlu menuliskan instruksi-instruksi yang rinci agar komputer
melaksanakan tugasnya. Program ditulis dengan menggunakan kata-kata yang biasa
dipakai manusia, seperti WRITE untuk menampilkan sesuatu di layar dan READ
untuk membaca data dari keyboard. Bahasa generasi ketiga seringkali disebut
sebagai high level language disebabkan bahasa ini menggunakan kata-kata yang biasa
digunakan manusia. Beberapa contoh bahasa pemrograman yang masuk dalam kategori
generasi ketiga yaitu ADA, ALGOL, C, BASIC, COBOL, FORTRAN, dan PASCAL. Bahasa
Pemrograman Generasi IV Bahasa pemrograman generasi keempat dirancang untuk
mengurangi waktu pemrograman dalam membuat program sehingga diharapkan
produktifitas pemrogram jadi meningkat dan program dapat dibuat dalam waktu
yang lebih singkat. Alhasil, bahasa pemrograman generasi keempat yang dikenal
dengan sebutan 4GL dapat dipakai oleh pemakai yang kurang mengetahui hal-hal
teknis tentang pemrograman tanpa bantuan pemrogram profesional. Sebagai contoh
pemrogram dapat membuat program dengan Microsoft Access di lingkungan PC dengan
mudah. Bahasa pemrograman generasi keempat biasa disebut sebagai high level
language atau bahasa berorientasi pada masalah (problem oriented language)
karena memungkinkan pemakai menyelesaikan masalah dengan sedikit penulisan kode
dibandingkan pada bahasa prosedural. Bahasa pemrograman generasi keempat
menggunakan pendekatan non-prosedural. Untuk mendapatkan suatu hasil, seorang
pemakai tidak perlu memberitahukan secara detail tentang bagaimana
mendapatkannya. Gambar di bawah ini memberikan contoh yang menunjukkan
perbedaan bahasa prosedural dan non-prosedural dalam memperoleh data tentang
seorang mahasiswa. Bahasa Pemrograman Generasi V Bahasa pemrograman generasi
kelima merupakan kelompok bahasa-bahasa pemrograman yang ditujukan untuk
menangani kecerdasan buatan (artificial intelligence). Kecerdasan buatan adalah
disiplin dalam ilmu komputer yang mempelajari cara komputer meniru kecerdasan
manusia. Berbagai aplikasi kecerdasan manusia adalah sebagai berikut: *
Pemrosesan bahasa alami (natural language processing), yakni mengatur komputer
agar bisa berkomunikasi dengan manusia melalui bahasa manusia (Indonesia,
Inggris, Spanyol, Prancis, dan sebagainya). * Pengedalian robotika dan sensor
mata. * Aplikasi sistem pakar (expert system) yang meniru seorang pakar di
bidang tertentu sehingga bisa menghasilkan nasehat atau pemikiran yang setara
dengan seorang pakar. Dengan menggunakan bahasa generasi kelima dimungkinkan
untuk melakukan perintah dengan cara percakapan seperti berikut: “Tampilkan
semua nama mahasiswa yang IPK-nya di atas 3,0 dan urutkan berdasarkan IP secara
descending” PROLOG dan LISP merupakan dua contoh bahasa pemrograman yang
ditujukan untuk menangani kecerdasan buatan Kompilator Kompilator (Inggris:
compiler) adalah sebuah program komputer yang berguna untuk menerjemahkan
program komputer yang ditulis dalam bahasa pemrograman tertentu menjadi program
yang ditulis dalam bahasa pemrograman lain. Terlepas dari pengertiannya yang
demikian relatif luas, istilah kompilator biasa digunakan untuk program
komputer yang menerjemahkan program yang ditulis dalam bahasa pemrograman
tingkat tinggi (semacam bahasa Pascal, C++, BASIC, FORTRAN, Visual Basic,
Visual C#, Java, xBase, atau COBOL) menjadi bahasa mesin, biasanya dengan
bahasa Assembly sebagai perantara. Arsitektur kompilator modern biasanya bukan
lagi merupakan program tunggal namun merupakan rangkaian komunikasi antar
program dengan tugas spesifik masing-masing. Program-program tersebut beserta
tugasnya secara umum terdiri dari: Kompilator itu sendiri, yang menerima kode
sumber dan menghasilkan bahasa tingkat rendah (assembly) Assembler, yang
menerima keluaran kompilator dan menghasilkan berkas objek dalam bahasa mesin
Linker, yang menerima berkas objek keluaran assembler untuk kemudian
digabungkan dengan pustaka-pustaka yang diperlukan dan menghasilkan program
yang dapat dieksekusi (executable) Kompilator yang menggunakan arsitektur ini
misalnya GCC, Clang dan FreeBASIC. Beberapa kompilator tidak menggunakan
arsitektur di atas secara gamblang, dikarenakan komunikasi antar program jauh
lebih lambat dibandingkan jika komunikasi dilakukan secara internal di dalam
satu program. Sehingga kompilator-kompilator tersebut mengintegrasikan
assembler dan linker di dalam kompilator. Namun demikian, biasanya arsitektur
yang digunakan pun tidak kaku dan mengizinkan penggunaan assembler maupun
linker eksternal (berguna jika assembler dan linker internal bermasalah atau
memiliki galat). Kompilator yang menggunakan arsitektur ini salah satunya
adalah Free Pascal. Profesor Niklaus Wirth dalam bukunya Compiler Construction
[1] menyatakan bahwa penggunaan assembler sebagai bahasa perantara seringkali
tidak memberikan keuntungan yang signifikan, sehingga beliau menyarankan agar
kompilator langsung menghasilkan bahasa mesin. Kompilator dengan arsitektur
seperti ini dapat berjalan dengan sangat cepat, seperti yang ditunjukkan pada
kompilator orisinil Pascal, Modula-2 dan Oberon yang dibuat oleh sang profesor.
Kompilator melakukan proses kompilasi dengan cara menganalisis kode sumber
secara keseluruhan, sehingga waktu yang dibutuhkan untuk melakukan kompilasi
lebih lama, namun hasilnya lebih cepat dalam proses eksekusi daripada program
yang dibuat dengan menggunakan teknik interpretasi dengan interpreter. Bahasa
Rakitan 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 memgasilitasi proses pengembangan program, mengontrol proses
perakitan, dan alat bantudebugging. 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 dapat 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 labeling yang terdapat 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:[1] 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: MOV AL, 61h ; Isi register AL dengan nilai 97 (61h) Bahasa
rakitan memungkinkan programmer menambahkan komentar atas setiap instruksi yang
ditulis untuk mempermudah pembacaan dan lebih mudah pemahaman. Pemrograman
Bahasa Rakitan (UAS Teori) 1. Analogi Tentang No. Interrupt dan No Service
- Pengertian Interrupt a)
Interupsi adalah suatu permintaan khusus pada mikroprocessor untuk
melakukan sesuatu, jika terjadi interupsi maka komputer akan
menghentikan dahulu apa yang sedang dikerjakan dan melakukan apa yang
diminta oleh yang menginterupsi. b)
Interrupt merupakan sub rutin yang sudah tersedia dalam memori komputer
c) Pada IBM PC dan kompatibelnya disediakan
256 buah interupsi yang diberi nomor 0 s/d 255.
d) Nomor interupsi 0 s/d 1Fh disediakan oleh ROM
BIOS yaitu suatu IC di dalam komputer yang mengatur operasi dasar komputer.
e) Jadi jika terjadi interupsi dengan nomor
0 s/d 1Fh maka secara default komputer akan beralih ke ROM BIOS dan
melaksanakan program yang terdapat disana.
f) Program yg melayani suatu
interupsi dinamakan Interrupt Handler - Pengertian NO Service
a) Merupakan nomor layanan pasangan dari
nomor interupt sehingga menghasilkan action tertentu. Apabila nomor service
diubah dan nomor interupt tetap hasil action berbeda. 2. Beberapa No Service
Int 10h dengan service 1300h mencetak kalimat dengan atribut; Int 16h dengan
service 00h Input 1 Character Keyboard; Int 16h dengan service 0Ah Input
Kalimat dari Keyboard; Int 21h dengan service ah 01h Input 1 Karakter (Keyboard
Input); Int 21h, dengan service ah 03h Auxiliary Input (Standard Auxiliary
Device Input); Int 21 h, dengan service ah 07h input 1 Karakter Tanpa Echo
Tidak Mengecek Ctrl-C ; Int 21h dengan service 09h untuk mencetak kalimat; Int
21h dengan service 02h untuk mencetak karakter; 4. Skema Virus: Anti
Detection routines akan menjadi payung dari search dan copy,menghindari
deteksi, baik oleh pengguna komputer maupun software, pendeteksi virus
membatasi scope pencarian dan penduplikatan, menjalankan routine pada saat
komputer sedang mengalami idle (stand by). Virus akan mencari tempat untuk
berproduksi, setelah ketmu virus akan meng-copy dirinya sendiri pada area yang
telah ditentukan, pengcopyan dilakukan bila pc dalam keadaan idle/ diam. virus
yang menyerang file berekstensi COM umumnya berukuran lebih kecil daripada
virus yang menyerang file EXE, karena file EXE memiliki struktur yang lebih
kompleks, sehingga virus lebih sukar untuk melekatkan diri pada file EXE. 5.
Bahasa rakitan memungkinkan programmer untuk mengontrol serta memanfaatkan
secara penuh kapabilitas yang terdapat pada perangkat keras, dengan menggunakan
bahasa assembly progremer dengan mudah membelokan interupsi sebuah
software/hardware sifatnya yang menerjemahkan secara langsung instruksi rakitan
menjadi instruksi mesin,hal ini akan dengan mudah merubah pengalamatan sebuah
hardware hanya dengan menggunakan bahasa yg simple atau bahasa tingkat rendah.
Categories UAS Semester 3