Anda di halaman 1dari 7

Pengertian Bahasa Pemograman

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.

Fungsi Bahasa Pemrograman

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.

Namun,secara umum bahasa pemrograman terbagi menjadi 4 kelompok, yaitu :

1. Object Oriented Language (Visual dBase, Visual FoxPro, Delphi, Visual C)

2. High Level Language (seperti Pascal dan Basic)

3. Middle Level Language (seperti bahasa C), dan

4. Low Level Language (seperti bahasa Assembly)


Contoh script html

Tingkatan Bahasa Pemrograman

1. Bahasa Pemrograman Tingkat Tinggi .

Merupakan bahasa tingkat tinggi yang mempunyai ciri-ciri mudah dimengerti karena
kedekatannya terhadap bahasa sehari hari. Sebuah pernyataan program diterjemahkan kepada
sebuah atau beberapa mesin dengan menggunakan compiler.
Sebagai contoh adalah : BASIC, C, C++, COBOL, FORTRAN, ada, Pascal, Java , .NET
2. Bahasa Tingkat Menengah
Disebut tingkat menengah karena bisa masuk ke dalam bahasa tingkat tinggi maupun
rendah. Contohnya bahasa C.

3. Bahasa Pemrograman Tingkat Rendah


Bahasa tingkat rendah (Low Level Language) merupakan bahasa pemrograman yang
berorientasi pada mesin. Disebut tingkat rendah karena bahasa ini lebih dekat ke bahasa mesin
daripada bahasa manusia. Yang tergolong dalam bahasa tingkat rendah adalah bahasa assembly.
Kelemahan bahasa tingkat rendah antara lain :
sulit dipelajari karena programmer harus mengetahui seluk beluk perangkat keras yang
digunakan
bahasa assembly untuk satu jenis mikroprosesor satu dengan yang lain sangat jauh
berbeda karena belum ada standardisasi. Contoh : bahasa assembly untuk mikroprosesor
Intel 8088

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 (Compilation)

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.

Perbedaan antara Kompilasi (Compilation) dengan Interpretasi (Interpretation)

1. Jika hendak menjalankan program hasil kompilasi dapat dilakukan tanpa butuh kode
sumber. Kalau interpreter butuh kode sumber.

2. Jika dengan kompiler, maka pembuatan kode yang bisa dijalankan mesin dilakukan
dalam 2 tahap terpisah, yaitu parsing ( pembuatan kode objek ) dan linking
( penggabungan kode objek dengan library ) . Kalau interpreter tidak ada proses terpisah.

3. JIka compiler membutuhkan linker untuk menggabungkan kode objek dengan berbagai
macam library demi menghasilkan suatu kode yang bisa dijalankan oleh mesin. Kalau
interpreter tidak butuh linker untuk menggabungkan kode objek dengan berbagai macam
library

4. Interpreter cocok untuk membuat / menguji coba modul ( sub-routine / program-program


kecil ). Maka compiler agak repot karena untuk mengubah suatu modul / kode objek
kecil, maka harus dilakukan proses linking / penggabungan kembali semua objek dengan
library yang diperlukan.

5. Pada kompiler bisa dilakukan optimisasi / peningkatan kualitas kode yang bisa
dijalankan. Ada yang dioptimasi supaya lebih cepat, ada yang supaya lebih kecil, ada
yang dioptimasi untuk sistem dengan banyak processor. Kalau interpreter susah atau
bahkan tidak bisa dioptimasikan

PENGERTIAN BAHASA ASSEMBLY


Bahasa pemrograman generasi kedua adalah bahasa assembly. Bahasa rakitan (bahasa
Inggris: assembly language) adalah bahasa pemrograman komputer tingkat rendah. Bahasa
assembly merupakan notasi untuk bahasa mesin yang dapat dibaca oleh manusia dan berbeda-
beda tergantung dari arsitektur komputer yang digunakan.
Berbeda dengan bahasa pemrograman tingkat tinggi, bahasa assembly atau rakitan
biasanya memiliki hubungan 1-1 dengan instruksi bahasa mesin. Misalnya, tiap julukan
(mnemonic) yang ditulis di program dengan bahasa rakitan akan diterjemahkan menjadi tepat
satu kode operasi yang dapat dimengerti langsung oleh komputer. Pada bahasa tingkat tinggi,
satu perintah dapat diterjemahkan menjadi beberapa kode operasi dalam bahasa mesin. Proses
pengubahan bahasa rakitan ke bahasa mesin dilakukan oleh assembler, dan proses balikannya
dilakukan oleh disassembler.
Setiap arsitektur komputer memiliki bahasa mesin yang berbeda-beda sehingga bahasa
rakitannya pun berbeda-beda.(dna)

Pemrograman AT89S51 bahasa Assembly


Bahasa Assembly adalah bahasa pemrograman tingkat rendah. Dalam pemrograman komputer
dikenal dua jenis tingkatan bahasa, jenis yang pertama adalah bahasa pemrograman tingkat
tinggi (high level language) dan jenis yang kedua adalah bahasa pemrograman tingkat rendah
(low level language).
Bahasa pemrograman tingkat tinggi lebih berorientasi kepada manusia yaitu bagaimana
agar pernyataan-pernyataan yang ada dalam program mudah ditulis dan dimengerti oleh
manusia. Sedangkan bahasa tingkat rendah lebih berorientasi ke mesin, yaitu bagaimana agar
komputer dapat langsung mengintepretasikan pernyataan-pernyataan program.
Kelebihan Bahasa Assembly:
1. Ketika di-compile lebih kecil ukuran
2. Lebih efisien/hemat memori
3. Lebih cepat dieksekusi
Kesulitan Bahasa Assembly:
1. Dalam melakukan suatu pekerjaan, baris program relatif lebih panjang disbanding
bahasa tingkat tinggi
2. Relatif lebih sulit untuk dipahami terutama jika jumlah baris sudah terlalu banyak
3. Lebih sulit dalam melakukan pekerjaan rumit, misalnya operasi matematis
BAHASA ASSEMBLY MCS-51
Dalam program bahasa assembly terdapat 2 jenis yang kita tulis dalam program yaitu:
1. Assembly Directive (yaitu merupakan kode yang menjadi arahan bagi assembler/compiler
untuk menata program)
2. Instruksi (yaitu kode yang harus dieksekusi oleh CPU mikrokontroler)
Klik disini untuk melihat daftar Assembly Directive dan Instruksi MCS-51.

PENGGUNAAN SOFTWARE
Software untuk membantu memprogram mikrokontroler MCS-51 sudah banyak tersedia.
Untuk mempermudah maka dapat dipilih software yang merupakan Integrated Development
Environment (IDE) yaitu software yang merupakan editor sekaligus compiler. Bahkan juga ada
yang sekaligus debugger dan simulator. Salah satunya yang digunakan pada training di
PRASIMAX adalah Read51.

Daftar Assembly Directive


Assembly Directive Keterangan
EQU : Pendefinisian konstanta
DB : Pendefinisian data dengan ukuran satuan 1 byte
DW : Pendefinisian data dengan ukuran satuan 1 word
DBIT : Pendefinisian data dengan ukuran satuan 1 bit
DS : Pemesanan tempat penyimpanan data di RAM
ORG : Inisialisasi alamat mulai program
END : Penanda akhir program
CSEG : Penanda penempatan di code segment
XSEG : Penanda penempatan di external data segment
DSEG : Penanda penempatan di internal direct data segment
ISEG : Penanda penempatan di internal indirect data segment
BSEG : Penanda penempatan di bit data segment
CODE : Penanda mulai pendefinisian program
XDATA : Pendefinisian external data
DATA : Pendefinisian internal direct data
IDATA : Pendefinisian internal indirect data
BIT : Pendefinisian data bit

INCLUDE Mengikutsertakan file program lain


Daftar Instruksi
Instruksi Keterangan Singkatan
ACALL : Absolute Call
ADD : Add
ADDC : Add with Carry
AJMP : Absolute Jump
ANL : AND Logic
CJNE : Compare and Jump if Not Equal
CLR : Clear
CPL : Complement
DA : Decimal Adjust
DEC : Decrement
DIV : Divide

DJNZ : Decrement and Jump if Not Zero


INC : Increment
JB : Jump if Bit Set
JBC : Jump if Bit Set and Clear Bit
JC : Jump if Carry Set
JMP : Jump to Address
JNB : Jump if Not Bit Set
JNC : Jump if Carry Not Set
JNZ : Jump if Accumulator Not Zero
JZ : Jump if Accumulator Zero
LCALL : Long Call
LJMP : Long Jump
MOV : Move from Memory
MOVC : Move from Code Memory
MOVX : Move from Extended Memory
MUL : Multiply
NOP : No Operation
ORL : OR Logic
POP : Pop Value From Stack
PUSH : Push Value Onto Stack
RET : Return From Subroutine
RETI : Return From Interrupt
RL : Rotate Left
RLC : Rotate Left through Carry
RR : Rotate Right
RRC : Rotate Right through Carry
SETB : Set Bit
SJMP : Short Jump
SUBB : Subtract With Borrow
SWAP : Swap Nibbles
XCH : Exchange Bytes
XCHD : Exchange Digits
XRL : Exclusive OR Logic

Anda mungkin juga menyukai