1 / 13

14 Maret 2003 Bobby Nazief (nazief@cs.ui.ac.id) Qonita Shahab (niet@cs.ui.ac.id)

IKI10230 Pengantar Organisasi Komputer Kuliah no. A 3 : Bahasa Rakitan AVR Arithmetic & Logic Instructions. Sumber : 1. AVR AT90S8515 Data Sheet. 2. Materi kuliah CS152, th. 1997, UCB. 14 Maret 2003 Bobby Nazief (nazief@cs.ui.ac.id) Qonita Shahab (niet@cs.ui.ac.id)

braima
Download Presentation

14 Maret 2003 Bobby Nazief (nazief@cs.ui.ac.id) Qonita Shahab (niet@cs.ui.ac.id)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. IKI10230Pengantar Organisasi KomputerKuliah no. A3: Bahasa Rakitan AVRArithmetic & Logic Instructions Sumber:1. AVR AT90S8515 Data Sheet.2. Materi kuliah CS152, th. 1997, UCB. 14 Maret 2003 Bobby Nazief (nazief@cs.ui.ac.id)Qonita Shahab (niet@cs.ui.ac.id) bahan kuliah: http://www.cs.ui.ac.id/~iki10230/

  2. Arithmetic Instructions

  3. sama Angka (values, constants) • LDI R16,0x39 • LDI R16,0b111001 • LDI R16,57 • LDI R16,’9’

  4. Addition • ADDITION (Penambahan) • Contoh: ADD • Instruksi perhitungan format 2 operand, dengan hasil (destinations) operasi disimpan pada argumen PERTAMA ADD Rd, Rr Tambahkan isi register Rd dan Rr, simpan hasilnya pada isi register Rd The arguments can ONLY be registers, no values, no constants • ADD IMMEDIATES • ADDI  tidak ada!

  5. Subtraction • SUBTRACTION (Pengurangan) • Contoh: SUB • Instruksi pengurangan format 2 operand, dengan hasil (destinations) operasi disimpan pada argumen PERTAMA SUBRd, Rr The arguments can ONLY be registers, no values, no constants • SUBTRACT IMMEDIATES • Contoh: SUBI • Instruksi perhitungan dengan values/constants, dengan hasil (destinations) operasi disimpan pada argumen PERTAMA SUBIRd, k Ingat: immediates hanya dapat dioperasikan dengan R16-R31 Ingat: hasil operasi aritmetik disimpan di operand sebelah KIRI

  6. Example: Add & Sub • Bagaimana jika instruksi HLL: a = b + c + d – e; • Pecahkan dalam step instruksi dan gunakan register sementara (temporer) • .. Lakukan load isi register R1, R2, R3, R4 dengan nilai/lokasi memori b, c, d, e Add R1, R2 ; R1 => temp = b + c Add R1, R3 ; R1 => temp = temp + d Sub R1, R4 ; R1 => a = temp – e • Hasil perhitungan (nilai a) berada pada R1, store R1 ke lokasi a. • Tanda: ; (akhir dari baris instruksi, sisanya diabaikan sbg. ket.)

  7. Arithmetic Instructions: Lain-lain • ADIW • SBIW • DEC • INC • CLR • MUL • TST • dsb

  8. Logic Instructions

  9. Example: Compare Instructions • Contoh instruksi yang mempengaruhi status register • Instruksi: cp (singkatan “compare”, membandingkan dengan dua argumen) cp Rd, Rr ; operasi compare Rd dan Rr • Evaluasi instruksi sebenarnya: Rd – Rr • Hasil ini akan men-set flag bit: Z (zero) pada status register, jika evaluasi “subtraction” ini adalah 0 atau (Rd == Rr) • Note: “side effect” pada status register, tapi nilai Rd dan Rr tidak berubah. • Remember terminologi: set => 1 dan reset => 0.

  10. Example: Compare “Immediate” • Instruksi “compare” argumen dapat menggunakan bilangan konstan cpi Rd, K ; evaluasi Rd – K, set flag bit • set flag Z; jika hasil evaluasi (Rd-K) = 0 • Contoh: cpi r11, 5 ;compare R11 dengan 5 breq Error ;branch ke Error jika Z di set … Error: …….

  11. Logic Instructions: Lain-lain • AND • ANDI • OR • ORI • EOR • dsb

  12. Referensi • AVR Assembler User Guide • http://www.avr-asm-tutorial.net • AVR AT90S8515 Data Sheets

  13. Tugas 1 • Implementasi • Data Transfer Instructions • Arithmetic & Logic Instructions • The ‘real’ tugas  • Lihat WebKuliah • Batas waktu: 28 Maret 2003, pukul 00:00

More Related