Simple As Posible 2 (bag-2)

dokumen-dokumen yang mirip
Instruksi logika (1) Memanipulasi isi Accumulator, dibagi menjadi 2. Panjang instruksi : 1 byte. Panjang instruksi : 2 byte

Simple As Posible 2 (bag-1)

Arsitektur SAP-2 W BUS ACKNOWLEDGE HEXADECIMAL KEYBOARD ENCODER ACCUMULATOR INPUT PORT 1 ALU FLAGS READY INPUT PORT 2 SERIAL IN PROGRAM COUNTER TMP

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

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2

Simple As Possible (SAP) - 2. Abdul Syukur

Pendahuluan (1) D E F

Simple As Possible (SAP) - 2. Abdul Syukur

Simple As Posible - 1

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

BAB VII KOMPUTER SEDERHANA SAP-3 (SIMPLE AS POSSIBLE-3)


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

RUNNING TEXT. Gambar 1. Susunan Running Text

Memprogram Port sebagai Output dan Input Sederhana

Simple As Possible. SAP 1 ( Simple As Possible) Arsitektur 11/18/2011. Referensi :

Simple As Possible (SAP) - 1. Abdul Syukur

Disusun oleh: Endro Ariyanto. Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

Simple As Possible (SAP) - 1. Abdul Syukur

Eksekusi instruksi Tipe R, LW-SW, Beq, dan Jump (Pertemuan ke-24)

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

ARSITEKTUR KOMPUTER SET INSTRUKSI

BAHASA PEMROGRAMAN MIKROKOMPUTER

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

Kumpulan instruksi lengkap yang dimengerti

Eksekusi instruksi Tipe R, LW-SW, Beq, Jump, dan Model Pengalamatan (Pertemuan ke-24)

INSTRUKSI DASAR Salahuddin, SST.

Set Instruksi: Set instruksi?

Microcontroller: Bahasa Pemrograman Assembly 8051

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

BAB VIII REGISTER DAN COUNTER

Memprogram Interface Motor

DT-51 Application Note

Konsep Organisasi dan Arsitektur Komputer (Pertemuan ke-2)

BAB 3 MODE AKSES MEMORI, PENGGUNAAN VARIABEL DAN STACK

I/O dan Struktur Memori

ARSITEKTUR SET INSTRUKSI. Ptputraastawa.wordpress.com

Memprogram Interface Display

Ringkasan Set Instruksi Dan Mode pengalamatan ( Addressing Mode )

BAB IV PENGUJIAN DAN ANALISA DATA

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

Sistem Bus (Pertemuan ke-10)

1 IDENTITAS. A. Dasar Teori A.1 SAP Pengantar. 2. Arsitektur. Kajian Simple As Possible Computer (SAP-1) Topik Pemrograman SAP-1

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

ORGANISASI KOMPUTER DASAR

PERTEMUAN BAHASA PEMOGRAMAN ASSEMBLER

MODUL III FLOW CONTROL INSTRUTIONS

PORT PARALEL MIKROKONTROLER ATMEL AT89C51

Mengenal bahasa assembly

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan)

UJIAN AKHIR SEMESTER TAHUN AKADEMIK 2010/2011

BAB 3 PERANCANGAN ALAT DAN PROGRAM

Program di computer (visual basic) Private Sub Command1_Click() End Sub. Private Sub Command2_Click() End Sub. Private Sub Command3_Click() End Sub

Perangkat dan format Instruksi, Immediate, Direct, & Indirect Addressing

2. Unit Praktikum Perhitungan Aritmatika

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

LAMPIRAN D DATA SHEET

BAB 2 Pemrograman Zilog Z80

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR APLIKASI DASAR INSTRUKSI ARITMATIKA DAN OPERASI LOGIK

Programmable Peripheral Interface 8255

7.Lokasi hasil pemrosesan

PERCOBAAN 3 INSTRUKSI ARITMATIK DAN LOGIK. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY

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

CENTRAL PROCESSING UNIT (CPU) Sebuah mesin tipe von neumann

Tabel Perbandingan ROM dan RAM pada beberapa seri ATMEL

DT-51 Application Note

PERTEMUAN MINGGU KE-5 ARSITEKTUR SET INSTRUKSI

PORT SERIAL MIKROKONTROLER ATMEL AT89C51

Arsitektur Set Instruksi. Abdul Syukur

Organisasi & Arsitektur Komputer

Gambar 1.1. Diagram blok mikrokontroller 8051

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR INSTRUKSI PERCABANGAN DAN LOOP

Transfer Register. Andang, Elektronika Komputer Digital 1

Disusun oleh: Endro Ariyanto (END) Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom

INTRUKSI-INTRUKSI BAHASA PEMROGRAMAN ASSEMBLY

Mikroprosessor 2014 Telkom University

Aplikasi Pengukur Ketinggian Air Mengunakan Modul Sensor InfraRed Object Detector

Encoder, Multiplexer, Demultiplexer, Shifter, PLA

9. Instruksi Lanjut pada PLC Omron

MODUL I PENGENALAN ASSEMBLY

Menggunakan Bahasa Pemrograman Assembly

9. INSTRUKSI LANJUT PADA PLC OMRON

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan

Materi 4: Microprocessor-Based Control

Model Mikroprosesor Ideal Konsep Data Bus Ruang Memori Konsep Address Bus Konsep Control Bus Pemetaan Memori

BAHASA PEMOGRAMAN MIKROPROSESOR Z80. Yoyo somantri Dosen Jurusan Pendidikan Teknik Elektro FPTK Universitas Pendidikan Indonesia

Input/Output. (Pertemuan ke-9) Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom. Diedit ulang oleh: Endro Ariyanto

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

Teknologi Scalar untuk meningkatkan Kinerja Prosesor

Arsitektur Prosesor MIPS Multi Siklus (Pertemuan ke-27)

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

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ

DASAR INPUT/OUTPUT (2) (PORT PPI DAN PORT 1 SEBAGAI INPUT/OUTPUT)

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

PETUNJUK PEMROGRAMAN DAN SET INSTRUKSI

DASAR INPUT/OUTPUT (1) (PORT PPI DAN PORT 1 SEBAGAI OUTPUT)

Transkripsi:

Simple As Posible 2 (bag-2) (Pertemuan ke-18) Disusun ulang oleh: Andrian Rakhmatsyah Diedit ulang oleh: Endro Ariyanto Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom Maret 2016

Instruksi logika (1) Memanipulasi isi Accumulator, dibagi menjadi 2 1. Operand kedua adalah register B dan C Panjang instruksi : 1 byte Format : Opcode Contoh : ANA B 2. Operand kedua adalah nilai konstanta Panjang instruksi : 2 byte Format : Opcode, byte Contoh : ANI C7H Organisasi dan Arsitektur Komputer CSG2G3/2016 #1

Instruksi logika (2) Instruction Opcode T Flags Addressing Bytes Arti ANA B A0H 4 S, Z Register 1 A A AND B ANA C A1H 4 S, Z Register 1 A A AND C ANI byte E6H 7 S, Z Immediate 2 A A AND byte CMA 2FH 4 None Implied 1 A A ORA B B0H 4 S, Z Register 1 A A OR B ORA C B1H 4 S, Z Register 1 A A OR C ORI byte F6H 7 S, Z Immediate 2 A A OR byte XRA B A8H 4 S, Z Register 1 A A XOR B XRA C A9H 4 S, Z Register 1 A A XOR C XRI byte EEH 7 S, Z Immediate 2 A A XOR byte Organisasi dan Arsitektur Komputer CSG2G3/2016 #2

Instruksi logika (3) MVI A, 02H ; A 0000 0010 2 MVI B, 00H ; B 0000 0000 2 MVI C, 01H ; C 0000 00001 2 ANA B ; A 0000 0010 2 AND 0000 0000 2 ANI 00H ; A 0000 0000 2 AND 0000 0000 2 ORA C ; A 0000 0000 2 OR 0000 0001 2 XRI 00H ; A 0000 0001 2 XRI 0000 0000 2 HLT ; A 0000 0001 2 Organisasi dan Arsitektur Komputer CSG2G3/2016 #3

Instruksi Lainnya Instruction Opcode T Flags Addressing Bytes Arti NOP 00 4 None - 1 No Operation (delay) HLT 76 5 None - 1 Stop Processing IN byte DB 1 0 None Direct 2 A byte OUT byte D3 1 0 None Direct 2 Port byte A RAL 17 4 None Implied 1 Rotate All Left RAR 1F 4 None Implied 1 Rotate All Right Organisasi dan Arsitektur Komputer CSG2G3/2016 #4

NOP (No Operation) (1) Selama eksekusi, tidak akan terjadi apapun pada 4 keadaan T Termasuk isi register tidak akan berubah Disebut instruksi waste time Kadang-kadang diperlukan jika dalam suatu loop yang banyak, misalnya 100 kali. Jika terdapat sebuah instruksi NOP sekali dalam loop tersebut maka akan terdapat waktu tunda (delay) sebanyak 400 T Organisasi dan Arsitektur Komputer CSG2G3/2016 #5

NOP (No Operation) (2) Contoh, SAP-2 memiliki clock = 1 MHz. Berapa waktu yang dibutuhkan oleh subrutin di bawah ini? Label Mnemonik Komentar MVI C, 46H ; C 70 d LAGI : DCR C ; C C 1 JNZ LAGI ; Lompat jika Z = 0 NOP ; Tunda RET Organisasi dan Arsitektur Komputer CSG2G3/2016 #6

NOP (No Operation) (3) Diket: clock f = 1 MHz T 1 6 f 1 10 s 1 6 10 s Jawab : instruksi dieksekusi x T states x T MVI = 1 x 7 x 1 µ = 7 µs DCR = 70 x 4 x 1 µ = 280 µs JNZ = 69 x 10 x 1 µ = 690 µs (jika terjadi lompatan) JNZ = 1 x 7 x 1 µ = 7 µs (tidak terjadi lompatan) NOP = 1 x 4 x 1 µ = 4 µs RET = 1 x 10 x 1 µ = 10 µs = 998 µs 1 ms Organisasi dan Arsitektur Komputer CSG2G3/2016 #7

Contoh Instruksi IN dan OUT Tunjukkan sebuah program yang dapat menginputkan sebuah byte dari input port 1 dan menentukan apakah bit ke-0 bernilai 1 atau 0. Jika bit tersebut adalah 1 maka isikan akumulator dengan huruf Y dan jika 0 isikan N (ASCII : Y = 89 desimal ; N = 78 desimal). Jawaban bit Y atau N ditampilkan di Hexadecimal Display! Jawab : Label Mnemonik Komentar IN 01H ; A byte ANI 01H ; Cek bit ke-0 bernilai 0 atau 1 JZ YES ; Lompat jika bit ke-0 bernilai 0 (Nol) MVI A, 59H ; A 89 ( Y ) JMP END ; Lompat YES: MVI A, 4EH ; A 78 ( N ) END: OUT 03H ; Tampilkan ke Hexadecimal Display HLT ; Selesai Organisasi dan Arsitektur Komputer CSG2G3/2016 #8

Instruksi RAL dan RAR (1) RAL, mnemonik dari rotate the accumulator left yaitu menggeser semua bit ke kiri dan memindahkan posisi bit-msb ke posisi bit-lsb RAR, mnemonik dari rotate the accumulator right yaitu menggeser semua bit ke kiri dan memindahkan posisi bit-lsb ke posisi bit-msb MSB RAL LSB MSB RAR LSB Organisasi dan Arsitektur Komputer CSG2G3/2016 #9

Instruksi RAL dan RAR (2) 1111 0000 RAL 1111 0000 RAR 1110 0001 0111 1000 Organisasi dan Arsitektur Komputer CSG2G3/2016 #10

Output Serial Tunjukkan program pada halaman 8, jika output diubah menjadi keluaran SERIAL! Jawab : Label Mnemonik Komentar IN 01H ; A byte ANI 01H ; Cek bit ke-0 bernilai 0 atau 1 JZ YES ; Lompat, jika bit ke-0 bernilai 0 MVI A, 59H ; A Y JMP END ; Lompat YES: MVI A, 4EH ; A N END: MVI C, 08H ; C 8 REPEAT: OUT 04H ; Kirimkan bit LSB pada A ke Port 4 RAR ; Putar bit LSB menjadi bit MSB DCR C ; C C 1 JNZ REPEAT ; Lompat, jika C 0 HLT Organisasi dan Arsitektur Komputer CSG2G3/2016 #11

Handshaking (1) Handshaking adalah proses interaksi antar a CPU dengan peripheral device yang berlangsung selama pemindahan data ke I/O. SKENARIO: Setelah 2 digit (1 byte) dimasukkan lewat hexadecimal encoder, data dimasukkan ke input port 1, sekaligus pada waktu yang bersamaan input port 1 mengirimkan bit READY ke port 2. Sebelum data dari input port 1 masuk ke akumulator, CPU memeriksa bit READY pada Port 2 Jika bit READY = 0 (Low) maka CPU akan menunggu. Jika bit READY = 1 (High), data dari port 1 dimasukkan ke Akumulator Setelah data diterima akumulator, bit ACKNOWLEDGE dikirimkan oleh Akumulator ke port 4 untuk selanjutnya dikirimkan ke Hexadecimal encoder untuk mereset bit READY pada port 2 Organisasi dan Arsitektur Komputer CSG2G3/2016 #12

Handshaking (2) 1.READY bit (bit-0, port 2) = 1 2.A byte pada port 1 3.A kirim ACK bit (bit-7, port 4) = 1 untuk mereset READY bit = 0 4.ACK bit di reset = 0 Organisasi dan Arsitektur Komputer CSG2G3/2016 #13

Handshaking (3) Tuliskan program untuk memasukkan data dari port 1 dengan menggunakan proses handshaking! Label Mnemonik Komentar STATE : IN 02H ; Ambil byte dari port 2 ANI 01H ; Periksa bit READY sudah = 1 (HIGH) JZ STATE ; Ulangi jika belum siap IN 01H ; Ambil byte dari port 1 MOV B, A ; B A MVI A,80H ; Siapkan bit ACK, bit ke-7 yang high OUT 04H ; Kirimkan bit ACK MVI A, 00H ; Reset bit ACK OUT 04H ; Keluarkan ACK HLT Organisasi dan Arsitektur Komputer CSG2G3/2016 #14

Contoh Kasus (1) Berapa waktu yang diperlukan untuk mengeksekusi subrutin berikut ini: Label Mnemonik MVI B, 0AH LOOP1 : MVI C, 47H LOOP2: DCR C JNZ LOOP2 DCR B JNZ LOOP1 RET Organisasi dan Arsitektur Komputer CSG2G3/2016 #15

Contoh Kasus (2) Program memiliki 2-buah looping yaitu nested-loop. Looping dalam looping. Loop-dalam (Loop2) DCR C = 71 eksekusi x 4 clock x 1 µs = 284 µs JNZ Loop2 = 70 x 10 x 1 µs = 700 µs (dg lompatan) JNZ Loop2 = 1 x 7 x 1 µs = 7 µs (tanpa lompatan) Total = 284 µs + 700 µs + 7 µs = 991 µs Saat C = 0, maka B = B 1 dan JNZ Loop1 kembali ke MVI C, 47H. Kemudian, Loop2 dieksekusi lagi. Loop2 akan dilakukan sebanyak = 10x (0AH), sehingga MVI B, 0AH = 1 x 7 x 1 µs = 7 µs MVI C, 47H = 10 x 7 x 1 µs = 70 µs Loop2 = 10 x 991 µs = 9910 µs DCR B = 10 x 4 x 1 µs = 40 µs JNZ Loop1 = 9 x 10 x 1 µs = 90 µs (dg lompatan) JNZ Loop1 = 1 x 7 x 1 µs = 7 µs (tanpa lompatan) RET = 1 x 10 x 1 µs = 10 µs Total = 7 + 70 + 9910 + 40 + 90 + 7 + 10 = 10134 µs 10 ms Organisasi dan Arsitektur Komputer CSG2G3/2016 #16

Subrutin 1 ms Subrutin D1ms Label Mnemonik MVI C, 47H ; 1 x 7 x 1 µs = 7 µs Loop1: DCR C ; 71 x 4 x 1 µs = 284 µs JNZ Loop1 ; 70 x 10 x 1 µs = 700 µs ; 1 x 7 x 1 µs = 7 µs End: RET ; 1 x 10 x 1 µs = 10 µs Dijumlahkan = 7 + 284 + 700 + 7 + 10 = 1008 µs 1 ms Organisasi dan Arsitektur Komputer CSG2G3/2016 #17

Referensi Malvino, Albert Paul; Jerald A. Brown. 1999. Digital Computer Electronics.3 rd edition. McGraw-Hill. New York Organisasi dan Arsitektur Komputer CSG2G3/2016 #18