INSTRUKSI LOGIKA DASAR

Slides:



Advertisements
Presentasi serupa
Manipulasi Bit dan Logika
Advertisements

Bus 3-State Sistem bus dapat dibangun dari gerbang 3-keadaan
Arsitektur Komputer “Instruksi Set Arsitektur”
Dasar pemrograman Mikroprosesor 8086
ARSITEKTUR SET INSTRUKSI
Instruksi Logika Dasar
Mode Pengalamatan Mengatasi keterbatasan format instruksi
ARSITEKTUR SET INSTRUKSI
LOKASI DAN OPERASI MEMORI
Johannes Simatupang, MKom, Cobit5-F NIDN :
REGISTER.
POINTER & MANIPULASI BIT DAN LOGIKA
ORGANISASI & ARSITEKTUR KOMPUTER 2 STRUKTUR & FUNGSI CPU IBP WIDJA, MT
Pointer. Karakteristik Operasi Assembly  Lebar data tujuan dan asal harus sama! Lebar data tidak sama => invalid opcode  Operasi 8bit disimpan pada.
Program Bahasa Rakitan dengan DEBUG.COM
Arsitektur Perangkat Lunak 8086
Pertemuan 4 (Set Instruksi ARM)
lnstruksi Aritmetika dan Logika
OPERASI PADA STRING Instruksi Pada String
Pertemuan 11 (Aritmatika)
Pertemuan 6 Operator & prioritas operator .:: Erna Sri Hartatik ::.
Arsitektur Mikroprosessor 8086
Register.
Pertemuan 8 Instruksi Bahasa Rakitan 8088
Pertemuan 7 Instruksi Bahasa Rakitan 8088
1 Pertemuan 3 Komponen Sistem Komputer dan Register pada prosesor 8088 Matakuliah: T0483 / Bahasa Rakitan Tahun: 2005 Versi: versi 1.0 / revisi 1.0.
Pengenalan Assembler.
ARSITEKTUR SET INSTRUKSI
Dasar pemrograman Mikroprosesor 8086
Program Bahasa Rakitan dengan DEBUG.COM
Aplikasi dari program Mikroprosesor
ALGORITMA PEMROGRAMAN 2A
Mode Pengalamatan Mengatasi keterbatasan format instruksi
Flag Register.
Pertemuan 3 (Bahasa Assembly)
MODE PENGALAMATAN DAN SET INSTRUKSI
Model Hipotesis SAP-3 Abdillah, S.Si, MIT.
SAP-3.
Arsitektur Komputer Genap 2004/2005
INSTRUKSI PENGAMBIL KEPUTUSAN DAN STACK
ORGANISASI dan ARSITEKTUR KOMPUTER
Operasi String.
Instruksi Perpindahan Data Miscellaneous
ARSITEKTUR SET INSTRUKSI
REGISTER.
Sistem Bilangan & REGISTER
Pengenalan Assembler.
ARITMATIKA DAN UNIT PENGOLAHAN DASAR
PEMROGRAMAN PASCAL ELEMEN PEMROGRAMAN PASCAL.
BAB III REGISTER 8088 Mikroprosesor 8088 berorientasi pada register
ORGANISASI KOMPUTER MATA KULIAH: ARITMATIKA PERTEMUAN 11
Transfer Register dan Mikrooperasi
Set Instruksi:.
Model Hipotesis SAP-2 Abdillah, S.Si, MIT.
OPERASI PADA STRING.
Pemrograman Terstruktur
ARSITEKTUR SET INSTRUKSI
OPERASI LOGIKA Mulyono.
INSTRUKSI PENGAMBIL KEPUTUSAN DAN STACK
Oleh : Devie Rosa Anamisa
Pemrograman Terstruktur
Andang, Elektronika Komputer Digital
ARSITEKTUR SET INSTRUKSI
Set Instruksi.
Andang, Elektronika Komputer Digital
Manipulasi Bit dan Logika
INSTRUKSI PENGAMBIL KEPUTUSAN DAN STACK
ARSITEKTUR SET INSTRUKSI
Karakteristik Set Instruksi 14 JP. Karakteristik Set Instruksi Pengertian Set Instruksi Set instruksi adalah kumpulan dari instruksi yang dapat dijalankan.
Dasar Pemrograman Pertemuan 6 Operator & prioritas operator.:: Erna Sri Hartatik ::.
Transcript presentasi:

INSTRUKSI LOGIKA DASAR Instruksi logika dasar meliputi AND, OR, XOR (Exclusive-OR), dan NOT. Instruksi logika lainnya adalah TEST, yang akan dijelaskan pada subbab berikutnya karena instruksi operand TEST merupakan bentuk spesial dari instruksi AND. Juga akan dijelaskan, instruksi NEG, yang hampir serupa dengan instruksi NOT Semua instruksi logika berpengaruh pada bit flag. operasi logika selalu menghapus flag carry dan overflow, pada saat flag yang lainnya berubah untuk menggambarkan kondisi hasil.

AND Operasi AND membentuk perkalian logika, seperti dijelaskan pada tabel kebenaran pada Gambar 5-3. Di sini 2 bit, A dan B, di-AND-kan hasilnya X. Seperti diindikasikan oleh tabel kebenaran, nilai X akan 1 kalau nilai A dan B = 1. Untuk kombinasi input A dan B yang lain, nilai X akan 0.

OR Operasi OR membentuk logika penambahan dan kadang disebut dengan fungsi Inclusive-OR. Fungsi OR menghasilkan 1 jika salah satu input lainnya 1. Logika 0 tampil jika semua inputnya 0.

Exclusive-OR (XOR) Instruksi exclusive-OR berbeda dari OR. Perbedaannya adalah kondisi 1,1 pada fungsi oR menghasilkan 1; kondisi 1,1 pada exclusive-oR menghasilkan 0.

lnstruksi Test dan Test Bit Instruksi TEST hampir sama dengan operasi AND. Bedanya instruksi AND mengubah operand tujuan, sedang instruksi TEST tidak. Instruksi TEST hanya berpengaruh pada kondisi register flag, yang menandakan hasil pengetesan. Instruksi TEST menggunakan model pengalamatan yang sama dengan instruksi AND.

Instruksi TEST memiliki fungsi yang sama dengan instruksi CMP Instruksi TEST memiliki fungsi yang sama dengan instruksi CMP. Perbedaannya adalah bahwa instruksi TEST biasanya mengetes bit tunggal (atau bit ganda), sedangkan instruksi CMP mengetes seluruh data byte atau word. Flag zero (Z) berlogika 1 (menandakan hasilnya zero) jika bit yang dites bernilai zero, dan Z = O (menandakan hasil tidak zero) jika bit yang dites tidak zero. Biasanya instruksi TEST diikuti oleh instruksi JZ (iump Jika zero) atau JNZ jump jika tidak zero).

Test bit Mikroprosesor 80386 sampai Pentium II berisi instruksi tes tambahan untuk mengetes posisi bit singel. Tabel 5-18 menunjukkan 4 instruksi tes bit yang berbeda, yang tersedia pada prosesor tersebut

NOT dan NEG Invers logika atau komplemen 1 (NOT) dan inversi tanda aritmatika atau komplemen 2 (NEG) Instruksi NOT menginverskan seluruh bit dalam byte, word atau doubleword. Instruksi NEG mengkomplemenduakan suatu bilangan, yang berarti bahwa tanda aritmetika bilangan bisa berubah dari positif ke negatif atau sebaliknya. Instruksi NOT dianggap sebagai instruksi logika, sedang NEG dianggap sebagai operasi aritmetika

INSTRUKSI SHIFT DAN ROTATE Instruksi shift dan rotate memanipulasi bilangan pada tingkat-tingkat bit biner, seperti yang dilakukan dengan menggunakan instruksi AND, OR, Exclusive-OR, dan NOT. Instruksi shift dan rotate banyak ditemukan pada software aplikasi tingkat rendah untukmengontrol peralatan I/O. Mikroprosesor memiliki set instruksi lengkap untuk shift dan rotate yang digunakan untuk pergeseran dan pemutaran data memori atau register.

Penggeseran (Shift) Instruksi shift memposisikan atau memindahkan bilangan ke-kanan atau kiri dari register atau lokasi memori. Instruksi ini juga melakukan instruksi aritmetika sederhana seperti perkalian dengan pangkat dari 2+n (geser ke kiri) dan pembagian dengan pangkat 2-n (geser ke kanan). Set instruksi yang dimiliki mikroprosesor berisi 4 instruksi penggeseran yang berbeda; 2 instruksi merupakan penggeseran logika dan 2 instruksi penggeseran aritmetika.

Shift Presisi Ganda (hanya untuk 80386-Pentium II). Prosesor 80386 dan versi di atasnya berisi instruksi 2 penggeseran presisi ganda SHLD (geser ke kiri) dan SHRD (geser ke kanan). Tiap instruksi berisi 3 operand, bukannya 2, seperti ditemukan dengan instruksi penggeseran yang lain. Kedua instruksi tersebut bekerja pada format register 16- atau 32-bit atau dengan satu 16- atau 32-bit lokasi memori dan sebuah register.

Rotate (Pemutaran) Instruksi rotate memutar posisi data biner dengan memutar informasi dalam register atau lokasi memori baik apakah dari satu ujung ke lainnya atau melalui flag carrynya.

lnstruksi Scan bit Meskipun instruksi scan bit tidak menggeser atau merotasi bilangan, program men-scan bilangan untuk mencari bit 1. Instruksi bit scan BSF (bit scan forward) dan BSR (bit scan reverse) dapat ditemukan dalam prosesor 80386 sampai Pentium II. Kedua bentuk scan tersebut melakukan pencarian bilangan sampai menemukan bit 1 yang pertama. Instruksi BSF melakukan scanning bilangan dari bit paling kiri ke bit paling kanan, dan instruksi BSR melakukan scanning bilangan dari bit paling kanan ke bit paling kiri. Jika ditemukan bit l-selama proses scanning, bit flag zero berubah ke 1 dan posisi bit 1 yang ditemukan dipindahkan ke operand tujuan. Jika tidak ada bit 1 yang ditemukan (misalnya bilangan tersebut bernilai 0 semuanya), bit flag zero diclearkan ke 0. Ini artinya hasilnya tidak nol jika tidak ada bit 1 yang ditemukan.

PERBANDINGAN STRING (STRING COMPARISONS) instruksi string sangatlah berguna karena memungkinkan setiap programer untuk memanipulasi sejumlah besar blok data secara gampang. bahas tentang instruksi string tambahan, yang memungkinkan bagian memori untuk dites terhadap suatu konstanta atau terhadap satu bagian dari memori. Untuk itu digunakan instruksi SCAS (string scan) atau CMPS (compare string).

SCAS Instruksi scan string (SCAS) membandingkan isi register AL dengan satu byte blok memori, register AX dengan satu word blok memori, atau EAX (80386-PentiumPro) dengan satu doubleword blok memori. Instruksi SCAS mengurangi AL, AX dan EAX dengan memori tanpa mempengaruhi isi register maupun memori. Opcode yang digunakan untuk perbandingan byte adalah SCASB; untuk perbandingan word opcodenya SCASW dan untuk doubleword opcodenya SCASD. Dalam semua kasus, isi ekstra segmen lokasi memori yang dialamatkan oleh DI dibandingkan dengan AL, AX dan EAX. Untuk mengingatkan bahwa segmen default (ES) tidak dapat diubah dengan penumpukan prefiks segmen.

CMPS Instruksi perbandingan string (CMPS) selalu membandingkan dua bagian data memori dalam byte (CMPSB), word (CMPSW), atau doubleword (CMPSD). Catat bahwa perbandingan ddubleword hanya dilakukan pada prosesor 80386 sampai Pentium pro. Isi data segmen yang dialamatkan oleh SI dibandingkan dengan isi lokasi memori segmen ekstra yang dialamatkan oleh DI. Instruksi CMPS biasanya menggunakan prefiks perulangan REPE (repeat while equal) atau REPNE (repeat while not equal). Alternatif perulangan lainnya adalah REPZ (repeat while zero) dan REPNZ (repeat while not zero), tapi biasanya dalam pemrograman digunakan instruksi REPE dan REPNE.

Tugas Bab 5 Latihan No: 4, 5, 11, 29, 35, 40, 51