Blogroll

Kamis, 21 November 2013

KATA PENGANTAR

Puji syukur Kami panjatkan kepada TUHAN yang telah melimpahkan rahmat dan nikmat-Nya kepada kita semua sehingga kami dapat menyelesaikan Tugas Makalah tentang Bahasa Rakitan. 
Tugas Makalah Bahasa Rakitan dengan waktu yang telah ditentukan kami bisa menyelesaikan dengan baik. Kami menyadari sepenuhnya dalam pembuatan makalah ini masih banyak terdapat kekurangan baik dari penggunaan kata dan bahasa yang belum memenuhi kaidah yang tepat dan baik dari segi isi maupun penulisannya. Untuk itu kami sangat mengharapkan bantuan kritik dan saran dari semua pihak yang bersifat membangun demi penyempurnaan makalah ini dimasa yang akan datang.
Pada kesempatan ini kami mengucapkan terima kasih atas segala bantuan semua pihak sehingga makalah ini dapat terselesaikan dengan baik. Semoga makalah ini dapat bermanfaat bagi kami, pembaca maupun pihak-pihak yang membtuhkan.



























DAFTAR ISI

Kata Pengantar................................................................................................................................i
Daftar Isi.........................................................................................................................................ii
Bahasa Rakitan...............................................................................................................................1
Modal Awal Belajar Bahasa Rakitan.............................................................................................2
a.Konversi Bilangan..................................................................................................................3
Bagian – Bagian Dari Program Assembler………………………………………………………6
a.Instruksi Aritmatik…………………………………………………………………………..8
b.Instruksi Logika……………………………………………………………………………..8
c.Instruksi Pemindahan Data………………………………………………………………….8
Tahap pembuatan sebuah program assembly……………………………………………………10
Pemrograman AT89S51 Bahasa Assembly……………………………………………………..12
a. Bahasa Assembly MCS-51………………………………………………………………...12
b. Penggunaan Software……………………………………………………………………...12
Kesimpulan………………………………………………………………………………………15
Daftar Pustaka…………………………………………………………………………………...16


























1.      BAHASA RAKITAN

Bahasa Rakitan termasuk ke dalam bahasa tingkat rendah dan merupakan bahasa
dasar komputer. Bahasa ini memerlukan logika yang cukup rumit di samping instruksinya
yang jauh berbeda dengan bahasa pemrograman lainnya. Program yang dihasilkan
memiliki kecepatan
yang paling baik. Kelebihan dari bahasa rakitan adalah :
1. Memiliki fasilitas fungsi dan makro (ciri khas bahasa pemrograman yang
menyebabkan pemrograman menjadi lebih mudah).
2. Program dapat dibuat secara modular (dipecah dalam modul-modul kecil dan
dapat diintegrasikan kembali).
3. Ukuran program lebih kecil, sehingga lebih menghemat media penyimpan.
4. Lebih dekat ke hardware sehingga seluruh kemampuan komputer dapat
dimanfaatkan secara maksimal.

Bahasa rakitan merupakan bahasa pemrograman yang posisinya di antara bahasa
pemrograman lainnya adalah termasuk dalam bahasa pemrograman tingkat rendah karena
bahasa ini berhubungan langsung dengan bahasa mesin. Sedangkan bahasa pemrograman
Delphi berada di atas bahasa pemrograman rakitan, yang sering disebut OOP (Object
Orinted Programming).
Bahasa mesin adalah kumpulan kode biner yang merupakan instruksi yang bisa
dijalankan oleh komputer. Sedangkan bahasa rakitan memakai kode mnemonic untuk
menggantikan kode biner, agar lebih mudah diingat sehingga memudahkan penulisan
program.
Program yang ditulis dengan bahasa rakitan terdiri dari label; kode mnemonic dan
lainnya, pada umumnya dinamakan sebagai program sumber (source code) yang belum
bisa diterima oleh prosesor untuk dijalankan sebagai program tapi harus diterjemahkan
terlebih dahulu menjadi bahasa mesin dalam bentuk kode biner.
Jika yang ditulis hanya bahasa rakitan saja maka biasanya program dibuat dengan
program editor biasa, misalnya note pad pada Windows atau sidekick pada DOS,
selanjutnya program sumber diterjemahkan ke bahasa mesin dengan menggunakan
program rakitan. Hasil kerja program rakitan adalah “program objek” dan juga “rakitan
listing”. Tapi karena di sini bahasa rakitan ditulis bersama dengan bahasa Delphi maka
program dibuat di dalam editor milik Delphi.
Program objek berisikan kode – kode bahasa mesin, kode – kode bahasa mesin
inilah yang diumpankan ke memori – memori prosesor.
Perlu diperhatikan bahwa setiap prosesor mempunyai konstruksi yang berbeda –
beda, instruksi untuk mengendalikan masing – masing prosesor juga berbeda – beda.
Dengan demikian bahasa rakitan untuk masing – masing prosesor juga berbeda, yang
sama hanyalah pola dasar cara penulisan program rakitan saja.
Dalam bahasa rakitan program sumbernya menganut prinsip 1 baris untuk satu
perintah, setiap baris perintah tersebut bisa terdiri atas beberapa bagian, yaitu bagian
label, bagian mnemonic, dan bagian operan yang bisa lebih dari satu.
Label mewakili nomor memori program dari instruksi pada baris yang
bersangkutan, misal pada saat menulis JUMP, label ini ditulis pada bagian operand untuk
menyatakan nomor memori program yang dituju. Dengan demikian label selalu mewakili
nomor memori program dan harus ditulis di bagian awal baris instruksi. Selain label
dikenal pula symbol, yakni satu nama yang mewakili satu nilai tertentu dan nilai yang
diwakili bisa apa saja tidak harus nomor memori program. Cara penulisan simbol sama
dengan penulisan label, harus dimulai di huruf pertama dari baris instruksi.
Mnemonic merupakan singkatan perintah, dikenal dua macam mnemonic, yakni
mnemonic yang dipakai sebagai instruksi mengendalikan prosesor, misalnya ADD,
MOV, DJNZ dan lainnya. Ada pula mnemonic yang dipakai untuk mengatur kerja dari
program rakitan misalnya ORG, EQU atau DB, mnemonic untuk mengatur kerja dari
program rakitan ini dinamakan sebagai “rakitan directive”.
Operan adalah bagian yang letaknya di belakang bagian mnemonic, merupakan
pelengkap bagi mnemonic. Kalau sebuah instruksi diibaratkan sebagai kalimat perintah,
maka mnemonic merupakan subjek (kata kerja) dan operan merupakan objek (kata benda)
dari kalimat perintah tersebut.

2. Modal  awal  belajar Bahasa Rakitan

a. Konversi Bilangan Hexadesimal, Biner dan

Salah satu penyebab kesulitan mahasiswa untuk mempelajari bahasa Rakitan adalah hal –
hal yang menyangkut konversi Bilangan biner dan hexadecimal. Meskipun dianggap
sesuatu hal yang mengada – ada oleh sebagian anda bahwa : untuk apa bilangan bilangan
direpresentasikan dengan orde yang bermacam-macam? Yang malah menyulitkan bagi
pengguna bilangan. Sebetulnya tidak demikian. Coba anda bayangkan bagaimana
merepresentasikan Bilangan desimal 4 (yang kita pakai sehari hari) dalam digital?
Seperti yang anda ketahui dalam dunia digital representasi adalah 1 dan 0, karena secara fakta lebih mudah dan tegas perbedaan antara 1 dan 0. 1 adalah on dan 0 adalah off.
Disebut sebagai biner (1 dan 0) sehingga dari ungkapan saya diatas dapat dipahami
mengapa biner dibutuhkan, sehingga desimal 4 adalah 100 (biner) kalau representasi pada
nyala 3 buah led maka nyala padam dan padam. Kemudian muncul pertanyaan untuk apa
bilangan hexadesimal? Coba bayangkan representasi bilangan desimal 65536 dalam
biner..? maka anda dapat menulis sepanjang 16 bilangan biner. Hal ini sangat
menyulitkan kala sudah masuk dalam pemrograman, sehingga muncul bilangan orde 16
atau hexadesimal yang berfungsi untuk menyederhanakan penulisan (mengecilkan ukuran
representasi bilangan desimal dan biner ) menjadi FF (hexadesimal) hanya membutuhkan
dua karakter bilangan saja. Oleh sebab itulah mengapa biner dan hexadesimal dibutuhkan
dalam representasi bilangan.
Oleh karena itu pemahaman konversi bilangan penting sebab penggunaan mereka
menyederhanakan lain topik kompleks termasuk desain logika dengan aljabar boolean,
untuk meyederhanakan representasi data.
Bab ini mendiskusikan beberapa konsep penting mencakup konversi biner dan
hexadecimal, sistem, organisasi data biner (bytes), sistem nomorsign dan unsign,
perhitungan, logis, pergeseran, dan operasi rotasi pada biner, bit dan representasi data,
dan karakter ASCII. Bab ini wajib anda kuasai, sebelum anda menguasai sistem bilangan
dan konversinya sebaiknya tidak melangkah ke bab berikutnya.

v  BILANGAN DESIMAL
Kita terbiasa dengan bilangan basis 10 (desimal) coba anda lihat angka ini 123
representasi dalam bilangan basis 10 adalah seperti berikut :
1*102 + 2*101 + 3*100 atau sama dengan
100 + 20 + 3
kemudian coba perhatikan bilangan ini 123,456
direpresentasikan dalam desimal sebagai berikut
1*102 + 2*101 + 3*100 +4*10.-1+5*10-2+6*10-3
 atau sama dengan
100 + 20 + 3 + 0,4 + 0,05 + 0,006

v  BILANGAN BINER
Sistem komputer menggunakan bilangan biner, dioperasikan menggunakan logika biner.
Komputer merepresentasikan nilai-nilai menggunakan dua tingkatan voltase yang pada
umumnya 0v dan + 5v. Dengan dua nilai seperti kita dapat merepresentasikan persisnya
dua nilai-nilai berbeda. Ini bisa karena dimanapun dua nilai yang berbeda secara absolut,
Dalam penggunaanya kita menggunakan nilai-nilai nol dan satu.
Contoh disini sangat mudah untuk mengkonversikan bilangan biner ke desimal. Anda
perhatikan bilangan biner ini 110010102 direpresentasikan dengan cara seperti pada
desimal diatas menjadi sebagai berikut :
1*27 + 1*26 + 0*25 + 0*24 + 1*23 + 0*22 + 1*21 + 0*20 sama dengan
128 + 64 + 8 + 2
20210
Mudah kan?
Sedangkan untuk mengkonversi desimal ke biner agak sedikit lebih sulit, karena anda
harus menemukan terlebih dahulu pangkat dua tertinggi berapakah yang sama dengan
atau lebih kecil dari bilangan desimal yang akan dikonversi. Contoh anda perhatikan
bilangan berikut : 1359 (desimal) coba kita konversikan..
- cari nilai pangkat dua yang sama dengan atau lebih kecil dari 1359, kita ambil
misalnya 2 10 = 1024 -> lebih kecil dari 1359, kemudian
- kita naikkan satu tingkat 2 11 = 2048 ternyata 2048 lebih besar dari 1359,
sehingga kita pilih 2 pangkat 10 (210).
- Kurangkan desimal yang akan dikonversi dengan nilai desimal dari pangkat
dua yang lebih kecil dari bilangan tersebut sehingga, 1359-1024 adalah sama
dengan 335
·         Cari bilangan pangkat dua yang lebih kecil atau sama dengan 335 -> 28 = 256.
·         Kurangkan 335 dengan 256, 335 – 256 = 79
·         Ulangi langkah keempat kita dapatkan pangkat dua yang mendekati adalah 64 shg 79-64 = 5
·         Ulangi lagi langkah sebelumnya kita dapat 4, mjd 5-4 = 1
·         Dari hasil langkah langkah tersebut diatas dilengkapi sampai nilai nomila terkecil kemudian diurutkan dan kemudian kita susun binernya menjadi
seperti berikut ini
·         210 28 26 24 23 22 21 dan 20 selanjutnya kita urutkan mulai bilangan pangkat dua
terbesar sampai yang terkecil, pangkat dua yang terepresentsi spt hitungan kita
tadi kita urutkan dengan 1 yang terwakili dan 0 tidak terwakili menjadi urutan
bilangan biner seperti ini : 1010101111
                       
v  BILANGAN HEXADESIMAL
Bilangan Hexadesimal merupakan bilangan dengan orde 16, Dengan urutan
sebagai berikut (paling kiri merupakan MSB dan paling kanan adalah LSB) :
F E D C B A 9 8 7 6 5 4 3 2 1 0. dimana bilangan F adalah 16 dalam orde 10 dan 1111
dalam orde biner. Konversi bilangan dari bilangan biner ke hexadesimal sangat mudah,
bila dibandingkan konversi dari bilangan hexadesimal ke desimal. Cara mengkonversi
bilangan hexadesimal ke biner adalah dengan cara menguraikan bilangan bilangan
hexadesimal tersebut empat bit empat bit sesuai dengan konversi dalam biner. Contoh
bilangan FE16 dalam konversi biner nya adalah F menjadi 11112 dan E menjadi 00012
sehingga FE16 = 111100012.
Cara mengkonversi ke bilangan desimal sama dengan biner Contoh:
3A hexa = (3 * 161) + (10 * 160)
= 48 + 10
= 58 desimal

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.








3. Bagian – Bagian Dari Program Assembler
Berikut ini adalah bagian – bagian dari rogram assembler yaitu:
1.      Label
            Label merupakan suatu simbol yang didefinisikan sendiri oleh pembuat program untuk menandai lokasi memori pada area program. Simbol dan labeladalah dua hal yang berbeda. Simbol tidak menggunakan titik dua, sedangkanlabel harus diakhiri dengan titik  Contoh :

                  PAR                      EQU 500        ; “PAR” Menunjukan suatu simbol
                                                                       ; dari nilai 500
                  MULAI:
                  MOV                      A, #0FFh       ; pada label; “Mulai” nilai 0FFh
                                                                        ; dipindahkan ke Akumulator

Dalam satu baris hanya ada satu label, pada umumnya Assembler membatasi jumlah karakter yang bisa digunakan hingga 31 karakter.

2.      Mnenonik
            Mnemonic instruksi atau pengarah Assembler dimasukan dalam “Mnemonic field” yang mengikuti “label mnemonic”.Mnemonic instruksi misalnya ADD, MOV, INC dan lain-lain.Sedangkan pengarah Assembler misalnya ORG, EQU, DB dan lain-lain.

3.      Operand
            Operand ditulis setelah mnemonic, bisa berupa alamat atau data yang digunakan instruksi yang bersangkutan Contoh :

          MOV                      A, #20h         ; A dan #20h adalah operand
          LAGI:
          JNB                        LAGI            ; LAGI adalah operand

4.      Komentar
           Komentar harus diawali dengan titik koma. Sub rutin dari bagian besar program yang mengerjakan suatu operasi biasanya diawali dengan blok komentar yang menjelaskan fungsi sub rutin atau bagian besar program tersebut.

5.      End
            Petunjuk END merupakan kode perintah terakhir yang menunjukan batas akhir dari proses Assembly. Instruksi yang sering digunakan dalam pembuatan program yaitu :


a.   Instruksi Aritmatik
         Instruksi aritmatik selalu melibatkan akumulator dan ada juga beberapa instruksi yang melibatkan register lain.
Berikut ini contoh instruksi–instruksi arimatika yaitu:


Tabel 2.4 Instruksi-instruksi Aritmatik
Instruksi
Keterangan
Contoh
ADD A,Rn
Menambah isi register Rn dengan isi akumulator lalu disimpan di akumulator
ADD A,R1
ADD A, direct
Menambah isi direct dengan akumulator, hasilnya disimpan di akumulator
ADD A, 30H
ADD A, #data
Menambahkan immediate data ke akumulator
ADD A, #20H
ADD A, @Rn
Menambahkan isi dari alamat yang ditunjuk Rn dengan akumulator
ADD A, @R1
ADDC A, #data
Menambahkan immediate data ke akumulator dengan carry
ADDC A, #20H
SUBB A, Rn
Kurangkan isi register Rn dari akumulator
SUBB A, R1
INC A
Tambah isi akumulator dengan 1
INC A
DEC A
Kurangkan isi akumulator denga 1
DEC A
MUL AB
Kalikan isi A dengan isi B, low-bytedisimpan pada akumulator, dan highbytepada B
MUL AB
DIV AB
Bagi isi A dengan isi B. Akumulator menerima hasil integer pembagian dan B menerima integer sisanya.
DIV AB
b.      Instruksi Logika
               Instruksi Logika ini dipakai untuk melakukan operasi logika, yaitu operasi AND (instruksi ANL), operasi OR (instruksi ORL), operasi Exclusive-OR (instruksi XRL), operasi clear (instruksi CLR), instruksi komplemen (instruksi CPL), operasi penggeseran kanan atau kiri (instruksi RR, RRC, RL dan RLC) serta operasi penukaran data (instruksi SWAP). Data yang dipakai dalam operasi  ini biasanya berupa data yang berada dalam akumulator atau data yang berada dalam memori data.
c.   Instruksi Pemindahan Data
Instruksi – instruksi pemindahan data adalah :
Tabel 2.5 Instruksi – instruksi Perpindahan Data
Instuksi
Keterangan
Contoh
MOV A, Rn
Memindahkan isi register Rn ke akumulator
MOV A, R0
MOV A,direct
Memindahkan isi direct byte ke akumulator
MOV A, 30h
MOV A , #data
Mengisi akumulator dengan nilai data
MOV A,#20h
MOV A, @Rn
Mengisi akumulator dengan isi dari alamat yang ditunjuk oleh Rn
MOV A, @R0
2.2.2    Mode – Mode Pengalamatan



1.      Mode Pengalamatan Langsung
 Dalam pengalamat langsung nilai yang akan disimpan dalam suatu memori diperoleh secara langsung dengan mengambil dari lokasi memori yang lain.
 Contoh :
 MOV A,30H         : isi akumulator dengan bilangan 30 heksadesimal

2.      Mode Pengalamatan Tak Langsung
Dalam pengalamatan tak langsung, instruksi menentukan  suatu register yang digunakan untuk menyimpan alamat operan
 Contoh :
ADD A,R         ; Tambahkan isi RAM yang lokasinya ditunjukan oleh register R1 ke akumulator.
DEC @R1        ; Kurangi satu isi RAM yang  alamatnya ditunjukan oleh register R1.

3.      Mode Pengalamatan Segera
 Cara ini menggunakan konstanta.
Contoh :
 MOV A,#20H ; isi akumulator dengan bilangan 20 heksadesimal Data konstanta merupakan data yang menyatu dengan instruksi, contoh intruksi diatas mempunyai arti bahwa data konstantanya, yaitu 20H, (sebagai data konstanta harus diawali dengan ’#’ dan tanda H untuk menyatakn format bilangan heksadesimal) disalin ke Akumulator (A).

4.      Mode Pengalamatan Data
 Pengalamatan data terjadi pada sebuah perintah ketika nilai operasi merupakan alamat data yang akan diisi atau yang akan dipindahkan.
Contoh :
MOV P1,A ; isi P1 dari nilai akumulator.

5.      Mode Pengalamatan Bit
Pengalamatan bit adalah penunjukkan menggunakan simbol titik (.) yang menunjuk alamat lokasi bit, baik dalam RAM internal atau perangkat keras.
Contoh :
SETB P1.7 : set bit port 1.7 high ( pot 1.7 diberi nilai logika 1)

4. Tahap pembuatan sebuah program assembly

1. Masuk ke under Dos melalui klik starmenu, klik run ketikkan cmd

atau dari start -> program -> acssessoris -> Command Promt

2. Ketikkan cd\ maka anda akan di bawa ke drive C, lalu pastikan di drive C anda telah tersedia folder TASM yang berisi software tasm dan tlink
3. Ketikkan Cd Tasm, maka sekarang anda sudah berada pada folder tasm
4. Pada posisi C:/Tasm> ketikkan “notepad namafile.asm”, dengan begitu maka akan terbuka sebuah window notepad yang bernama “namafile.asm” yang siap ditulisi program

Mulailah menuliskan sebuah program yang ingin anda buat, ada dua jenis program assembly yang bisa anda gunakan dan terapkan saat menulis program yaitu program COM dan program EXE, perbedaan dari keduannya adalah sebagai berikut

* PROGRAM COM :

- Lebih pendek dari file EXE

- Lebih cepat dibanding file EXE

- Hanya dapat menggunakan 1 segmen

- Ukuran file maksimum 64 KB (ukuran satu segment)

- sulit untuk mengakses data atau procedure yang terletak pada segment yang lain.

-100h byte pertama merupakan PSP(Program Segment Prefix) dari program

tersebut.

- Bisa dibuat dengan DEBUG

* PROGRAM EXE :

- Lebih panjang dari file COM

- Lebih lambat dibanding file COM

- Bisa menggunakan lebih dari 1 segmen

- Ukuran file tak terbatas sesuai dengan ukuran memory.

- mudah mengakses data atau procedure pada segment yang lain.

- Tidak bisa dibuat dengan DEBUG

contoh listing program yang di tulis pada notepad dengan tipe program EXE, listingnya adalah sebagai berikut

.model small ;merupakan besar memory(pilihannya yaitu ukuran tiny menggunakan 1 segment ( 64KB),small menggunakan data dan code <64KB,medium menggunakan data<64KB dan code >64KB, dan compact menggunakan Data > 64 KB serta Code < 64 KB .stack 100 ;register SS(Stack Segment) menunjukkan letak dari segmen yang digunakan oleh stack .data dataku db “Sistem Informasi” ;menulis karakter yang akan ditampilkan .code ;mulai menulis kode program proses: mov ax,@data ;mengambil segment data mov ds,ax xor bx,bx mov cx,16 ;tampat meletakkan jumlah karakter ulang: mov dl,dataku[bx] ;mengambil karakter dari db mov ah,02 ;servis 02 int 21h ;memprint caracter inc bx ;perintah mengulang loop ulang ;perintah pengulangan mov ax,4c00h int 21h ;menampilkan seluruh karakter end proses ;mengakhiri program Setelah itu simpan progam yang anda buat File> save

* Mulai compile file anda dengan cara :

Pada CMD setelah masuk pada C:\tasm> mulai dengan menulis “Tasm namafile.asm”

* Kemudian ketikan “Tlink namafile.obj”
* Lalu” dir namafile.*”
* Langkah terakhit tuliskan “Namafile” kemudian enter

Diatas merupakan salah satu contoh program EXE yang bertujuan menampilkan karakter yang anda inputkan. Sehingga pada gambar di atas bias anda perhatikan bahwa character ”sistem informasi ” yang kita inputkan telah berhasil dijalankan

Selanjutnya kita akan mencoba membuat program sederhana selanjutnya tapi sekarang dengan tipe program COM

tidak jauh beda saat menjalankannya dengan program EXE yaitu membuat satu lagi file notepad yang saya berinama “com.asm”.

* Setelah itu simpan progam yang anda buat File> save
* Mulai compile file anda dengan cara :

Pada CMD setelah masuk pada C:\tasm> mulai dengan menulis “Tasm com.asm”

* Kemudian ketikan “Tlink/t com.obj”
* Lalu” dir com.*”
* Langkah terakhit tuliskan “com” kemudian enter

Listing program pada program COM dan EXE memiliki perbedaan mencolok hanya pada segment saat menjalankan program seperti pada stack dan org100 yang memiliki fungsi yang sama hanya saja segment saat menjalankannya yang berbeda.








5. 5. Pemrograman AT89S51 Bahasa Assembly

Description: Active Image
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 dibanding 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

a.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)


b.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.
Berikut beberapa cara penggunaan software.
1. User dapat membuat program sistem single file maupun proyek (beberapa   file). Klik menu File lalu pilih New File.
2. Ketik program di window editing. Software menyediakan syntax highlighting otomatis, sehingga tiap assembly directive akan diberi warna ungu dan tiap instuksi akan diberi warna biru.
Description: Active Image

3. User dapat langsung mengcompile program dengan sekali klik icon Build (F9). Ketika ada kesalahan maka user dapat langsung ditunjukkan letak dan jenis kesalahan.
Description: Active Image

4. User dapat melakukan simulasi software untuk melihat hasil kerja program. Klik IDE mode (F2).
5. User dapat melakukan debugging, bahkan melihat hasil eksekusi per step (per baris)terhadap kondisi-kondisi register dan memori di mikrokontroler. Klik Step Into (F8).
Description: Active Image

Selanjutnya user dapat melakukan download program ke IC mikrokontroler untuk menguji hasilnya secara real di hardware.












KESIMPULAN

Bahasa rakitan bahasa pemrograman tingkat rendah yang digunakan dalam pemrograman komputermikroprosesorpengendali 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 denganbahasa-bahasa tingkat tinggi yang berlaku umum, bahasa rakitan biasanya mendukung secara spesifik untuk suatu ataupun beberapa jenis arsitektur komputer tertentu.































DAFTAR PUSTAKA


0 komentar:

Posting Komentar

Pages

Diberdayakan oleh Blogger.

Cari Blog Ini