MICROPROSESSOR ASEMBLY (REGISTER)

dokumen-dokumen yang mirip
Pemrograman Assembler dengan Debug

Daftar Isi. Daftar Isi Pertemuan 2: Pengenalan Debug dan Interrupt P2.1. Teori Pengenalan DEBUG... 3

PERTEMUAN : 4 EKSPLORASI DEBUG

MEMULAI MEMPROGRAM DI DOS. Struktur Assambler. Menggunakan Debug dari DOS

PROGRAM STUDI TEKNIK KOMPUTER JURUSAN TEKNIK KOMPUTER POLITEKNIK NEGERI SRIWIJAYA PALEMBANG TK Praktikum Bahasa Rakitan Hand On Lab 4

Diktat Kuliah intel 8088

MODUL I PENGENALAN ASSEMBLY

MODUL V STACK dan PENGENALAN PROCEDURE

Mata Kuliah : Bahasa Rakitan

Diktat Kuliah Instruksi dan Segmentasi

Kuis : Bahasa Rakitan (UAS)

Diktat Kuliah Organisasi dan Interaksi

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088

0F9C:0000 9A00009E0F CALL 0F9E:0000 0F9C: PUSH BP 0F9C: E5 MOV BP,SP 0F9C: C0 XOR AX,AX 0F9C:000A 9ACD029E0F CALL 0F9E:02CD

Mikroprosesor. Pertemuan 8. By: Augury

REGISTER Register-register yang terdapat pada mikroprosesor, antara lain :

Eksplorasi Prosesor 8086 Dengan Program DEBUG

Pada pembahasan kali ini, digunakan instruksi MOV untuk menjelaskan mode pengalamatan data. Format penulisannya adalah :

MIKROPROSESOR REGISTER-REGISTER MIKROPROSESOR INTEL

ORGANISASI DAN ARSITEKTUR KOMPUTER. rsp oak informatika

Sistem Komputer. Komputer terdiri dari CPU, Memory dan I/O (Arsitektur Von-Neumann) Ada tiga bus dalam sistem komputer

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM POINTER OPERASI ARITMATIKA

R E G I S T E R. = Code Segment Register = Data Segment Register = Stack Segment Register = Extra Segment Register. 3.

IMPLEMENTASI PENGISIAN REGISITER DATA DAN OPERASI ARITMATIKA MENGGUNAKAN PROGRAM COMMAND PROMPT, BAHASA ASSEMBLER

Diktat Kuliah - Pipeline

Dosen : Team (no cheating, no book, no note, no additional paper, no calculator)

7.Lokasi hasil pemrosesan

Mikroprosesor. Bab 3: Arsitektur Mikroprosesor. INTEL 8086 Generasi Awal Prosesor PENTIUM. Arsitektur Mikroprosesor 1

BAB 3 MODE AKSES MEMORI, PENGGUNAAN VARIABEL DAN STACK

LAPORAN PRAKTIKUM ORGANISASI KOMPUTER & BAHASA ASSEMBLY PROGRAM OPERASI ARITMATIKA. Kelas : INF 2B Praktikum 1 Nama : Fernalia NIM : J3C212210

Sistem Bilangan & Dasar Assembler Dadang Mulyana

PETA MEMORI MIKROPROSESOR 8088

Daftar Isi. Daftar Isi Pertemuan 6: Perintah Masukkan dari Keyboard P6.1. Teori Masukkan dari Keyboard... 3

BAB VIII OPERASI ARITMATIKA

BAB IV IMPLEMENTASI DAN PENGUJIAN IMPLEMENTASI DAN PENGUJIAN

Mode Pengalamatan (Addressing Mode) Keluarga Prosesor 8086

MODUL III FLOW CONTROL INSTRUTIONS

SISTEM KERJA MIKROPROSESOR

Kuliah 3: 3.1. Debugging dan TASM 3.2. Interrupt

Diktat Kuliah Instruksi Mesin

Mata Kuliah : Bahasa Rakitan Materi ke-3

Memory. Klasifikasi. Hirarki Memory

MODE PENGALAMATAN PROGRAM MEMORI

PERINTAH-PERINTAH DASAR (UMUM)

SATUAN ACARA PERKULIAHAN Mata Kuliah: BAHASA RAKITAN Jurusan / Jenjang / Kode / SKS : SI / D3 / KK /2

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016

Instruksi-Instruksi Pemindahan Data. Sistem Komputer Universitas Gunadarma

Arsitektur Set Instruksi. Abdul Syukur

Organisasi & Arsitektur Komputer

Karakteristik Instruksi Mesin

a b a AND b a OR b a XOR b a NOT a

BAB 3 UNIT KONTROL. Universitas Gadjah Mada 1

PERTEMUAN : 3. Jurusan Teknik Informatika STT PLN. Riki Ruli S -

MODUL PRAKTIKUM ORGANISASI SISTEM KOMPUTER

KONFIGURASI PIN-PIN MIKROPROSESOR Z 80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

BAB III ALGORITMA DAN PERANCANGAN ALGORITMA DAN PERANCANGAN

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

Mode Pengalamatan. Sistem Komputer Universitas Gunadarma

Microcontroller: Bahasa Pemrograman Assembly 8051

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan

Bahasa rakitan/assembly Language

BAB II LANDASAN TEORI LANDASAN TEORI

Arsitektur dan Organisasi Komputer Set Intruksi

Simple As Possible (SAP) - 2. Abdul Syukur

Pertemuan ke 7 Mode Pengalamatan. Computer Organization Eko Budi Setiawan

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

KALKULATOR ASSEMBLY Lutfi Budi Ilmawan

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR STACK DAN SUBROUTINE

PEMROGRAMAN BAHASA RAKITAN

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT.

NAMA : FATIH SILMI MHD NIM : BAHASA MESIN DI DALAM DEBUG.COM

Disusun Oleh Kelompok 5 : Abdul Haris Nabu Muh. Eka A.P Paputungan Afner Mengi Deasry Potangkuman Aufry Masugi Adel Mamonto

Bahasa Rakitan By Okti Yudhanti Nur K REGISTER

INSTRUKSI DASAR Salahuddin, SST.

PERCOBAAN 5 STACK DAN SUBROUTINE. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

ORGANISASI SISTEM KOMPUTER & ORGANISASI CPU Oleh: Priyanto

Kumpulan instruksi lengkap yang dimengerti

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS :

2. Unit Praktikum Perhitungan Aritmatika

Bab 1. Pemrograman dan Bahasa Rakitan. 1.1 Pendahuluan

William Stallings Computer Organization and Architecture. Chapter 9 Set Instruksi: Karakteristik dan Fungsi

Set Instruksi. Set Instruksi. Set Instruksi adalah kumpulan

ORGANISASI KOMPUTER INSTRUKSI MESIN DAN PROGRAM MATA KULIAH:

ARSITEKTUR KOMPUTER SET INSTRUKSI

SET INSTRUKSI. Organisasi dan Arsitektur Komputer

BAB 4 STACK AREA, SUBROUTINE dan INSTRUKSI BLOK

Simple As Possible (SAP) - 2. Abdul Syukur

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM I MODEL PEMROGRAMAN 1

DASAR KOMPUTER. Assembly Language

Mikroprosessor & Antarmuka

Hanif Fakhrurroja, MT

8/4/2011. Microprocessor & Microcontroller Programming. Sistem Bilangan. Sistem Bilangan. Sistem Bilangan. Sistem Bilangan

Operasi Transfer Data

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

ORGANISASI KOMPUTER DASAR

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

Transkripsi:

MICROPROSESSOR ASEMBLY (REGISTER) D I S U S U N OLEH: Nama : Indah Dwi Ramyani NPM : 11105111281 Kelas : 5 YAYASAN PEMBANGUNAN KAMPUS JABAL GHAFUR UNIVERSITAS JABAL GHAFUR SIGLI FAKULTAS TEKNIK INFORMATIKA KOMPUTER

Daftar Isi BAB.I DEBUG 1.1 Definisi DEBUG 1.2 Perintah DEBUG 1. Register 2. D (dump) 3. U (unassamble) 4. E (enter ) 5. F (fill) 6. C (compare) 7. S (search) 8. M (move) 1.3 Intruksi Miccroposesor 1.4 Operasi, Operator, dan Operand 1.5 Operasi Transfer Data 1.6 Operasi Aritmatik 1.7 Operrasi Logika

BAB 1 DEBUG 1.1 DEFINISI DEBUG DEBUG adalah alat bantu dalam perancangan peralatan berbasis mikroprosesor, Karena dapat mencapai tingkat perangkat keras yang paling dalam dari suatu komputer, missal menulis informasi kedalam boot sector, direktori, FAT, menjalankan interupsi BIOS atau DOS. Hal-hal penting dalam Debug : Hanya mengenal dan selalu bekerja dengan bilangan-bilangan heksa desimal Bekerja dengan penunjukan kealamat-alama tmemori memakai format segment : offset. Kemampuan mengakses daerah "very low level access" (software / hardware). Setiap jenis komputer (mainframe, minicomputer, microcomputer) memiliki sarana debugging berbeda. Langkahmengaktifkan DEBUG.EXE / DEBUG.COM : a> Debug - 1.2 PERINTAH DEBUG 1. R (Register) Untuk menampilkan informasi komposisi register-register di dalam mikroprosesor, alamat memori, serta isi dari alamat memori tersebut yang mungkin berupa instruksi yang akan dilaksanakan oleh komputer, atau data. A:\>DEBUG r AX=0000 BX=0000 CX=0000 DX=0000 SP=FFEE BP=0000 SI=0000 DI=0000 DS=29E7 ES=29E7 SS=29E7 CS=29E7 IP=0100 NV UP EI PL NZ NA PO NC 29E7:0100 0114 ADD[SI],DX DS:0000=20CD - AX, BX, CX, DX, SP, BP, SI, DI, DS, ES, SS, CS, dan IP adalah register internal mikroprosesor yang dipakaidalam CPU. - NV, UP, EI, PL, NZ, NA, PO, dan NC adalah output dari sebuah register yang disebut register status atau register flag. - Angka 29E7:0100 adalah alamat lokasi memori dengan format segment:offset. Kedua nilai tersebut merupakan kombinas antara register CS (Code Segment) dengan IP (Instruction Pointer). 0114 adalah isi alamat memori bersangkutan, byte ke-1

berisinilai '01', dan byte ke-2 berisinilai '14'.Karena setiap alamat memori berisi satu byte, tentunya nilai 01 itulah yang berdiam pada alamat offset 0100, sedangkan nilai 14 ada di alamat 0101 ADD[SI],DX adalah terjemahan intruksi dari alamat memori bersangkutan. Untuk mengubah nilai-nilai register internal dapat menggunakan perintah : RAX = mengubahnilai register AX RBX = mengubahnilai register BX RCX = mengubahnilai register CX RDX = mengubahnilai register DX RSP = mengubahnilai register SP RBP = mengubahnilai register BP RSI = mengubahnilai register SI RDI = mengubahnilai register DI RDS = mengubahnilai register DS RES = mengubahnilai register ES RSS = mengubahnilai register SS RCS = mengubahnilai register CS RIP = mengubahnilai register IP Sebagaicontohuntukmengubahnilai register AX darinilai '0000' kenilai'1111' : A:\>Debug -RAX AX 0000 : 1111 (diisisetelah ':' dan enter) Contoh diatas juga berlaku untuk register internal lainnya dan untuk diperhatikan bahwa angka-angka yang dimasukkan kedalam register harus nilai heksa desimal. 2. D (Dump) Berfungsi untuk melihatisi blok memori. A:\>Debug -d 0100 Hasil yang diperoleh : (import dari sidekick ke text!) Dari tampilan tersebut, terbagi menjadi 3 bagian, yaitu : - Bagiankiri : menampilkan alamat-alamat memori dengan format segment :offset

- Bagian tengah : menampilkanangka-angka dalam heksa decimal sebagai isi dari alamat-alamat memori - Bagian kanan : menampilkan kode-kode karakter ASCII sebaga iterjemahan dari angka heksa decimal tersebut Debug hanya aka nmemperlihatkan 96 jenis karakter ASCII tercetak (printable character), mulai dari nilai desimal 33-127. Di luar nilai itu, karakter yang ditampilkan hanyalah berupa tanda titik (dot atau period). Beberapa parameter yang dapatdigunakan : L (length / panjang)memiliki arti menampilkan data sepanjang 2 byte, bila parameter 'L' tidak diberikan, maka otomatis akan ditampilkan 128 byte data. -D 0100 L 2 Alamat awal - alamatakhir -D 0100 01FF Alamats egment:offset -D FFFF:0000 Alamat segment:offsetsampaisegment:offset -D F000:E000 F000:E000 3. U (Unassemble) Berfungsi untuk menampilkan listring dar isuatu program bahasa mesin. A:\>Debug -U FFFF:0000 Hasil : import dari sidekick ke text! Beberapa bentuk perintah'u' : U F000:E05B 4. E Berfungsi untuk mengisi atau mengubah data dalam memori. A:\>Debug -E 0100

Hasil : -E 0100 29E7:0100 01. Setelah angka 01, dapat dimasukkan nilai untuk mengganti angkat tersebut langsung di belakangnya yang diakhir dengan menekan ENTER atau menekan SPACE BAR untuk berpindah ke alamat berikutnya atau menekan tanda '-' (Hyphen) untu kmundur ke lokasi sebelumnya. 5. F (Fill) Berfungsi untuk mengisilokasi memori.perbedaan dengan perintah 'E (Enter)', yang menawarkan modifikasi memori secara satu alamt demi satu alamat, sedang 'F (Fill" untuk mengubahisi alamat memori dalam jumlah besar, sesuai dengan rentang (range) yang dikehendaki. A:\>Debug -F 0100 017F 58 Berarti isilah mulai alamat offset 0100 sampai offset 017F dengan nilai heksa 58 (karakter ASCII 'x'). Atau - F F 0100 017F 'x' Beberapa bentuk perintah'f' : F 0100 L 1 41 Arti :mulai offset 0100 sebanyak 1 byte di isi dengan nilai heksa 41 (karakter ASCII 'A'). 6. C (Compare) lainnya. Berfungsi untuk membandingkan isi sebuah blok memori dengan isi blok memori Format perintah : C alamat1 panjang alamat2 A:\>Debug -C 0100 L 10 0200

Berarti mulai offset 0100 sebanyak 16 byte (10 heksa) bandingkan dengan offset 0200. Hasil yang dimunculkan hanyalah nilai-nilai yang berbeda setiap alamat.apabila dilayar tidak memberikan reaksi apapun selain kembali ke prompt '-' atau hyphen, berarti kedua blok memori persis sama. 7. S (Search) Berfungsi untuk mencari data baik yang berupa karakter maupun untaian karakter (string) di dalam suatu blokmemori tertentu. Apabila dalam pencarian, data yang dicari diketemukan, maka akan ditampilkan semua alamat dari data tersebut lengkap dengan nilai segment danoffsetnya, sebaliknya bila tidak diketemukan akan kembal ike prompt '-'. Format perintah : S alamatawalpanjangalamatakhir A:\>Debug -S F000:E000 L FF "IBM" Berartimulaialamat F000:E000 sebanyakffh byte cari string "IBM". -S F000:E000 L FF "A" Berartimulaialamat F000:E000 sebanyakffh byte cari string "A".. 8. M (Move) Berfungsi untuk memindahkan ata menyalin data yang ada di suatu lokasi memori ke alamat memori lainnya. Format perintah : M alamat asal panjang alamat tujuan A:\>Debug -M 0100 L 7F 0200 Berarti mulai alamatoffset 0100sebanyak 7Fh byte isi memorinya pindahkan atau kopikan ke offset 0200. Dari pembahasan perintah-perintah DEBUG dapat disimpulkan bahwa DEBUG dibuat dengan tujuan untuk dapat mengeksplorasi program-program yang sudah dibuat berikut segala dampaknya terhadap system dan aplikasi, sedangkan ASSEMBLY diadakan dengan untuk mempermudah seorang programmer dalam menyusun instruksi-instruksi pada sebuah program yang sedangdibuat.

1.3 INSTRUKSI-INSTRUKSI MIKROPROSESOR Untuk dapat mempergunakan serta memanfaatkan sebuah mikroprosesor, kita harus mengenal terlebih dahulu instruksi-instruksi yang bias dijalankan oleh mikroprosesor yang bersangkutan.karena pada hakekatnya, seluruh kemampuan yang ada pada mikroprosesor terletak pada kecanggihan perintah-perintah yang terdapat didalamnya.tanpa adanya instruksi-instruksi yang membentuk sebuah program, mikroprosesor tidak lebih hanya merupakan serpihan tanpa guna.setiap mikroprosesor mempunyai perbendaharaan instruksi sendiri-sendiri, yang disebut dengan 'Set Instruksi' atau 'Instruction Set'. 1.4 Operasi, Operator dan Operand Pada dasarnya mikroprosesor mampu melakukan beberapa jenis operasi, antara lain operasi perhitungan (arithmetic), operasilogika (logical operation), operasi transfer data (data transfer operation), manipulasi string serta kendali prosesor.masing-masing jenis instruksi tersebuta dalah sebagai berikut : a. Perhitungan ADD (penjumlahan), SUB (pengurangan), MUL (perkalian), DIV (pembagian) b. Logika AND (logika DAN), OR (logika OR), XOR (logika Exclusive OR) c. Transfer Data MOV (pindahkan/salin), IN (Input), OUT (Output), dansebagainya. d. Transfer Kendali JMP (loncat), CALL (panggil), RET (kembali), INT (interupsi), dsb e. Manipulasi String MOVS (pindahkan/salin string), CMPS (bandingkan string), LODS (muatkanbyte/word ke register AX), dansebagainya. f. KendaliProsesor CLC (hilangkanbawaan/carry), CLI (hilangkaninterupsi), dansebagainya. Pada instruksi-instruksi komputeri, operator diterapkan sebagai Operation-Code (Op-Code), sedangkan bilangan disebut Operand (adalah obyek dari suatu operasi). 1.5 Operasi Transfer Data 1. Pemindahan data dari data register ke register Format : MOV register, register -a 0100 xxxx : 0100 mov AX,DX xxxx : 0102

2. Pemindahan data dari memori ke register Format : MOV register, memori -a 0100 xxxx : 0100 mov BX,[0200] xxxx : 0104 3. Memindahkan data langsung kedalam register Format : MOV register, bilangan -a 0100 xxxx : 0100 mov AX,1111 xxxx : 0103 mov BX,2222 xxxx : 0106 mov CX,3333 xxxx : 0109 mov DX,4444 xxxx :010C -a 0100 xxxx : 0100 mov AH,FFFF xxxx :010C Apa yang terjadi?berialasan! 4. Memindahkan data dari register kememori Format : MOV memori, register -a 0100 xxxx : 0100 mov [0200],AX xxxx : 0103 5. Pertukaran data antar register Format : XCHG register, register -a 0100 xxxx : 0100 xchg AX,BX xxxx : 0102 1.6 Operasi Aritmatik 1. Menjumlahkan dua bilangan dengan perintah ADD Format : ADD register,register 2. Mengurangkan dua bilangan dengan perintah SUB Format : SUB register,register 3. Perkalian dua bilangan dengan perintah MUL Format : MUL register 4. Membagi dua bilangan dengan perintah DIV Format : DIV register

1.7 Operasi Logika 1. Instruksi logika AND Format : AND register,register 2. Instruksil ogika OR Format : OR register,register 3. Instruksi logika XOR Format : XOR register,register