Bahasa Assembly

=============================Assalamualaikum=================================

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 bantu 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 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:
1011000001100001 Kode biner ini dapat diubah agar lebih mudah dibaca manusia dengan
mengkonversikannya dalam
bilangan heksadesimal sebagai berikut : B 0 6 1
Pada instruksi diatas, B 0 berarti : 'Pindahkan nilai berikut
ke register AL', dan 6 1 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 , 61 h ; Isi register AL dengan nilai 97 ( 61 h ) Bahasa rakitan memungkinkan programmer menambahkan
komentar atas setiap instruksi
yang ditulis untuk mempermudah pembacaan dan lebih mudah pemahaman.
=========================================================================