Você está na página 1de 7

1. Apa yang dimaksud dengan mikrokomputer ?

A
a. suatu sistem keseluruhann komputer yang terdiri dari sebuah chip mikroprosesor,
chip memori, dan peralatan input/output.
b. Unit kontrol yang mampu mengatur jalannya program
c. Unit eksekusi yang mampu melakukan operasi terhadap data
d. Sekumpulan daftar yang dapat digunakan untuk menampung data
2. Apa yang dimaksud dengan mikrokontroler? B
a. sebuah protokol Internet yang berjalan di dalam lapisan aplikasi yang merupakan
standar untuk pentransferan berkas (file) komputer antar mesin-mesin dalam
sebuah internetwork.
b. sebuah chip yang terdiri dari RAM, ROM dan peranti I/O.
c. sebuah protokol jaringan yang digunakan di koneksi Internet atau Local Area
Network
d. suatu bentuk komunikasi di Internet yang diciptakan untuk komunikasi kelompok
di tempat diskusi yang dinamakan channel (saluran), tetapi juga bisa untuk
komunikasi jalur pribadi.
3. Fungsi ALU dalam microcontroler adalah..? D
a. Unit kontrol yang mampu mengatur jalannya program
b. Sekumpulan daftar yang dapat digunakan untuk menampung data maupun hasil
perhitungan yang belum selesai dengan sempurna
c. Memori internal CPU, yang bentuknya bisa berupa cache
d. membentuk operasi-operasi hitungan dan nalar terhadap operand-operand.

4. Fungsi utama mikroprocessor adalah, kecuali .? D


a. Mengambil instruksi dan data dari memory
b. Memindahkan data dari dan ke memory
c. Mengirimkan sinyal kendali dan melayani sinyal interupsi
d. Mengatur pekerjaan dari brainware

5. Penghubung uC dengan komponen lain adalah . A


a.
b.
c.
d.

Port
Bus
Konektor
Blutooth

6. Pada Port IO Mikrokontroller pada saat diprogram sebagai OUTPUT, maka sifat Port
tersebut sebagai.. C
a.
b.
c.
d.

Buffer
Port biasa
Latch
Memori

7. Perbedaan DRAM dan SRAM adalah ...D


a.
b.
c.
d.

Tegangan catu daya DRAM lebih besar


SRAM memerlukan Refresh data
Kapasitas SRAM lebih besar r
SRAM lebih cepat

8. Bahasa Assembly adalah..? C


a.
b.
c.
d.

Bahasa high level


Bahasa mesin
Bahasa diantara bahasa mesin dan bahasa high level
Bahsa low level

9. Untuk mengisikan data 64h ke registerA maka perintah yang benar..? A


a.
b.
c.
d.

MOV A,#64h
MOVE A,#64H
MOV A,64H
MOVE A,64H

10. Mnemonik CLR A mewakili perintah..? B


a.
b.
c.
d.

Complement Accumulator
Clear Accumulator
Complement Register Accumulator
Clear register

11. Mnemonik JNC mewakili perintah..? A


a.
b.
c.
d.

Jump if carry not set


Jump if carry set
Jum if non carry
Jump if carry

12. Pernyataan berikut yang benar..? C


a.
b.
c.
d.

Source program dapat dijalankan langsung pada mikrokontroler


Listing program dapat dijalakan pada mikrokontroler
Program objek dapat dijalankan pada mikrokontroler
Assembler dapat dijalankan pada mikrokontroler

13. Konstruksi program assembly berikut yang salah..? D


a.
b.
c.
d.

Satu baris satu perintah dimulai dengan spasi atau tab


Kolom pertama setiap baris merupakan lokasi label
Operand pada setiap printah dipisahkan dengan tanda koma
Operand pada setiap perintah diakhiri dengan tanda titik

14. Pada mikrokontroler AT89S51 program awal harus ditulis pada original 0000h
karena..? B
a.
b.
c.
d.

Vektor interupsi beralamat 0000h


Vektor reset beralamat 0000h
Vektor control beralamat 0000h
Vektor booting beramat 0000h

15. Berikut ini merupakan definisi dari Algoritma, kecuali: B


a. Urutan langkah-langkah berhingga untuk memecahkan masalah logika atau
matematika
b. Urutan langkah-langkah tak berhingga untuk memecahkan masalah logika atau
matematika
c. Logika, metode dan tahapan (urutan) sistematis yang digunakan untuk
memecahkan suatu permasalahan
d. Urutan logis pengambilan keputusan untuk pemecahan masalah
16. Kata, ekspresi, pernyataan atau kombinasinya yang disusun dan dirangkai menjadi
satu kesatuan prosedur yang berupa urutan langkah-langkah untuk menyelesaikan
masalah yang diimplementasikan dengan menggunakan bahasa pemrograman
sehingga dapat dieksekusi oleh komputer, merupakan definisi dari: A
a. Program
b. Pemrograman

c. Bahasa pemrograman
d. Jawaban a, b dan c benar

17. Yang menterjemahkan instruksi per instruksi merupakan tugas dari : B


a. Compiler
c. Assembler
b. Interpreter
d. Machine language
18. (A + B) merupakan operasi logika: A
a. NOR
b. NAND

c. EXOR
d. EXNOR

19. A + A . B + A . B = ..................... A
a. A + B
b. A . B

c. A . B
d. A . B

20. Divide berarti: C


a. Membagi masalah menjadi beberapa masalah yang memiliki perbedaan
dengan masalah semula dan berukuran lebih besar
b. Membagi masalah menjadi beberapa masalah yang memiliki perbedaan
dengan masalah semula dan berukuran lebih kecil
c. Membagi masalah menjadi beberapa masalah yang memiliki kemiripan alah
semula dan berukuran lebih besar
d. Membagi masalah menjadi beberapa masalah yang memiliki kemiripan alah
semula dan berukuran lebih kecil
21. Tuliskan program assembly untuk mikrokontroler AT90S1200 yang dapat mengisikan nilai 0 ke dalam register R0, nilai 1 ke dalam R1, nilai 2 ke dalam R2, dan
seterusnya hingga nilai 29 ke dalam register R29, dengan menggunakan teknik
pengalamatan secara tidak-langsung.
Jawab
Pasangan register Z (ZL dan ZH) secara bersama-sama dapat dipakai untuk
menyimpan alamat memori (termasuk register lainnya) yang akan diakses. Mula-mula
pasangan register ini dimuati dengan nilai nol (0x0000) yang berarti sedang menunjuk register R0.
Setelah itu, nilai register ZL (yang kini bernilai nol) dapat dimuatkan ke dalam register
R0 secara tidak-langsung dengan perintah:
st
Z, register
; store isi register ke alamat yang sedang ditunjuk Z
Berikutnya isi register ZL dinaikkan (ditambah satu) sehingga pasangan register Z kini
sedang menunjuk ke alamat berurutan berikutnya yakni register R1. Dan isi register ZL
kini dapat dimuatkan ke dalam register R1 secara tidak-langsung. Demikian selanjutnya
hingga
ke-30 register dapat terisi nilai-nilai 0 hingga 29 secara berurutan. Listing program
assem- bly secara lengkap adalah
; ******************************************************
; Pemrogram : Agus Arif
; Tanggal
: 31-10-2007

;
;
;
;
;

Versi
: 2.1
Nama file : pUTS-02a.asm
Model AVR : AT90S1200
Frekuensi : 1 MHz
******************************************************

; Tujuan Program : Program yg mengisi nilai 0~29 ke dalam


; register R00~R29 dgn teknik pengalamatan tidak langsung.
; Penyelesaian soal no 2 UTS Penerapan Mikroprosesor.
.nolist
.include "C:\Program Files\Atmel\AVR Studio\Appnotes\1200def.inc"
.list
; ======================================================
; Deklarasi variabel
; ======================================================
; Permulaan program
rjmp

Mulai

; baris
dijalankan

pertama yg

; ======================================================
; Bagian utama program
Mulai:
clr
ZL
re- clr
ZH
KalangIsi:
st
Z, ZL
inc
ZL
cpi
brne
rjmp

ZL, 30
KalangIsi
Mulai

; menghapus isi pasangan


; gister Z (ZH & ZL)
; mengisi register R00~R29
; menunjuk register
berikutnya
; apakah semua register sdh diisi?
; belum, isi register lain
; sudah, ulangi dari semula

22. Implementasikan flowchart dibawah ini ..!

e) Implementasi dari diagram-alir di atas adalah


;
;
;
;
;
;
;
;

******************************************************
Pemrogram : Agus Arif
Tanggal
: 31-10-2007
Versi
: 2.0
Nama file : pUTS-02b.asm
Model AVR : AT90S1200
Frekuensi : 1 MHz
******************************************************

;
;
;
;
;
;

Tujuan Program : Program yg mencacah mundur berdasarkan


tekanan tombol pd PD0 (logika 0 = ditekan & logika 1 =
dilepas) & menampilkan cacahan dgn 7-segmen pd PB0~6
(segmen 'a' = PB6,'b' = PB5, 'c' = PB4, hingga 'g' = PB0
dan logika 1 = segmen menyala & logika 0 = segmen padam).
Penyelesaian soal no 3 UTS Penerapan Mikroprosesor.

.nolist

.include "C:\Program Files\Atmel\AVR Studio\Appnotes\1200def.inc"


.list
; ======================================================
; Deklarasi variabel
.def
.def

smntr
= r16
pncacah = r17

; variabel sementara
; variabel berisikan cacahan

; ======================================================
; Permulaan program
rjmp

Awal

; baris

pertama yg dijalankan

; ======================================================
Awal:
; Definisi karakter 7-segment disimpan pd register R20~29
ldi
R20, 0b01111110
; karakter '0'
ldi
R21, 0b00110000
; karakter '1'
ldi
R22, 0b01101101
; karakter '2'
ldi
R23, 0b01111001
; karakter '3'
ldi
R24, 0b00110011
; karakter '4'
ldi
R25, 0b01011011
; karakter '5'
ldi
R26, 0b01011111
; karakter '6'
ldi
R27, 0b01110000
; karakter '7'
ldi
R28, 0b01111111
; karakter '8'
ldi
R29, 0b01111011
; karakter '9'
; Arah pin PortB & PortD serta penetapan keadaan awal
ldi smntr, 0b11111111 ; PB0~6 = output & PB7 = tak
out
DDRB, smntr
; terpakai = output
ldi
smntr, 0b11111110 ; PD0 = input & PD1~7 = tak
out
DDRD, smntr
; terpakai = output
out
PortB, R29
; tampilan awal 7-segment pd PortB
ldi
smntr, 0b00000001 ; pin input PD0 memakai resisout
PortD, smntr
; tor pull-up internal
ldi
pncacah, 9
; pencacah dimulai dgn 9
; ======================================================
; Bagian utama program
Mulai:
sbis PinD, 0
; apakah tombol belum ditekan?
rjmp Tampilan
; jk tidak, tampilkan karakter
rjmp Mulai
; jk ya, periksa lagi
Tampilan:
dec
pncacah
; turunkan nilai pencacah
cpi
pncacah, 0
; apakah cacah sudah nol?
brne PC+2
; jk tidak, lompati 1 perintah
ldi
pncacah, 9
; jk ya, cacah dimulai dgn 9 lagi
; Tampilan 7-segment dgn teknik pengalamatan tidak langsung
ldi
ZL, 20
; pasangan register Z sbg peldi
ZH, 0
; nunjuk alamat R20~29
add
ZL, pncacah
; pilih karakter yg akan tampil
ld
smntr, Z
; pindah dgn pengalamatan tak langsung
out
PortB, smntr
; tampilkan pd 7-segment PortB
UjiTombol:
sbic PinD, 0
; apakah tombol masih ditekan?
rjmp Mulai
; jk tidak, kalang yg tdk pernah henti rjmp

Uji

Você também pode gostar