BAB IV Teknik Pemrograman

Slides:



Advertisements
Presentasi serupa
Pilihan Perancangan Assembler One-Pass dan Multi-Pass Assembler
Advertisements

JWASM Input Keyboard.
Pemrograman Terstruktur
OPERASI ARITMATIKA OPERASI PENAMBAHAN 1. ADD
erna kumalasari nurnawati
ASSEMBLER PERTEMUAN KE-1
Frekuensi Quartz Crystal atau Ceramic Resonator (kedua istilah ini disebut Osilator) yang dapat digunakan berkisar antara 0 Hz hingga 24 MHz, bahkan.
Pertemuan 6 (Organisasi Input/Output)
Turbo Assembly Operasi Aritmatika.
MikrokontrolerSlamet Winardi Mikrokontroler SISTEM KOMPUTER.
Struktur CPU.
BAB IV MODE PENGALAMATAN
SOAL ESSAY KELAS XI IPS.
Mikrokontroller Berbasiskan RISC 8 bits
Set-Set Instruksi MCS-51 (Pendahuluan)
Teknik Pemrograman Mikrokontroller (Simbol Bhs Asembler) 1.Label Label menunjukkan alamat lokasi memori fisik yg berkaitan dg pernyataan yg diberi label.
Tipe-Tipe Instruksi MCS-51 (Arithmatika)
Soal-Soal Latihan Mandiri
Sistem Persamaan Diferensial
PENGERTIAN INTERRUPT VEKTOR INTERUPSI
POINTER A. PENDAHULUAN Tanpa pointer untuk memindahkan data dari suatu variabel ke register 8 bit, maka variabel tersebut haruslah 8 bit juga yang dapat.
Arsitektur Komputer “Mode Pengalamatan”
JWASM Macro.
BARISAN DAN DERET ARITMETIKA
Chapter 20 Pembentukan Kode.
Pemrograman Berorientasi Objek
Turbo Assembly Stack.
POLA BILANGAN.
Pengalamatan Bit Pengalamatan bit adalah penunjukan alamat lokasi bit baik dalam RAM internal (byte 32H sampai dengan 47H) atau bit perangkat keras. Untuk.
Turbo Assembly Masukan dari Keyboard.
Fitur Assembler Berorientasi Mesin (SIC/XE Assembler) Format Instruksi, Addressing Mode, dan Relokasi Program.
Pertemuan ke - 5 Struktur CPU
Pertemuan 3 Arsitektur Komputer II
Instruksi Percabangan
BAB VI MULTIPLE INTERRUPTS
Struktur CPU By Serdiwansyah N. A..
Situasi Saat Program Berjalan (Run-time Environment)
1 OLEH : EPYK SUNARNO JURUSAN TEKNIK ELEKTRO INDUSTRI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA 2007 B A H A.
BAB III RAM Internal pada MCS-51
MENJELASKAN SISTEM BILANGAN
Aritmatika Bilangan Biner
SET INTRUKSI & PEMOGRAMAMN ASSEMBLEY MCS 51
STATEMENT PRINT - INPUT
::. MATA KULIAH MIKROPROSESSOR.:: 09/04/101 :: MEMORI :: TEORI, IMPLEMENTASI & APLIKASI []
Statistika Deskriptif: Distribusi Proporsi
SEJARAH KOMPUTER GENERASI PERTAMA TABUNG VAKUM ENIAC
9. BILANGAN BULAT.
Erna Kumalasari Nurnawati
ORGANISASI KOMPUTER Mode Pengalamatan 10-Apr-17.
Sistem Mikroprosesor SMK NEGERI 29 JAKARTA.
WISNU HENDRO MARTONO,M.Sc
Operasi TIMER/COUNTER
1 Pengarah Pilihan Segmen Ada lima buah Pengarah Pilihan Segmen ( Segment Selection Directives ): CSEG, BSEG, DSEG, ISEG, XSEG, masing- masing menunjukkan.
10. Set Intruksi : Karakteristik dan Fungsi
Bahasa Mesin dan Assembly
Arsitektur Perangkat Lunak 8086
Mikrokontroler Materi 2
Pengenalan Assembler.
BAB IV Teknik Pemrograman
Pertemuan 3 (Bahasa Assembly)
Mode Pengalamatan &Jenis-Jenis Instruksi
Pengenalan Assembler.
PENGANTAR MIKROKONTROLER
KOMPUTER SIMPLE AS POSSIBLE (SAP-1)
ASSEMBLER #1 MK. PEMROGRAMAN SISTEM
TEK 2524 Organisasi Komputer
Ilustrasi kinerja CPU.
Memori & Pemrograman MCS-51
CHAP 6 SET INSTRUKSI MEMORI
Karakteristik Set Instruksi 14 JP. Karakteristik Set Instruksi Pengertian Set Instruksi Set instruksi adalah kumpulan dari instruksi yang dapat dijalankan.
Transcript presentasi:

BAB IV Teknik Pemrograman Proses Mikrokontroller membaca instruksi di memory adalah membaca kombinasi biner “0” dan “1” yang telah dirubah oleh assembler dari source program dalam bentuk kode-kode mnemonic.

Penyusunan source program adalah merupakan konversi dari permasalahan yang akan diselesaikan dengan mikrokontroller. Dimulai dari merubah permasalahan ke bentuk flowchart atau algorithma program, kemudian baru ditulis program assembler nya.

Untuk itu perlu memahami tata cara penulisan program dalam aturan yang baku, berikut diberikan contoh penulisan source program dengan struktur yang baku. Selanjutnya dari source program tersebut dirubah menjadi kode mesin (kombinasi “0” dan “1” )

STATUS EQU 20H.0 ;Bit 0 dari lokasi 20H ORG 0H ;Mulai alamat 0000H MULAI: MOV SP,#60H ;Set Stack Pointer pd 60H L1: MOV P1,#0AAH ; 1010 1010 B CALL DELAY MOV P1,#55H ; 0101 0101 B CALL DELAY SJMP L1 END DELAY: MOV R0,#100 L11: MOV R1,#10 L2: NOP DJNZ R1,L2 DJNZ R0,L11 RET

Label Opcode Operand Comment Jika diamati, pola penyusunan program dalam bahasa assembly adalah terdiri paling tidak 4 (empat) kolom, yaitu: Label, Operation Code, Operand dan Comment (komentar)

Hasil dari Source Program tersebut adalah kode-kode Biner yang selanjutnya diberikan ke memory atau langsung ke mikrokontroler yang menggunakan Internal ROM 0000 75 81 60 MULAI: MOV SP,#$60 0003 75 90 AA L1: MOV P1,#$AA 0006 12 00 11 LCALL DELAY 0009 75 90 55 MOV P1,#$55 000C 12 00 11 LCALL DELAY 000F 80 F2 SJMP L1 0011 78 64 DELAY: MOV R0,#$64 dst

Assembler Directive ( Pengarah Assembler ) Seperti telah disebutkan sebelumnya, pengarah assembler merupakan mnemonic yang akan diproses oleh Program Assembler. Berikut adalah pengarah assembler yang biasa digunakan untuk program – program assembler.

Kontrol Kondisi Assembler ORG ( Origin ) ORG digunakan untuk menunjukkan lokasi memori tempat instruksi atau perintah yang ada di bawahnya disimpan. Bentuk dari ORG adalah : ORG ekspresi

Contoh : ORG 2000H MOV DPTR, #4000H Di sini, perintah MOV DPTR, #4000H yang berada di bawah ORG 2000H akan terletak di alamat 2000H.

END END biasanya diletakkan di akhir baris dari file program sumber assembly sebagai tanda akhir pernyataan ( statement ) bagi program assembler dalam melakukan proses assembly. Bentuk dari END adalah : ........

USING Bentuk dari USING adalah : USING Ekspresi Pengarah assembler ini digunakan oleh program assembler ( ASM51 ) untuk menentukan register bank yang aktif sehingga lambang – lambang yang didefinisikan terlebih dahulu oleh program assembler, seperti AR0 hingga AR7 dapat menunjuk sesuai dengan alamat yang ditentukan oleh register bank yang aktif

Contoh 1. Using 3 Push AR7 Perintah Push AR7 yang diawali dengan using 3 menunjukkan bahwa R7 yang terletak di Register Bank 3, yaitu 1FH sehingga setelah dilakukan proses assembly, perintah tersebut akan menghasilkan kode operasi yang sama dengan Push 1FH yaitu C0 1F.

Contoh 2. Using 0 Push AR7 Perintah Push AR7 yang diawali dengan using 0 menunjukkan bahwa R7 yang terletak di Register Bank 0, yaitu 07H sehingga setelah dilakukan proses assembly, perintah tersebut akan menghasilkan kode operasi yang sama dengan Push 07H yaitu C0 07

Pengarah assembler ini hanya berfungsi bagi program assembler untuk menentukan bank yang aktif saja dan tidak mengubah nilai bit – bit RS0 dan RS1 di Register PSW dari MCS-51 sehingga perlu ditambahkan perintah-perintah yang mengatur nilai RS0 dan RS1 terlebih dahulu. Dengan demikian, mikrokontroler juga mengenai register bank yang aktif saat itu.

Contoh 3. Using 0 Push AR7 Using 3 Mov R7,#05 Setb RS1 Setb RS0 Mov R7,#00

Definisi Lambang EQU ( Equate ) EQU digunakan untuk mendefinisikan sebuah simbol atau lambang assembler secara bebas. Contoh : Bilangan EQU 50H Mov A,#Bilangan Pada perintah di atas, akumulator diisi dengan konstanta “bilangan”. Konstanta ini telah didefinisikan sebelumnya dengan nilai 50H dengan menggunakan assembler directive EQU.

SET Sama dengan pengarah EQU, pengarah SET digunakan untuk mendefinisikan lambang assembler secara bebas. Perbedaan dengan pengarah EQU adalah pengarah ini dapat didefinisi ulang seperti pada

Contoh berikut: POINTER SET R0 ; Lambang pointer didefinisikan ; sama dengan R0 POINTER SET R1 ; Lambang pointer kembali ; didefinisikan sebagai R1

BIT Pengarah Bit digunakan untuk mendefinisikan suatu lambang yang menunjuk ke suatu lokasi bit pada memori yang dapat dialamati secara pengamatan bit. Contoh : Flag Bit 0 ; Lambang flag menunjukkan ke ; lokasi 0 secara pengamatan bit

CODE Pengarah CODE digunakan untuk menyatakan alamat yang dilokasikan dalam area memori program dengan sebuah lambang. Nilai dari alamat tersebut tidak boleh melebihi 65535 atau FFFFH. Contoh. RESET CODE 0 EXTIO CODE RESET + (1024 / 16)

DATA Pengarah DATA digunakan untuk menyatakan secara langsung alamat pada memori internal dengan sebuah lambang. Alamat yang di mulai dari 00 hingga 7FH menunjukkan RAM Internal dan alamat 80H hingga FFH menunjukkan alamat dari Register Fungsi Khusus. Contoh : BUFFER DATA 32H ; Lambang buffer menunjukkan ; alamat 32H

IDATA Pengarah IDATA digunakan untuk menyatakan alamat RAM Internal dalam sebuah lambang dengan pengalamatan tidak langsung. Alamat tersebut dapat dimulai dari 00 hingga FFH. Contoh : BUFFER IDATA 30H BUFFER2 IDATA BUFFER+1

SektorEksternal1 XDATA 2000H XDATA digunakan menyatakan alamat yang ada pada memori eksternal dalam sebuah lambang. Nilai dari alamat ini tidak boleh melebihi 65535 atau FFFFH. Contoh : SektorEksternal1 XDATA 2000H SektorEksternal2 XDATA SektorEksternal1+2000H