Materi 7: Branch, Call and Time Delay Loop

Ukuran: px
Mulai penontonan dengan halaman:

Download "Materi 7: Branch, Call and Time Delay Loop"

Transkripsi

1 Materi 7: Branch, Call and Time Delay Loop I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Kusuma Wardana - Bahasa Rakitan

2 Branches and Looping Program Counter (PC) Calculating the Short Branch Address Unconditional Branches Call Instruction & Stack AVR time delay Kusuma Wardana - Bahasa Rakitan

3 Kusuma Wardana - Bahasa Rakitan

4 Loop pengulangan instruksi atau operasi dlm suatu waktu tertentu Loop salah satu teknik pemrograman yg paling sering digunakan Di AVR, ada berbagai teknik utk melakukan pengulangan Salah satunya dgn melakukan operasi yg sama berulang-ulang sampai tujuan akhir terpenuhi Kusuma Wardana - Bahasa Rakitan

5 Contoh: LDI R24, 0 ;R24 = 0 LDI R25, 3 ;R25 = 3 ADD R24, R25 ADD R24, R25 ADD R24, R25 ADD R24, R25 ADD R24, R25 ADD R24, R25 ;R24 = 0x03 ;R24 = 0x06 ;R24 = 0x09 ;R24 = 0x0C ;R24 = 0x0F ;R24 = 0x12 Bgmn jika agar isi R24 mencapai 0x50? boros ruang Kusuma Wardana - Bahasa Rakitan

6 BRNE BRanch if Not Equal BRNE memakai zero flag Lompatlah jika Z = 0 BACK:... ;start loop... ; body loop... ; body loop DEC Rn ; decrement Rn, Z=1 jika Rn=0 BRNE BACK ; kembali jika z=0 Kusuma Wardana - Bahasa Rakitan

7 Contoh: Buatlah program dgn kasus berikut: Kosongkan R20, kemudian tambahkan nilai 3 ke R20 sebanyak sepuluh kali. Terakhir, kirim hasil penjumlahan ke PORTB Gunakan zero flag dan BRNE Kusuma Wardana - Bahasa Rakitan

8 Jawab:.INCLUDE M16DEF.INC LDI R16, 10 ;R16 = 10 (utk counter) LDI R20, 0 ;R20 = 0 (kosongkan R20) LDI R21,3 ;R21 = 3 LAGI: ADD R20, R21 ;R20 = R20 +3 DEC R16 ;decrement R16 (counter) BRNE LAGI ;ulangi sampai count = 0 OUT PORTB, R20 ;kirim hasil akhir ke PORTB Kusuma Wardana - Bahasa Rakitan

9 Load counter LDI R16, 10 Clear R20 LDI R20, 0 Isi R21 dgn 3 LDI R21,3 Tambahkan R20 dan R21 LAGI: ADD R20, R21 Decrement counter DEC R16 tidak Apakah counter = 0? ya BRNE LAGI Keluarkan hasilnya pd PORTB OUT PORTB, R20 Kusuma Wardana - Bahasa Rakitan

10 Contoh: Berdasarkan contoh sebelumnya, berapakah maksimum pengulangan yg bisa dilakukan? Jawab: Karena R16 = 8-bit register, maka R16 hanya bisa meng-handle pengulangan sebanyak 0xFF (255 dec) Oleh karena itu, pengulangan maks = 255 kali Kusuma Wardana - Bahasa Rakitan

11 Utk mengatasi keterbatasan pengulangan (misal maks 255 pd contoh sebelumnya) digunkanlah loop di dalam loop (nested loop) Menggunakan 2 register sbg counter Contoh: Buat program utk: Muati register PORTB dgn nilai 0x55 Komplemenkan (invers) PORTB 700 kali Kusuma Wardana - Bahasa Rakitan

12 Jawab:.INCLUDE M16DEF.INC.ORG 0 LDI R16, 0x55 ;R16 = 0x55 OUT PORTB, R16 ;PORTB = 0x55 LDI R20, 10 ;R20 = 10 (loop luar) LOP_1: LDI R21, 70 ;R21 = 70 (loop dalam) LOP_2: COM R16 ;komplemen R16 OUT PORTB, R16 ;keluarkan ke PORTB DEC R21 ;dec R21 (loop dalam) BRNE LOP_2 ;ulangi 70 kali DEC R20 ;dec R20 (loop luar) BRNE LOP_1 ;ulangi 10 kali Kusuma Wardana - Bahasa Rakitan

13 Kusuma Wardana - Bahasa Rakitan

14 Dua register memberikan kita maksimum (255 x 255) pengulangan Jika menggunakan tiga register lebih dr 16 juta kali! Contoh: Tulislah program utk melakukan pengulangan sebanyak kali! Kusuma Wardana - Bahasa Rakitan

15 Jawab: LDI R16, 0x55 OUT PORTB, R16 LDI R23, 10 LOP_3: LDI R22, 100 LOP_2: LDI R21, 100 LOP_1: COM R16 DEC R21 BRNE LOP_1 DEC R22 BRNE LOP_2 DEC R23 BRNE LOP_3 Kusuma Wardana - Bahasa Rakitan

16 Jenis-jenis percabangan bersyarat lainnya: Instruksi Aksi BRLO Bercabang jika C=1 BRSH Bercabang jika C=0 BREQ Bercabang jika Z=1 BRNE Bercabang jika Z=0 BRMI Bercabang jika N=1 BRPL Bercabang jika N=0 BRVS Bercabang jika V=1 BRVC Bercabang jika V=0 Kusuma Wardana - Bahasa Rakitan

17 BREQ BRanch if EQual BREQ Z flag dicek. Jika tinggi (1), maka CPU akan melompat ke alamat target Contoh: OVER: IN R20, PINB TST R20 ;baca PINB & taruh di R20 ;set flag sesuai R20 BREQ OVER ;lompat jika R20 = 0 Kusuma Wardana - Bahasa Rakitan

18 OVER: IN R20, PINB TST R20 ;baca PINB & taruh di R20 ;set flag sesuai R20 BREQ OVER ;lompat jika R20 = 0 Jika PINB = 0, maka CPU akan melompat ke OVER TST set flag sesuai dgn isi dr register tsb tanpa melakukan operasi aritmatika (misal increment/decrement) Kusuma Wardana - Bahasa Rakitan

19 BRSH BRanch if Same or Higher BRSH C flag dicek. Jika rendah (0), maka CPU akan melompat ke alamat target Jika C =1, maka tdk akan bercabang, namun akan mengeksekusi perintah selanjutnya Contoh: Buatlah program utk menentukan apakah RAM pd lokasi 0x200 berisi nilai 0. jika ya, isilah dgn nilai 0x55 ke dalamnya Kusuma Wardana - Bahasa Rakitan

20 Jawab: Buatlah program utk menentukan apakah RAM pd lokasi 0x200 berisi nilai 0. jika ya, isilah dgn nilai 0x55 ke dalamnya.equ LOKASI = 0x200 LDS R30, LOKASI TST R30 BRNE NEXT ;brcabang jk R30 0 (Z=0) LDI R30, 0x55 ;isi 0x55 jk R30 = 0 STS LOKASI, R30 NEXT:... Kusuma Wardana - Bahasa Rakitan

21 Kusuma Wardana - Bahasa Rakitan

22 Program Counter (PC) Salah satu register yg sangat penting! PC digunakan oleh CPU utk mendapatkan alamat dr instruksi selanjutnya utk dieksekusi Kusuma Wardana - Bahasa Rakitan

23 CPU mengambil (fetch) instruksi (opcode) dr program ROM dan selanjutnya PC naik scr otomatis memposisikan alamat utk instruksi berikutnya Semakin lebar PC semakin banyak lokasi memori yg dpt diakses Misal, 14-bit PC dapat mengakses 16K lokasi program memori (2 14 = 16K) Kusuma Wardana - Bahasa Rakitan

24 µc AVR memiliki Flash memory dgn lebar memori sebesar 2-byte Contoh: ATmega32 mempunyai 32K byte diorganisasikan 16K x 2 byte. PC = 14bit (2 14 = 16K lokasi memori) Kusuma Wardana - Bahasa Rakitan

25 ATmega64 memiliki 64K byte ROM 64K dipecah menjd 32K x 2 byte Fokus pd 32K - nya Oleh karena itu, lebar PC adlh 15-bit, sebab 2 15 =32K Kusuma Wardana - Bahasa Rakitan

26 Untuk 16-bit PC ruang memori kode adlh 64K (2 16 = 64K): mengambil lokasi 0000-$FFFF Jika 22-bit ruang = $3FFFFF Kusuma Wardana - Bahasa Rakitan

27 AVR On-Chip Program ROM Address Range Kusuma Wardana - Bahasa Rakitan

28 Contoh: Temukanlah rentang alamat ROM dr µc berikut: ATtiny25 dgn 2KB ATmega16 dgn 16KB ATmega64 dgn 64KB Kusuma Wardana - Bahasa Rakitan

29 Jawab: ATtiny25 2K byte 2 x 1024 = 2048 memori ROM Karena lebar tiap alamat adlh 2 byte, maka akan mempunyai 1024 lokasi (2048/2 = 1024). Maka rentang lokasi = $03FF Kusuma Wardana - Bahasa Rakitan

30 Jawab: ATmega16 16K byte 16 x 1024 = byte memori ROM Karena lebar tiap alamat adlh 2 byte, maka akan mempunyai 8192 lokasi ( /2 = 8192) Maka rentang lokasi = $1FFF Kusuma Wardana - Bahasa Rakitan

31 Jawab: ATmega64 64K byte 64 x 1024 = byte memori ROM Karena lebar tiap alamat adlh 2 byte, maka akan mempunyai lokasi ( /2 = ) Maka rentang lokasi = $7FFF Kusuma Wardana - Bahasa Rakitan

32 AVR On-Chip Program ROM Address Range Kusuma Wardana - Bahasa Rakitan

33 Placing Code in Program ROM.INCLUDE "M16DEF.INC".EQU LOC = 0x300 ;lokasi LOC pd SRAM $300.ORG 00 ;mulai pd lokasi 0 LDI R16, 0x25 ;R16=0x25 LDI R17, $34 ;R17=0x34 LDI R18, 0x31 ;R18=0x31 ADD R16, R17 ;R16=R16+R17 ADD R16, R18 ;R16=R16+R18 LDI R17, 11 ;R17=0x0B ADD R16, R17 ;R16=R16+R17 STS LOC, R16 ;simpan pd 0x300 HERE: JMP HERE ;diam selamanya di sini Kusuma Wardana - Bahasa Rakitan

34 Ubah seting pd AVR Studio utk membuat list file: Project Assembler Options Kusuma Wardana - Bahasa Rakitan

35 ... Sebagian isi list file:.equ LOC = 0x300 ;lokasi LOC pd SRAM $300.ORG 00 ;mulai pd lokasi e205 LDI R16, 0x25 ;R16=0x e314 LDI R17, $34 ;R17=0x e321 LDI R18, 0x31 ;R18=0x f01 ADD R16, R17 ;R16=R16+R f02 ADD R16, R18 ;R16=R16+R e01b LDI R17, 11 ;R17=0x0B f01 ADD R16, R17 ;R16=R16+R STS LOC, R16 ;simpan pd 0x c 0009 HERE: JMP HERE ;diam selamanya disini... Kusuma Wardana - Bahasa Rakitan

36 Amati untuk program counter (PC) utk LDI, ADD dan STS pd AVR Instruction Set, sbb: Kusuma Wardana - Bahasa Rakitan

37 Penambahan PC menunjukkan sasaran target lokasi selanjutnya e205 LDI R16, 0x e314 PC = PC+1 LDI R17, $ STS LOC, R c 0009 PC = PC+2 HERE: JMP HERE Kusuma Wardana - Bahasa Rakitan

38 Alamat 0000 berisi E205 opcode utk memindahkan nilai ke R16 dan operand (dlm hal ini 0x25) ke R16 Dgn demikian, instruksi LDI R16, 0x25 memiliki kode mesin E205 Dimana E = opcode, 205 = operand.equ LOC = 0x300 ;lokasi LOC pd SRAM $300.ORG 00 ;mulai pd lokasi e205 LDI R16, 0x25 ;R16=0x25... Kusuma Wardana - Bahasa Rakitan

39 Lihat instruksi LDI pd AVR Instruction Set dan amati byte Opcode (dlm biner), sbb: LDI Rd, K 16 d 31, 0 r 255 Kusuma Wardana - Bahasa Rakitan

40 Opcode LDI Rd, K dlm hex: Amati pada list file: e205 LDI R16, 0x25 ;R16=0x e314 LDI R17, $34 ;R17=0x e321 LDI R18, 0x31 ;R18=0x31 Kusuma Wardana - Bahasa Rakitan

41 Kusuma Wardana - Bahasa Rakitan

42 SEMUA percabangan bersyarat (misal BRSH, BREQ dan BRNE) adlh short jump Short jump alamat target harus lebih kecil dr 64 byte dlm Program Counter (PC) Kusuma Wardana - Bahasa Rakitan

43 Short jump (short branch) instruksi 2 byte 2 byte tersebut: Opcode = 9-bit relative address (operand) = 7-bit Contoh BRSH kkkkkkk = relative address Sisanya = opcode Kusuma Wardana - Bahasa Rakitan

44 Contoh BRSH kkkkkkk = relative address Sisanya = opcode Asumsi kode mesinnya adalh: Maka: Relative address= Opcode = Kusuma Wardana - Bahasa Rakitan

45 Target address relatif terhadap nilai pd program counter (PC) Relative address positif melompat maju Relative address negatif melompat mundur Relative address memiliki nilai antara: Utk menghitung target address: Target Add. = Relative Add. +PC Kusuma Wardana - Bahasa Rakitan

46 Target Add. = Relative Add. + PC Kusuma Wardana - Bahasa Rakitan

47 Kusuma Wardana - Bahasa Rakitan

48 JMP (Jump) JMP unconditional Jump: dpt pergi ke lokasi memori mana saja dlm rentang 4M (word) ruang memori Mrpkn perintah 4-byte (32-bit): 10-bit: opcode 22-bit: alamat target Kusuma Wardana - Bahasa Rakitan

49 Kusuma Wardana - Bahasa Rakitan

50 22-bit target address dpt menjangkau 4M (words) lokasi memori dgn rentang: Ingat 2 22 = $3FFFFF Jd, perintah JMP dpt mengkover seluruh ruang memori Tidak semua keluarga AVR dpt diberi instruksi JMP!!! Kusuma Wardana - Bahasa Rakitan

51 Wlpn AVR dpt mempunyai ruang memori sampai 8M-byte, tdk semua keluarga AVR mempunyai sedemikian besar kapasitas ROM Bbrp jenis AVR hanya memiliki 4K-32K onchip ROM setiap byte begitu berharga Oleh karena itu, terdapat alternatif yaitu RJMP (Relative Jump) Kusuma Wardana - Bahasa Rakitan

52 RJMP (Relative Jump) RJMP instruksi 2-byte (16-bit): 4-bit: opcode 12-bit: relative address Rentang alamat: 000-$FFF Dibagi mnjd lompat maju dan lompat mundur dlm rentang sampai relatif thd PC Kusuma Wardana - Bahasa Rakitan

53 Jika lompat maju: relative address = positif Jika lompat mundur: relative address = negatif Dlm hal ini, RJMP seperti conditional branch, namun 12 bit digunakan sbg offset address Kusuma Wardana - Bahasa Rakitan

54 IJMP (Indirect Jump) IJMP mrpkn instruksi 2-byte Ketika dieksekusi, PC dimuati dgn nilai dr suatu register Z Jadi, akan melompat ke alamat yg ditunjukkan oleh nilai dr register Z Kusuma Wardana - Bahasa Rakitan

55 Pd percabangan yg lain target address bersifat statik Namun, pd IJMP target bersifat dinamis Kita dpt scr dinamis mengubah alamat target dgn mengubah isi register Z Kusuma Wardana - Bahasa Rakitan

56 Kusuma Wardana - Bahasa Rakitan

57 Call digunakan utk memanggil subrutin Subrutin melaksanakan tugas tertentu yg sering dilakukan Penggunaan instruksi call membuat program lebih terstruktur dan menghemat memori 4 Jenis Call: CALL, RCALL, ICALL, EICALL Kusuma Wardana - Bahasa Rakitan

58 CALL Call instruksi 4-byte (32-bit): 10-bit: opcode 22-bit: target address Seperti halnya JMP call dpt mengakses sampai 4M dgn rentang: $3FFFFF Kusuma Wardana - Bahasa Rakitan

59 Formasi perintah CALL Kusuma Wardana - Bahasa Rakitan

60 Utk memastikan bahwa CPU akan kembali ke program utama setelah memanggil CALL, maka perintah dibawah CALL scr otomatis akan disimpan pada stack Setelah selesai mengeksekusi subrutin, maka diperlukan perintah RET utk kembali lg ke asal Setiap subrutin memerlukan perintah RET Kusuma Wardana - Bahasa Rakitan

61 Stack and Stack Pointer Stack lokasi pd RAM yg digunakan utk menyimpan informasi sementara Register yg digunakan utk mengakses stack dinamakan SP (Stack Pointer) Terdpt 2 register: 1. SPL (utk low bit SP) dan 2. SPH (utk high bit SP) Kusuma Wardana - Bahasa Rakitan

62 Utk instruksi yg kurang atau sama dgn 8-bit, cukup digunakan SPL Jika lebih, dipakai keduanya Kusuma Wardana - Bahasa Rakitan

63 Perintah utk menyimpan informasi pd stack disebut PUSH Perintah utk me-load informasi dr stack ke register disebut POP Dgn kata lain, register di pushed ke stack utk disimpan lalu mem popped-off stack utk diambil informasinya Kusuma Wardana - Bahasa Rakitan

64 Pushing onto the Stack SP diarahkan ke top of stack (TOS) Karena kita push ke stack, maka data akan disimpan pd tempat yg diarahkan oleh SP Kemudian SP dikurangi 1 Contoh: PUSH R10 ;simpan R10 ke stack, dec SP Kusuma Wardana - Bahasa Rakitan

65 Popping from the Stack Proses mrpkn kebalikan dr PUSH Ketika POP dieksekusi SP dinaikkan (increment) 1 dan TOS disalin balik ke register Stack bersifat LIFO (Last-In-First-Out) Contoh: POP R16 ;salin isi stack ke R16, in SP Kusuma Wardana - Bahasa Rakitan

66 Inisialisasi Stack Pointer Ketika uc dinyalakan SP bernilai 0, yaitu pd R0 Oleh karena itu, kita hrs menginisialisasinya ke suatu alamat pd RAM Pd AVR, stack berjalan dr memori lebih tinggi ke meori lebih rendah (makanya kita mengurangi alamat SP) Oleh karena itu, utk pertama kali, kita alamatkan pd memori yg paling tinggi Kusuma Wardana - Bahasa Rakitan

67 Setiap uc AVR memiliki ukuran RAM yg berbeda Jika kita ingin menginisialisasi SP, gunakan perintah RAMEND Ingat, SP terdiri dr 2: SPL dan SPH Gunakan RAMEND utk kedua register tsb Kusuma Wardana - Bahasa Rakitan

68 Contoh: Tentukan isi dari stack, stack poniter, serta R20, R22 dan R31 dari program berikut:.include M16DEF.INC.ORG 0 ;inisialisasi SP pd lokasi terakhir dari ; RAM(RAMEND) LDI R16, HIGH(RAMEND) ;load SPH OUT SPH, R16 LDI R16, LOW(RAMEND) ;load SPL OUT SPL, R16 LDI R31, 0 LDI R20, 0x21 LDI R22, 0x66 PUSH R20 PUSH R22 LDI R20, 0 LDI R22, 0 POP R22 POP R31 Kusuma Wardana - Bahasa Rakitan

69 .INCLUDE M16DEF.INC.ORG 0 ;inisialisasi SP pd lokasi terakhir dari ; RAM(RAMEND) LDI R16, HIGH(RAMEND) ;load SPH OUT SPH, R16 LDI R16, LOW(RAMEND) ;load SPL OUT SPL, R16 LDI R31, 0 LDI R20, 0x21 LDI R22, 0x66 PUSH R20 PUSH R22 LDI R20, 0 LDI R22, 0 POP R22 POP R31 Kusuma Wardana - Bahasa Rakitan

70 Ketika subrutin dipanggil, prosesor menyimpan alamat tepat di bawah CALL & segera lari ke subrutin yg dituju Ketika RET dieksekusi, lokasi paling atas pd stack disalin ke program counter (PC) dan stack pointer dinaikkan Kusuma Wardana - Bahasa Rakitan

71 Contoh: Toggle semua bit pd PORTB dengan mengirim nilai $55 dan $AA terus-menerus. Letakkan time delay diantaranya Kusuma Wardana - Bahasa Rakitan

72 Jawab:.INCLUDE M16DEF.INC.ORG 0 LDI R16, HIGH(RAMEND) ;load SPH OUT SPH, R16 LDI R16, LOW(RAMEND) OUT SPL, R16 ;load SPL BACK : LDI R16, 0x55 ; R16 = 0x55 OUT PORTB, R16 ; kirim 55 (hex) ke port B CALL DELAY ; delai LDI R16, 0xAA ; R16 = 0xAA OUT PORTB, R16 ; kirim AA (hex) ke port B CALL DELAY ; delai RJMP BACK ; lakukan secara terus-menerus ; ini adalah subrutin untuk delay ORG 0x300 ; tempatkan delay di alamat 0x300 DELAY: LDI R20, 0xFF ; R20 = 255 (sbg counter) LAGI: NOP ; no operation (buang2 detak) NOP DEC R20 BRNE LAGI ; lakukan sampai R20 mnjd 0 RET Kusuma Wardana - Bahasa Rakitan 2016 ; kembali ke caller 72

73 Upper Limit of the Stack Kita dpt menentukan dimana saja lokasi stack pd general purpose RAM (SRAM) Jd, nilai stack bisa sebesar ukuran RAM yg dimiliki Stack TIDAK DAPAT dideklarasikan di register memory atau I/O memory Kusuma Wardana - Bahasa Rakitan

74 Ingat: kita tdk dpt mendefinisikan stack pd register memory, atau di I/O memory Jd, SP hrs diset diatas alamat 0x60 Data Address Space $0000 $ $001F $ $005F $ General Purpose Registers Standard I/O Registers General purpose RAM (SRAM) 8 bit R0 R1 R2... R31 TWBR TWSR... SPH SREG I/O Address $00 $01 $3E $3F $FFFF Kusuma Wardana - Bahasa Rakitan

75 Analisis stack dr instruksi CALL berikut:.org e004 LDI R16, HIGH(RAMEND) bf0e OUT SPH, R e50f LDI R16, LOW(RAMEND) bf0d OUT SPL, R e505 BACK : LDI R16, 0x bb08 OUT PORTB, R e 0300 CALL DELAY ea0a LDI R16, 0xAA bb08 OUT PORTB, R a 940e 0300 CALL DELAY 00000c cff7 RJMP BACK.ORG 0x ef4f DELAY: LDI R20, 0xFF LAGI: NOP NOP a DEC R f7e1 BRNE LAGI RET Kusuma Wardana - Bahasa Rakitan

76 Memanggil banyak subrutin: Kusuma Wardana - Bahasa Rakitan

77 RCALL (Relative Call) RCALL instruksi 2-byte (16-bit) 4-bit: opcode 12-bit: target address Target address harus antara: Tdk ada perbedaan antara RCALL dan CALL, namun yg membedakan adlh range address yg bisa dijangkau Kusuma Wardana - Bahasa Rakitan

78 ICALL (Indirect Call) ICALL instruksi 2-byte (16-bit) Z register menentukan alamat target Z register = 16 bit dpt menjangkau 64K words Kusuma Wardana - Bahasa Rakitan

79 Kusuma Wardana - Bahasa Rakitan

80 Utk membuat time delay menggunakan bhs assembly, trdapat 2 faktor yg mempengaruhi akurasi, sbb: 1. Frekuensi kristal Kristal terkoneksi pd pin XTAL1 dan XTAL2. Durasi dr periode clock utk siklus intruksi adlh fungsi dr frekuensi kristal ini Kusuma Wardana - Bahasa Rakitan

81 2. Desain AVR Salah satu utk mempercepat kinerja mikrokontroler membwt single instruction cycle Mengapa AVR dpt membuat 1 siklus utk 1 instruksi? Krn sbb: 1. Menggunakan arsitektur Harvard 2. Menggunakan RISC 3. Menggunakan pipeline Kusuma Wardana - Bahasa Rakitan

82 Subrutin delay terdiri dr 2 bagian: 1. Seting counter 2. Loop Kita sering mengkalkulasi time dalay brdasarkan instruksi di dlm loop Kusuma Wardana - Bahasa Rakitan

83 Register 8 bit max 255 Salah satu utk memperlambat delay menggunakan perintah NOP NOP No OPeration : wasting time NOP menghabiskan 2 byte ROM dieksekusi 1 clock cycle NOP terlalu mahal utk 1 clock cycle Alternatif pakai nested loop Kusuma Wardana - Bahasa Rakitan

84 Contoh: Dgn menggunakan kristal 1 MHz, tentukan lamanya delay dr program berikut: ;------ini adalah subrutin delay.org 0X300 DELAY: LDI R20, 0XFF ;R20 = 255: counter AGAIN: NOP NOP DEC R20 BRNE AGAIN ;ulangi sampai R20 = 0 RET ; kembali ke caller Kusuma Wardana - Bahasa Rakitan

85 Jawab: Lihat AVR Instruction Set, kemudian carilah instruction cycle Instruction Cycles DELAY: LDI R20, 0XFF 1 AGAIN: NOP 1 NOP 1 DEC R20 1 BRNE AGAIN 2/1 RET 4 Kusuma Wardana - Bahasa Rakitan

86 Time delay = [1+( )x ]x1us =1280us Ingat, BRNE menghabiskan 2 siklus jika lompat dan 1 siklus ketika tidak lompat. Jadi, time delay =1280us 1 = 1279us Instruction Cycles DELAY: LDI R20, 0XFF 1 AGAIN: NOP 1 NOP 1 DEC R20 1 BRNE AGAIN 2/1 RET 4 Kusuma Wardana - Bahasa Rakitan

87 Loop Inside a Loop Delay Loop Inside a Loop Delay = nested loop Digunakan untuk membuat delay yang lebih lama Kusuma Wardana - Bahasa Rakitan

88 Contoh: Dgn menggunakan kristal 1 MHz, tentukan lamanya delay dr program berikut: DELAY: LDI R16, 200 AGAIN: LDI R17, 250 HERE: NOP NOP DEC R17 BRNE HERE DEC R16 BRNE AGAIN RET Kusuma Wardana - Bahasa Rakitan

89 Jawab: HERE Loop= [(5x250)-1] x 1us = 1.249us AGAIN mengulangi HERE sbanyak 200x, maka: 200 x 1249 = us Instruction Cycles DELAY: LDI R16, AGAIN: LDI R17, HERE: NOP 1 NOP 1 DEC R17 1 BRNE HERE 2/1 DEC R16 1 BRNE AGAIN 2/1 RET 4 Kusuma Wardana - Bahasa Rakitan

90 Kemudian instruksi diluar kalang: Instruction Cycles AGAIN: LDI R17, DEC R16 1 BRNE AGAIN 2/1 [(4 x 200) 1] x 1us = 799us Total = = us Kita blm memasukkan LDI R16, 200 dan RET TOTAL semuanya = 1us us + 4us = us Kusuma Wardana - Bahasa Rakitan

91 Kusuma Wardana - Bahasa Rakitan

92 Non-pipeline fetch 1 execute 1 fetch 2 execute 2 fetch 3 execute 3 Pipeline fetch 1 execute 1 fetch 2 execute 2 fetch 3 execute 3 fetch 4 execute 4 fetch 5 execute 5 Time T1 T2 T3 T4 T5 T6 Kusuma Wardana - Bahasa Rakitan

93 Kusuma Wardana - Bahasa Rakitan

94 Kusuma Wardana - Bahasa Rakitan

95 Single-cycle Pipeline Kusuma Wardana - Bahasa Rakitan

96 Kita dpt menggunakan pipeline utk mempercepat eksekusi dr instruksi Pd pipeline proses utk mengeksekusi dipecah menjadi langkah2 kecil dan dikerjakan scr paralel Kelemahan pipeline kecepatan eksekusi terbatasi oleh kecepatan terendah dr bagian pipeline tsb Kusuma Wardana - Bahasa Rakitan

97 Mazidi, Naimi and Naimi, 2011, The AVR Microcontroller and Embedded System: Using Assembly and C, Prentice Hall Vahid, Frank and Gigarvis, Tony, 1999, Embedded System Design: Unified Hardware/Software Approach Morton, John, 2007, AVR: An Introductory Course, Newnes Publisher Kusuma Wardana - Bahasa Rakitan

Materi 6: AVR Status Register & AVR Data Format Directives I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali

Materi 6: AVR Status Register & AVR Data Format Directives I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Materi 6: AVR Status Register & AVR Data Format Directives I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Kusuma Wardana, M.Sc. 1 AVR Status Register AVR data format AVR directive Workshop Kusuma

Lebih terperinci

Materi 5: Architecture and Assembly Language Programming. I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali

Materi 5: Architecture and Assembly Language Programming. I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Materi 5: Architecture and Assembly Language Programming I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali General Purpose Registers (GPRs) The AVR Data Memory Using Instructions with the Data

Lebih terperinci

Materi 9: AVR Interrupt

Materi 9: AVR Interrupt Materi 9: AVR Interrupt I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Kusuma Wardana, M.Sc. 1 AVR Interrupt Interrupt vs Polling Programming Timer Interrupt Kusuma Wardana, M.Sc. 2 Interrupt

Lebih terperinci

2. Unit Praktikum Perhitungan Aritmatika

2. Unit Praktikum Perhitungan Aritmatika 2. Unit Praktikum Perhitungan Aritmatika Data yang dipakai dalam mikrokontroler ATmega8535 direpresentasikan dalam sistem bilangan biner, desimal dan bilangan heksadesimal. Data yang terdapat di mikrokontroler

Lebih terperinci

Interfacing. Materi 2: AVR Architecture. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 2: AVR Architecture. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 2: AVR Architecture Disusun Oleh: I Nyoman Kusuma Wardana Outline Keluarga Mikrokontroler AVR Arsitektur internal AVR RISC Von Neumann dan Harvard Architecture Atmega16 Workshop Kusuma

Lebih terperinci

Materi 4: Assembly Language Programming

Materi 4: Assembly Language Programming Materi 4: Assembly Language Programming I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Pendahuluan Mesin sederhana Mnemonic dan sintaks Kusuma Wardana, M.Sc 2 Pendahuluan Mesin sederhana Mnemonic

Lebih terperinci

Materi 2: Computer Systems

Materi 2: Computer Systems Materi 2: Computer Systems I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Pendahuluan top-level view Komponen Komputer Fungsi Komputer Kusuma Wardana, M.Sc 2 Pendahuluan top-level view Komponen

Lebih terperinci

Materi 6: Control Unit Operations

Materi 6: Control Unit Operations Materi 6: Control Unit Operations I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Pendahuluan Siklus Instruksi Micro-operations Kusuma Wardana, M.Sc. 2 PENDAHULUAN Kusuma Wardana, M.Sc. 3 Jika

Lebih terperinci

Materi 3: Instruction Set

Materi 3: Instruction Set Materi 3: Instruction Set I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Lokasi dan Pengalamatan Memori Tipe-tipe Instruksi Mode Pengalamatan Kusuma Wardana, M.Sc. 2 Lokasi dan Pengalamatan

Lebih terperinci

Materi 4: Microprocessor-Based Control

Materi 4: Microprocessor-Based Control Materi 4: Microprocessor-Based Control I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Mikroprosesor mengantarkan ke suatu era baru dlm sistem kontrol Mikroprosesor menawarkan fleksibilitas

Lebih terperinci

Materi 5: Processor Structure & Function

Materi 5: Processor Structure & Function Materi 5: Processor Structure & Function I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Organisasi Prosesor Organisasi Register Kusuma Wardana, M.Sc. 2 Bagian 2 Utama Komputer: Top level view

Lebih terperinci

CENTRAL PROCESSING UNIT CPU

CENTRAL PROCESSING UNIT CPU CENTRAL PROCESSING UNIT CPU edywin 1 Central Processing Unit CPU terdiri dari : - Bagian data (Datapath) yang berisi register register untuk penyimpanan data sementara dan sebuah ALU untuk melaksanakan

Lebih terperinci

Materi 8: AVR Timer Programming

Materi 8: AVR Timer Programming Materi 8: AVR Timer Programming I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Kusuma Wardana, M.Sc. 1 Introduction Programming Timers: Timer0 Timer1 Timer2 Counter Kusuma Wardana, M.Sc. 2 Banyak

Lebih terperinci

Simple As Possible (SAP) - 2. Abdul Syukur

Simple As Possible (SAP) - 2. Abdul Syukur Simple As Possible (SAP) - 2 Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 053740514 Arsitektur Komputer SAP-2 Persamaan dengan SAP-1 : Sama-sama komputer bit. Kesamaan ini dapat

Lebih terperinci

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM I MODEL PEMROGRAMAN 1

MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM I MODEL PEMROGRAMAN 1 MODUL PRAKTIKUM SISTEM OPERASI PRAKTIKUM I MODEL PEMROGRAMAN 1 A. Tujuan Pada akhir praktikum ini, peserta dapat: 1. Memahami komponen arsitektur komputer tingkat bawah. 2. Menggunakan simulator untuk

Lebih terperinci

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO Oky Dwi Nurhayati, ST, MT email: okydn@undip.ac.id 1 Central Processing Unit CPU terdiri dari : - Bagian data (Datapath) yang berisi register register

Lebih terperinci

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

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer SAP-2 Mohamad Dani (MHM) E-mail: mohamad.dani@gmail.com Hanya dipergunakan untuk kepentingan pengajaran di lingkungan Telkom

Lebih terperinci

Set Instruksi. Set Instruksi. Set Instruksi adalah kumpulan

Set Instruksi. Set Instruksi. Set Instruksi adalah kumpulan Bab 10 Disusun Oleh : Rini Agustina, S.Kom, M.Pd Definisi: lengkap instruksi yang dapat adalah kumpulan dimengerti CPU Sifat2: 1. Merupakan Kode Mesin 2. Dinyatakan dalam Biner 3.Biasanya digunakan dalam

Lebih terperinci

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR diadaptasikan dari materi kuliah CS61C/2000 & CS152/1997 2000/1997 UCB 18 September 2002 Bobby Nazief (nazief@cs.ui.ac.id)

Lebih terperinci

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

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS : MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI Nama : Annisa Christyanti Kelas : XI TJA 3 NIS : 3103113017 TEKNIK JARINGAN AKSES SMK TELKOM SANDHY PUTRA PURWOKERTO TAHUN AJARAN 2014/2015 Mode dan Format

Lebih terperinci

Materi 1: Pendahuluan

Materi 1: Pendahuluan Materi 1: Pendahuluan I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Kusuma Wardana - Bahasa Rakitan 2016 1 Mengapa kita belajar bahasa assembly? Sejarah mikroprosesor Mikroprosesor, Mikrokomputer

Lebih terperinci

Simple As Possible (SAP) - 2. Abdul Syukur

Simple As Possible (SAP) - 2. Abdul Syukur Simple As Possible (SAP) - 2 Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 053740514 Arsitektur Komputer SAP-2 Persamaan dengan SAP-1 : Sama-sama komputer bit. Kesamaan ini dapat

Lebih terperinci

Kumpulan instruksi lengkap yang dimengerti

Kumpulan instruksi lengkap yang dimengerti Set Instruksi: 1 Set instruksi? Kumpulan instruksi lengkap yang dimengerti oleh CPU Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut

Lebih terperinci

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2

DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2 DCH1B3 Konfigurasi Perangkat Keras Komputer SAP-2 1 11/20/2016 1 Setelah mengikuti perkuliahan ini mahasiswa dapat: Memahami Arsitektur SAP-2. Menjelaskan cara kerja SAP-2. Menjelaskan instruksi-instruksi

Lebih terperinci

Interfacing. Materi 4: Serial Communications. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 4: Serial Communications. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 4: Serial Communications Disusun Oleh: I Nyoman Kusuma Wardana Outline Serial Communication Overview Asynchronous vs Synchronous RS232 AVR Serial Port Programming Workshop Kusuma Wardana

Lebih terperinci

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

BAB I PENDAHULUAN 1.1 LATAR BELAKANG BAB I PENDAHULUAN 1.1 LATAR BELAKANG Pada saat ini prosesor saat ini yang dikenal ada 2 yaitu. RISC dan CISC. Prosesor CISC merupakan prosesor yang memiliki intruksi yang kompleks untuk memudahkan penulisan

Lebih terperinci

Microcontroller: Bahasa Pemrograman Assembly 8051

Microcontroller: Bahasa Pemrograman Assembly 8051 Microcontroller: Bahasa Pemrograman Assembly 8051 Oleh: Ali Sofyan Kholimi Universitas Muhammadiyah Malang E-Mail / IM: kholimi@gmail.com Blog: http://kholimi-id.blogspot.com Tujuan Belajar Mendaftar register

Lebih terperinci

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

OPERATION SYSTEM. Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088 OPERATION SYSTEM Nama : Dian Fahrizal Nim : 110170096 Unit : A3 Jenis - Jenis Register Berdasarkan Mikroprosesor 8086/8088 Mikroprosesor 8086/8088 memiliki 4 register yang masing-masingnya terdiri dari

Lebih terperinci

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016

Set Instruksi & Mode Pengalamatan. Team Dosen Telkom University 2016 Set Instruksi & Mode Pengalamatan Team Dosen Telkom University 2016 Karakteristik Instruksi Mesin Set intruksi adalah kumpulan lengkap dari instruksi yang dapat dieksekusi oleh CPU Set instruksi adalah

Lebih terperinci

Materi 2: Numbering & Coding Systems

Materi 2: Numbering & Coding Systems Materi 2: Numbering & Coding Systems I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Sistem bilangan Konversi bilangan Aritmatika bilangan Sandi ASCII Bytes, Nibbles, Words Kusuma Wardana - Bahasa

Lebih terperinci

Arsitektur Set Instruksi. Abdul Syukur

Arsitektur Set Instruksi. Abdul Syukur Arsitektur Set Instruksi Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 085374051884 Tujuan Memahami representasi set instruksi, dan jenis-jenis format instruksi. Mengetahui jenis-jenis

Lebih terperinci

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA

Materi 3. Komponen Mikrokomputer SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA Materi 3 SYSTEM HARDWARE DAN SOFTWARE DADANG MULYANA dadang mulyana 2012 1 Komponen Mikrokomputer Video display (jenis dan resolusi) Keyboard Drive Disk Unit system Prosessor Pendukung dadang mulyana 2012

Lebih terperinci

ARSITEKTUR KOMPUTER SET INSTRUKSI

ARSITEKTUR KOMPUTER SET INSTRUKSI LOGO ASSALAMU ALAIKUM ARSITEKTUR KOMPUTER SET INSTRUKSI Disajikan Oleh : RAHMAD KURNIAWAN, S.T., M.I.T. TEKNIK INFORMATIKA UIN SUSKA RIAU Karakteristik dan Fungsi Set Instruksi Operasi dari CPU ditentukan

Lebih terperinci

Unit Kendali (2) CONTROL UNIT. RegDst Branch. MemRead. MemToReg. Instruction (31-26) ALUOp MemWrite. ALUSrc. RegWrite

Unit Kendali (2) CONTROL UNIT. RegDst Branch. MemRead. MemToReg. Instruction (31-26) ALUOp MemWrite. ALUSrc. RegWrite Unit Kendali MIPS Datapath #1 Unit Kendali (1) Tujuan: mengendalikan semua aktifitas prosesor, atau lebih tepatnya untuk mengendalikan semua komponen seperti ALU, PC, Register, dll Masukan: Operation Code

Lebih terperinci

Interfacing. Materi 7: SPI Communication. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 7: SPI Communication. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 7: SPI Communication Disusun Oleh: I Nyoman Kusuma Wardana Outline SPI Bus Protocol SPI Programming Kusuma Wardana - Interfacing 2013 2 Kusuma Wardana - Interfacing 2013 3 SPI : Serial

Lebih terperinci

ARSITEKTUR SET INSTRUKSI. Ptputraastawa.wordpress.com

ARSITEKTUR SET INSTRUKSI. Ptputraastawa.wordpress.com ARSITEKTUR SET INSTRUKSI ptputraastawa@gmail.com Ptputraastawa.wordpress.com Karakteristik Dan Fungsi Set Instruksi Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau dijalankannya.

Lebih terperinci

Arsitektur dan Organisasi Komputer Set Intruksi

Arsitektur dan Organisasi Komputer Set Intruksi 5/21/2015 Arsitektur dan Organisasi Komputer Set Intruksi 1 Set instruksi? Kumpulan instruksi lengkap yang dimengerti oleh CPU Kode mesin Biner Kode assembly Gembong Edhi Setyawan s1 / TI / semester 3

Lebih terperinci

Hanif Fakhrurroja, MT

Hanif Fakhrurroja, MT Pertemuan 6 Organisasi Komputer CPU dan Sistem Bus Hanif Fakhrurroja, MT PIKSI GANESHA, 2013 Hanif Fakhrurroja @hanifoza hanifoza@gmail.com Agenda Pertemuan 6 1 CPU 2 Sistem Bus Pendahuluan Video CPU CPU

Lebih terperinci

PERTEMUAN MINGGU KE-5 ARSITEKTUR SET INSTRUKSI

PERTEMUAN MINGGU KE-5 ARSITEKTUR SET INSTRUKSI PERTEMUAN MINGGU KE-5 ARSITEKTUR SET INSTRUKSI KARAKTERISTIK DAN FUNGSI SET INSTRUKSI Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut

Lebih terperinci

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

William Stallings Computer Organization and Architecture. Chapter 9 Set Instruksi: Karakteristik dan Fungsi William Stallings Computer Organization and Architecture Chapter 9 Set Instruksi: Karakteristik dan Fungsi 1 Set instruksi? Kumpulan instruksi lengkap yang dimengerti oleh CPU Kode mesin Biner Kode assembly

Lebih terperinci

Set Instruksi: Set instruksi?

Set Instruksi: Set instruksi? Set Instruksi: 1 Set instruksi? Operasi dari CPU ditentukan oleh instruksiinstruksi yang dilaksanakan atau dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (machine instructions) atau

Lebih terperinci

BAB I AVR ATMega 8535L

BAB I AVR ATMega 8535L BAB I AVR ATMega 8535L 1.1 Sekilas Tentang AVR AVR : Alf and Vegard RISC atau AVR : Advanced Virtual RISC RISC: Reduced Instruction Set Computer Arsitektur mikrokontroler jenis AVR pertamakali dikembangkan

Lebih terperinci

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR INSTRUKSI PERCABANGAN DAN LOOP

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR INSTRUKSI PERCABANGAN DAN LOOP LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR INSTRUKSI PERCABANGAN DAN LOOP Disusun oleh Nama : Yudi Irwanto NIM : 021500456 Prodi : Elektronika Instrumentasi Tanggal Praktikum : 28 April 2017 Asisten : Rokhmat

Lebih terperinci

Karakteristik Instruksi Mesin

Karakteristik Instruksi Mesin PERTEMUAN Karakteristik Instruksi Mesin Instruksi mesin (machine intruction) yang dieksekusi membentuk suatu operasi dan berbagai macam fungsi CPU. Kumpulan fungsi yang dapat dieksekusi CPU disebut set

Lebih terperinci

Organisasi Komputer II STMIK AUB SURAKARTA

Organisasi Komputer II STMIK AUB SURAKARTA Organisasi Komputer II STMIK AUB SURAKARTA Fetch : membaca instruksi berikutnya dari memori ke dalam CPU Execute : menginterpretasikan opcode dan melakukan operasi yang diindikasikan Interrupt : Apabila

Lebih terperinci

Hanif Fakhrurroja, MT

Hanif Fakhrurroja, MT Pertemuan 11 Organisasi Komputer Arsitektur Set-Set Instruksi Hanif Fakhrurroja, MT PIKSI GANESHA, 2013 Hanif Fakhrurroja @hanifoza hanifoza@gmail.com Apakah set Instruksi itu? Kumpulan instruksi lengkap

Lebih terperinci

Interfacing. Materi 8: I2C Communication. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 8: I2C Communication. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 8: I2C Communication Disusun Oleh: I Nyoman Kusuma Wardana Outline I2C Bus Protocol TWI Protocol Kusuma Wardana - Interfacing 2013 2 Kusuma Wardana - Interfacing 2013 3 IIC : Inter-Integrated

Lebih terperinci

MIKROKONTROLER AT89S52

MIKROKONTROLER AT89S52 MIKROKONTROLER AT89S52 Mikrokontroler adalah mikroprosessor yang dirancang khusus untuk aplikasi kontrol, dan dilengkapi dengan ROM, RAM dan fasilitas I/O pada satu chip. AT89S52 adalah salah satu anggota

Lebih terperinci

ARSITEKTUR DAN ORGANISASI KOMPUTER

ARSITEKTUR DAN ORGANISASI KOMPUTER ARSITEKTUR DAN ORGANISASI KOMPUTER PART 3: THE CENTRAL PROCESSING UNIT CHAPTER 12: PROCESSOR STRUCTURE AND FUNCTION PRIO HANDOKO, S.KOM., M.T.I. CHAPTER 12: PROCESSOR STRUCTURE AND FUNCTION Kompetensi

Lebih terperinci

BAB 4 STACK AREA, SUBROUTINE dan INSTRUKSI BLOK

BAB 4 STACK AREA, SUBROUTINE dan INSTRUKSI BLOK BAB 4 STACK AREA, SUBROUTINE dan INSTRUKSI BLOK Buku: Bahasa Oleh : Setiawardhana Bahasa Assembly (Buku( Komputer 3) oleh : Son Kuswadi Politeknik Elektronika Negeri Surabaya STACK AREA Menyelamatkan register

Lebih terperinci

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 MIKROKONTROLER Arsitektur Mikrokontroler AT89S51 Ringkasan Pendahuluan Mikrokontroler Mikrokontroler = µp + Memori (RAM & ROM) + I/O Port + Programmable IC Mikrokontroler digunakan sebagai komponen pengendali

Lebih terperinci

Mata Kuliah : Bahasa Rakitan Materi ke-3

Mata Kuliah : Bahasa Rakitan Materi ke-3 Mata Kuliah : Bahasa Rakitan Materi ke-3 Struktur Register REGISTER Register adalah sebagian kecil memory komputer yang dipakai i untuk tempatt penampungan dt data. Data yang terdapat dalam register dapat

Lebih terperinci

MAKALAH PERANCANGAN KEYPAD MESIN FOTOKOPI SISTEM MIKROPROSESOR

MAKALAH PERANCANGAN KEYPAD MESIN FOTOKOPI SISTEM MIKROPROSESOR MAKALAH PERANCANGAN KEYPAD MESIN FOTOKOPI SISTEM MIKROPROSESOR DISUSUN OLEH: RIZKY JANUAR (35501) NATHAN SITOHANG (36017) JURUSAN TEKNIK ELEKTRO DAN TEKNOLOGI INFORMASI FAKULTAS TEKNIK UNIVERSITAS GADJAH

Lebih terperinci

Interfacing. Materi 5: LCD and Keyboard Interfacing. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 5: LCD and Keyboard Interfacing. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 5: LCD and Keyboard Interfacing Disusun Oleh: I Nyoman Kusuma Wardana Outline LCD Interfacing Keyboard Interfacing Workshop Kusuma Wardana - Interfacing 2013 2 LCD Interfacing Kusuma

Lebih terperinci

Organisasi & Arsitektur Komputer

Organisasi & Arsitektur Komputer Organisasi & Arsitektur Komputer 1 Set Instruksi Eko Budi Setiawan, S.Kom., M.T. Eko Budi Setiawan mail@ekobudisetiawan.com www.ekobudisetiawan.com Teknik Informatika - UNIKOM 2013 Arsitektur Komputer

Lebih terperinci

Mengenal bahasa assembly

Mengenal bahasa assembly Mengenal bahasa assembly adiatma adiatma@raharja.info Abstrak Komputer adalah mesin penghitung elektronik yang cepat dan dapat menerima informasi input digital, kemudian memprosesnya sesuai dengan program

Lebih terperinci

Pertemuan Ke-12 RISC dan CISC

Pertemuan Ke-12 RISC dan CISC Pertemuan Ke-12 RISC dan CISC RISC Reduced Instruction Set Computer Komputer dengan Set instruksi terbatas CISC Complex Instruction Set Computer Komputer dengan Set instruksi Kompleks RISC (Reduced Instruction

Lebih terperinci

BAHASA PEMOGRAMAN AT89S/Cxx (assembly)

BAHASA PEMOGRAMAN AT89S/Cxx (assembly) 1 BAHASA PEMOGRAMAN AT89S/Cxx (assembly) Operand dalam pemograman mikrokontroler adalah data yang tersimpan dalam memory, register dan input/output (I/O). Instruksi yang dikenal secara umum dikelompokan

Lebih terperinci

Simple As Possible (SAP) - 1. Abdul Syukur

Simple As Possible (SAP) - 1. Abdul Syukur Simple As Possible (SAP) - 1 Abdul Syukur abdulsyukur@eng.uir.ac.id http://skurlinux.blogspot.com 0537051 Arsitektur Komputer SAP-1 Cp Ep LM CE Pencacah Program (Program Counter) Register Masukan dan MAR

Lebih terperinci

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- Struktur Fungsi CPU Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 -- This presentation is revised by @hazlindaaziz, STMIK, 2014 Main Material: Acknowledgement

Lebih terperinci

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51

PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 Pendahuluan Dalam materi sebelumnya sudah di bahas untuk menjalankan suatu tugas maka mikrokontroler 89C51 membutuhkan sebuah program yang terdiri dari susunan

Lebih terperinci

ORGANISASI INTERNAL PROSESOR Oleh: Priyanto

ORGANISASI INTERNAL PROSESOR Oleh: Priyanto ORGANISASI INTERNAL PROSESOR Oleh: Priyanto Setiap prosesor memiliki beberapa perbedaan dan keistimewaan, tetapi organisasi dasarnya terdiri dari arithmatic/logic unit (ALU), register dan control unit

Lebih terperinci

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

PERCOBAAN 5 STACK DAN SUBROUTINE. Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY PERCOBAAN 5 STACK DAN SUBROUTINE Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : sumarna@uny.ac.id Tujuan dari percobaan ini adalah untuk memberikan pengertian mengenai arti stack, dapat menggunakan

Lebih terperinci

Mikrokontroller Berbasiskan RISC 8 bits

Mikrokontroller Berbasiskan RISC 8 bits Mikrokontroller Berbasiskan RISC 8 bits Pokok Bahasan: 1. Perangkat Keras PIC Microcontroller ( 8bit RISC) Architecture Memory Organization Interrupts I/O Ports Timers Analog to Digital I/O Assembly Language

Lebih terperinci

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

Eksekusi instruksi Tipe R, LW-SW, Beq, dan Jump (Pertemuan ke-24) Eksekusi instruksi Tipe R, LW-SW, Beq, dan Jump (Pertemuan ke-24) Diedit ulang oleh: Endro Ariyanto Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom April 2016 Instruksi Instruksi disimpan

Lebih terperinci

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ 1. Tempat penyimpanan primer yang bersifat mudah hilang (volatile) dikarenakan hilang saat listrik padam adalah... a. Random Access Memory b. Read Only Memory

Lebih terperinci

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR diadaptasikan dari materi kuliah CS61C/2000 & CS152/1997 2000/1997 UCB 18 September 2002 Bobby Nazief (nazief@cs.ui.ac.id)

Lebih terperinci

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

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan Pertemuan ke 6 Set Instruksi Computer Organization Dosen : Eko Budi Setiawan Tujuan Memahami representasi set instruksi, dan jenis-jenis format instruksi Mengetahui jenis-jenis type operand yang digunakan

Lebih terperinci

SISTEM KERJA MIKROPROSESOR

SISTEM KERJA MIKROPROSESOR 1 SISTEM KERJA MIKROPROSESOR Percobaan I Tujuan Percobaan 1. Mempelajari hubungan bahasa tingkat rendah dengan arsitektur mikroprosesor. 2. Memahami konsep pemograman modular dan pengolahan data dalam

Lebih terperinci

Interfacing. Materi 6: ADC, DAC & Sensor Interfacing. Disusun Oleh: I Nyoman Kusuma Wardana

Interfacing. Materi 6: ADC, DAC & Sensor Interfacing. Disusun Oleh: I Nyoman Kusuma Wardana Interfacing Materi 6: ADC, DAC & Sensor Interfacing Disusun Oleh: I Nyoman Kusuma Wardana Outline General ADC concepts ADC programming Sensor interfacing & signal conditioning DAC interfacing Kusuma Wardana

Lebih terperinci

Pengantar Memori dan Memori Internal

Pengantar Memori dan Memori Internal Arus Data dalam Komputer Pengantar Memori dan Media Penyimpan DMA Modul I/O Perangkat Eksternal Bagaimana program dijalankan Bagaimana program dijalankan Sistem Operasi - instruksi bhs assembly (mesin)

Lebih terperinci

Materi 1: Pendahuluan

Materi 1: Pendahuluan Materi 1: Pendahuluan I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali Mengapa Belajar Organisasi Komputer? Komputer mrpkn jantung dari komputasi tanpa komputer semua disiplin ilmu2 di bidang

Lebih terperinci

Organisasi Sistem Komputer

Organisasi Sistem Komputer LOGO Organisasi Sistem Komputer OSK 10 Reduced Instruction Set Computer Pendidikan Teknik Elektronika FT UNY Perkembangan Komputer RISC Family concept melepaskan arsitektur mesin dari implementasinya.

Lebih terperinci

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

Perangkat dan format Instruksi, Immediate, Direct, & Indirect Addressing MODUL KE 7 Sistem Mikroprosesor (3 sks) 7 MATERI KULIAH : Pengertian program sistem mikroprosesor; instruction set (perangkat instruksi); format instruksi secara umum; cara mengurangi panjang instruksi;

Lebih terperinci

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I)

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I) Pertemuan 2 Organisasi Komputer II Struktur & Fungsi CPU (I) 1 Menjelaskan tentang komponen utama CPU dan Fungsi CPU Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

Lebih terperinci

Hanif Fakhrurroja, MT

Hanif Fakhrurroja, MT Pertemuan 12 Organisasi Komputer Pipeline, Processor RISC dan CISC Hanif Fakhrurroja, MT PIKSI GANESHA, 2013 Hanif Fakhrurroja @hanifoza hanifoza@gmail.com http://hanifoza.wordpress.com Sub-siklus Instruksi

Lebih terperinci

MODUL I PENGENALAN ASSEMBLY

MODUL I PENGENALAN ASSEMBLY MODUL I PENGENALAN ASSEMBLY Apakah bahasa assembly? Bahasa assembly adalah bahasa pemrograman dengan korespondensi satu-satu antara perintahperintah/pernyataannya dan bahasa mesin komputer. Bahasa assembly

Lebih terperinci

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

BAB VII KOMPUTER SEDERHANA SAP-3 (SIMPLE AS POSSIBLE-3) Tony Darmanto, ST / IV / TI / STMIK Widya Dharma / Hal 1 BAB VII KOMPUTER SEDERHANA SAP-3 (SIMPLE AS POSSIBLE-3) 7.1. Model Pemrograman Komputer SAP-3 adalah komputer 8-bit yang memiliki keselarasan (compatibel)

Lebih terperinci

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

Eksekusi instruksi Tipe R, LW-SW, Beq, Jump, dan Model Pengalamatan (Pertemuan ke-24) Eksekusi instruksi Tipe R, LW-SW, Beq, Jump, dan Model Pengalamatan (Pertemuan ke-24) Diedit ulang oleh: Endro Ariyanto Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom April 2016 Eksekusi

Lebih terperinci

INSTRUKSI DASAR Salahuddin, SST.

INSTRUKSI DASAR Salahuddin, SST. INSTRUKSI DASAR 8085 Salahuddin, SST Email : salahuddin_ali@ymail.com salahuddin.ali00@gmail.comali00@gmail Web Site : www.salahuddinali.com Format perintah yang digunakan pada CPU 8085 Instruksi CPU 8085

Lebih terperinci

ORGANISASI KOMPUTER DASAR

ORGANISASI KOMPUTER DASAR ORGANISASI KOMPUTER DASAR A. KOMPONEN SISTEM Sebuah komputer moderen/digital dengan program yang tersimpan di dalamnya merupakan sebuah system yang memanipulasi dan memproses informasi menurut kumpulan

Lebih terperinci

Organisasi Komputer & Organisiasi Prosesor

Organisasi Komputer & Organisiasi Prosesor Organisasi Komputer & Organisiasi Prosesor Organisasi Sistem Komputer Priyanto E-mail : priyanto@uny.ac.id Mobile: 0811282609 Program Studi Pendidikan Teknik Informatika Jurusan Pendidikan Teknik Elektronika

Lebih terperinci

Teknologi Scalar untuk meningkatkan Kinerja Prosesor

Teknologi Scalar untuk meningkatkan Kinerja Prosesor MODUL PERKULIAHAN RISC dan CISC Teknologi Scalar untuk meningkatkan Kinerja Prosesor Fakultas Program Studi Tatap Muka Kode MK Disusun Oleh Ilmu Komputer Teknik Informatika 12 15004 Tri Daryanto Abstract

Lebih terperinci

Mikrokontroler AVR. Hendawan Soebhakti 2009

Mikrokontroler AVR. Hendawan Soebhakti 2009 Mikrokontroler AVR Hendawan Soebhakti 2009 Tujuan Mampu menjelaskan arsitektur mikrokontroler ATMega 8535 Mampu membuat rangkaian minimum sistem ATMega 8535 Mampu membuat rangkaian downloader ATMega 8535

Lebih terperinci

PEMROGRAMAN 8085 Kelompok Instruksi Email : salahuddin_ali@ymail.com salahuddin.ali00@gmail.comali00@gmail Web Site : www.salahuddinali.com Kelompok Instruksi Transfer Data MOV MVI transfer data transfer

Lebih terperinci

Instructions Set. Element dari instruction. Representasi dari Op code

Instructions Set. Element dari instruction. Representasi dari Op code s Set Adalah sekumpulan instruksi lengkap yang dapat dimengerti oleh CPU, instruction sets berupa kode mesin (machine code) dalam bentuk bilangan biner (binary) dan biasanya direpresentasi-kan dalam kode/bahasa

Lebih terperinci

BAB II PENGENALAN ATMEGA 8535 DAN VHDL

BAB II PENGENALAN ATMEGA 8535 DAN VHDL BAB II PENGENALAN ATMEGA 8535 DAN VHDL Bab ini akan memaparkan secara rinci mengenai mikrokontroler Atmel ATMega 8535 dan bahasa perangkat keras VHDL yang digunakan dalam tesis ini. Pembahasan mikrokontroler

Lebih terperinci

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR STACK DAN SUBROUTINE

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR STACK DAN SUBROUTINE LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR STACK DAN SUBROUTINE Disusun oleh : Nama : Yudi Irwanto (021500456) Rekan Kerja : Safira Rachmadewi (021500453) Tri Handayani (021500454) Prodi : Elektronika Instrumentasi

Lebih terperinci

Operasi Transfer Data

Operasi Transfer Data Operasi Transfer Data Pada bab ini akan dibahas tujuan pembelajaran, Bahasa pemrograman mikroprosesor Z80. Selain itu dikemukakan contoh-contoh Bahasa program sederhana dan aplikasinya. Tujuan Pembelajaran:

Lebih terperinci

STRUKTUR CPU. Arsitektur Komputer

STRUKTUR CPU. Arsitektur Komputer STRUKTUR CPU Arsitektur Komputer Tujuan Mengerti struktur dan fungsi CPU yaitu dapat melakukan Fetch instruksi, interpreter instruksi, Fetch data, eksekusi, dan menyimpan kembali. serta struktur dari register,

Lebih terperinci

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

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

Lebih terperinci

Materi 5: Protokol I2C

Materi 5: Protokol I2C Materi 5: Protokol I2C I Nyoman Kusuma Wardana Sistem Komputer STMIK STIKOM Bali IIC Inter-Integrated Circuit Terkadang disebut I 2 C Awalnya dikembangkan oleh Philips Semiconductor (saat ini mjd NXP Semiconductor)

Lebih terperinci

Kuis : Bahasa Rakitan (UAS)

Kuis : Bahasa Rakitan (UAS) Kuis : Bahasa Rakitan (UAS) Nama NIM Kelas :.. :.. :.. (Jawaban dikerjakan pada lembar soal ini, dikumpulkan melalui asisten dengan print out paling lambat dan email ke ruliriki@gmail.com) Teknis pengumpulan

Lebih terperinci

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan Arsitektur dan Organisasi Komputer Set instruksi dan Pengalamatan Komponen Komputer Karakteristik Instruksi Mesin Instruksi mesin (machine intruction) yang dieksekusi membentuk suatu operasi dan berbagai

Lebih terperinci

PETA MEMORI MIKROPROSESOR 8088

PETA MEMORI MIKROPROSESOR 8088 1. Bagan Dasar µp 8088 PETA MEMORI MIKROPROSESOR 8088 Gambar 1. Bagan Dasar µp 8088 Elemen didalam mikroprosesor adalah : CU (Control Unit) adalah manajer dari semua unit. CU mengatur keselarasan kerja

Lebih terperinci

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

BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. 1 BAB I TUGAS MATA KULIAH SISTEM MIKROPROSESOR DOSEN PEMBERI TUGAS : FATAH YASIN, ST, MT. A. Deskripsi Tugas 1. Jelaskan perbedaan mikroprosesor dan mikrokontroler. 2. Jelaskan mode-mode pengalamatan yang

Lebih terperinci

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-2: Arsitektur Set Instruksi

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-2: Arsitektur Set Instruksi IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-2: Arsitektur Set Instruksi diadaptasikan dari materi kuliah CS61C/2000 & CS152/1997 2000/1997 UCB 11 September 2002 Bobby Nazief (nazief@cs.ui.ac.id)

Lebih terperinci

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan)

PERTEMUAN. SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan) PERTEMUAN SET INSTRUKSI MIKROKONTROLER AT 89C51 (Lanjutan) Rotate Perintah Rotate identik dengan Shift register dimana bit-bit dalam byte di geser ke kiri atau kekanan dengan atau tanpa carry. Perintah-perintah

Lebih terperinci

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR APLIKASI DASAR INSTRUKSI ARITMATIKA DAN OPERASI LOGIK

LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR APLIKASI DASAR INSTRUKSI ARITMATIKA DAN OPERASI LOGIK LAPORAN PRAKTIKUM SISTEM MIKROPROSESSOR APLIKASI DASAR INSTRUKSI ARITMATIKA DAN OPERASI LOGIK Disusun oleh : Nama : Yudi Irwanto (021500456) Prodi : Elektronika Instrumentasi Tanggal Praktikum : 6 April

Lebih terperinci

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU)

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU) Bab 7 Prosesor Dan Memori 7.1 Pendahuluan Alat pemroses adalah alat dimana instruksi-instruksi program diproses untuk mengolah data yang sudah dimasukkan melalui alat input dan hasilnya akan ditampilkan

Lebih terperinci