Anda di halaman 1dari 51

PENGOPERASIAN SISTEM MICROPROSESSOR

DASAR SISTEM
MICROPROSESSOR

&
LEMBARAN INFORMASI
LEMBARAN PRAKTEK

Nama siswa : ………………………………………………………………………………….

NIS : ………………………………………………………………………………….

TINGKAT : ………………………………………………………………………………….

TEKNIK OTOMASI INDUSTRI


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
JL. MAHAR MARTANEGARA 48 CIMAHI
DASAR SISTEM
MICROPROSESSOR

Program Keahlian:
TEKNIK KETENAGALISTRIKAN

Kompetensi Keahlian:
TEKNIK OTOMASI INDUSTRI

SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI


BIDANG KEAHLIAN : TEKNOLOGI DAN REKAYASA
JL MAHAR MARTANEGARA 48 CIMAHI

TEKNIK OTOMASI INDUSTRI 1


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

1.1. Diagram blok Mikrokomputer


Saat mempelajari sebuah mikroprosesor yang baru, programmer harus mempelajari:
 Arsitektur mikroprosesor
 Set instruksi
 Sistem minimal dalam menggunakan mikroprosesor tersebut
 Sinyal - sinyal kontrol
 Fungsi-fungsi pin (nomor kaki mikroprosesor)
Arsitektur berurusan dengan susunan register pada CPU, jumlah bit pada address
bus dan data bus, dll.
Set instruksi adalah daftar operasi yang dapat dijalankan mikroprosesor. Ini
mencakup transfer data, operasi logik dan aritmatik, pengujian data dan instruksi
percabangan. Instruksi-instruksi tersebut menggunakan bermacam mode pengalamatan.
Skematik sistem minimal menunjukkan bagaimana perangkat lain dihubungkan ke
mikroprosesor. Sistem minimal dapat berisi sebuah mikroprosesor, sebuah clock, sebuah
RAM, sebuah ROM, port input/output, address decoder dan sebuah power supply.
Sinyal kontrol meliputi output-output yang mengendalikan saat operasi dari IC-IC
(seperti RAM, ROM, dan I/O ports). Beberapa sinyal kontrol khusus dapat melaksankan
memory reading dan writing atau input/output reading dan writing.
Sebuah pembelajaran dari setiap fungsi pin IC akan lebih merinci input dan output
khusus dari sebuah mikroprosesor. Beberapa pin dapat merupakan tempat kendali power
supply, clock, serial data I/O, interrupts inputs, dan bus .

Diagram blok sebuah mikrokumputer dapat dilihat sbb:

Gambar 1-1

TEKNIK OTOMASI INDUSTRI 2


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

1.2 Fungsi, arah dan ukuran(lebar bit) dari address bus, data bus, dan jumlah
memori yang dapat dialamatkan.
Pada gambar di atas pusat seluruh operasi ada pada MPU (microprocessor unit).
MPU membutuhkan koneksi power supply dan clock. Clock dapat merupakan rangkaian
terpisah atau dapat pula terkandung di dalam chip mikroprosesor. MPU sederhana di atas
memiliki 16 address lines yang membentuk one-way address bus. MPU di atas juga memiliki
8 buffered data lines yang menghubungkan ke two-way data bus.
Mikrokomputer di atas memiliki dua tipe memori semikonduktor, yaitu: ROM dan
RAM. ROM adalah permanen memori yang berisi pengendali program pada sistem. ROM
memiliki address inputs di lines dengan menggunakan chip-select dan read-enable input.
ROM juga memiliki 8 buffered three-state outputs yang terhubung dengan bus data. Setiap
word memori terdiri dari 8 bit. ROM juga memiliki koneksi ke power supply, sekalipun hal ini
sering diabaikan.
RAM adalah temporary read/write-enable inputs. RAM di atas memliki 8 buffered
three-state ouputs yang terhubung ke bus data. RAM ini memasukkan, mengeluarkan dan
menyimpan data dalam bentuk word 8 bit. RAM juga terhubung dengan power supply.
Mikrokomputer di atas menggunakan keyboard sebagai perangkat input. Hubungan
daya ke keyboard ditungjukkan dengan lines data ke IC khusus disebut sebagai keyboard
interface. Rangkaian interface menyimpan data dan mengkoordinasikan masukan pada
keyboard. Pada waktu tertentu, keyboard interface melakukan interrupts MPU melalui
interrupt line khusus. Sinyal interrupt mengakibatkan MPU (1) Menghentikan intruksi yang
sedang berlangsung, (2) menangguhkan operasi normal, (3) melopat ke sebuah grup
khusus instruksi dalam program monitor yang menangani data yang masuk ke keyboard.
Rangakaian keyboard interface circuit memiliki address, chip-select, dan control inputs bagi
aktifasi unit. Saat diaktifkan, unit keyboard interface akan meletakkan data keyboard pada
bus data. MPU menerima input baru melalui bus data. Saat output interface three-state tidak
aktif, mereka kembali ke keadaan high-impedance.
Mikrokomputer di atas menggunakan sebuah display seven-segment sebagai output.
Display dihubungkan dengan power supply. Rangkaian display interface digunakan untuk
menyimpan data dan mengatur tampilan. Saat diaktifkan oleh address, chip-select, dan
enable inputs, interface menerima data dari bus data dan menyimpannya. Interface
mengatur tampilan secara kontinyu, menampilkan data yang disimpan pada display interface
dalam bentuk visual.
16 lines address bus dapat mengandung 65.536 (216) pola yang berbeda dari 0 dan
1. Lines address bus dapat dihubungkan ke beberapa perangkat seperti RAM, ROM , dan
interface. Untuk menghidupkan atau membuat enable hanya perangkat yang benar, sebuah
address decoder mengambil sample data dari address bus. Kombinasi logik dari address
decoder mengaktifkan line chip-select, yang mengaktifkan perangkat yang sesuai. Untuk
menyederhanakan masalah, tidak seluruh 16 lines address bus dihubungkan ke address
decoder, memories, atau interfaces.

TEKNIK OTOMASI INDUSTRI 3


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

1.3 Fungsi dari setiap blok bus dalam pengeksekusian memori dasar operasi
read and write.
Address bus
Address bus dapat terdiri dari 16, 20, 24, atau 32 parallel signals lines. Pada lines ini CPU
mengirim alamat dari lokasi memori yang akan ditulis atau dibaca. Jumlah lokasi memori
yang CPU dapat kirimkan ditentukan oleh sejumlah address lines. Jika CPU memiliki N
address lines, maka ia akan dapat mengalamatkan ke 2N lokasi memori. Saat CPU
membaca data dari atau menulisa data ke suatu port, ia mengirim alamat port pada address
bus.

Data bus

Data bus berisikan 8, 16,atau 32 parallel signal lines. Sebagaimana ditunjukkan pada
gambar sebelumnya memiliki panah dua ganda (bidirectional). Ini berarti CPU dapat
membaca data dari memori atau dari port pada lines ini, atau juga mengirim data ke memori
atau ke port. Beberapa perangkat dalam sebuah sistem mungkin memiliki output yang
terhubung ke data bus, tapi hanya satu perangkat pada suatu waktu yang memiliki output
dengan status enable. Setiap perangkat yang terhubung dengan data bus harus memiliki
three-state ouputs sehingga outputnya dapat di-disable saat tidak digunakan untuk mengirim
data pada bus.

Control bus
Control bus berisikan 4 hingga 10 lines parallel signal. CPU mengirimkan sinyal pada
control bus untuk membuat enable output dari perangkat memori yang dipilih atau dari port.
Sinyal Control bus yang umum adalah Memory Read, Memory Write, I/O Read, and I/O
Write. Untuk membaca sebuah byte data dari lokasi memori, CPU mengirim alamat memori
dari byte yang diinginkan pada address bus dan kemudian mengirim sebuah sinyal Memory
Read pada control bus. Sinyal Memory Read membuat perangkat memori yang dialamatkan
enable untuk mengeluarkan sebuah data word pada data bus. Data word dari memori
berjalan ke CPU menlalui data bus.

1.4 Hardware, Software, dan Firmware


Saat bekerja dengan komputer, kita sering mendengar tiga istilah di atas. Hardware
adalah nama yang diberikan kepada perangkat fisik dan rangkaian pada komputer. Software
mengacu pada program yang dituliskan bagi komputer. Firmware adalah istilah diberikan
kepada program yang disimpan pada ROMs atau pada perangkat lain yang secara
permanen menyimpan informasi yang telah diberikan.

TEKNIK OTOMASI INDUSTRI 4


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

2.1 Organisasi memori sederhana


Menulis atau membaca dari lokasi penyimpanan disebut sebagai pengaksesan
memori(accessing memory). Umumnya, penyimpanan data dapat diklasifikasikan sebagai
sequential-access atau random-access memory. Data dalam sequential-access memory
diperoleh dengan cara mencari secaral serial seluruh lokasi penyimpanan. Contohnya, saat
data disimpan pada pita magnetik, data dicari pada pita dengan mencari dari awal hingga
akhir data yang diinginkan.
Pada random-access memory, setiap lokasi penyimpanan dapat ditulis atau dibaca
dalam suatu waktu akses (access time). Semikonduktor RAM dan ROM yang digunakan
pada sebuah mikrokomputer adalah tipe random-access.
Mikrokomputer umum yang telah dipelajari di atas memiliki 16 lines pada address
bus. 16 address lines ini dapat menghasilkan 65.536(216) kombinasi 0 dan 1. Hal ini dapat
dilihat pada gambar 2-1. Adalah lumrah menggunakan menyajikan alamat biner dengan
menggunakan bentuk heksadesimal. Misalkan address 0000 0000 0000 00002 sama dengan
0000H(000016). Perhatikan huruf H yang digunakan untuk menyajikan bentuk heksadesimal.
Alamat tertinggi adalah 1111 1111 1111 11112 yang dapat dinyatakan dengan
FFFFH(FFFF16).

gambar 2-1
Gambar 2-2 menggambarkan memory map. 16-bit address bus dari mikroprosesor
dapat menghasilkan 65536 (1000016) alamat (address) yang berbeda. Beberapa alamat
pada daftar ini dalam bentuk heksadesimal di kolom bagian kiri gambar 2-2. Pada
mikrokomputer ini, 256 alamat pertama berada di ROM. ROM adalah 256 x 8 bit ROM.
ROM. Jika address bus yang diakses adalah 0000H, ROM akan mengeluarkan isi program
permanennya dalam pla 0 dan 1 (11000011).
Biasanya kita menyatakan 256 bytes words pada ROM adalah pada page 00H.
Memori pada peta gambar 2-2 menunjukkan pages 01H sampai 1FH tidak berisi
memori pada mikrokomputer ini. Kalau kita mengakses daerah ini kita akan mendapatkan
hasil yang tak terduga karena tidak ada data ataupun program pada lokasi ini.

TEKNIK OTOMASI INDUSTRI 5


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

gambar 2-2

RAM pada mikrokomputer ini berada pada page 20H. RAM disini berukuran 256 x 8 bit.
Desainer dapat meletakkan RAM pada alamat yang berbeda jika diperlukan.

2.2 Istilah pada memori


Memory Cell
Memory Cell adalah suatu peralatan atau rangkaian listrik yang digunakan untuk menyimpan
bit tunggal (0 atau 1). Contohnya flip-flop, magnetic core tunggal, dan spot tunggal pada
magnetic tape atau disk.

Capacity
Ini adalah cara bagaimana menentukan berapa banyak bit yang dapat disimpan dalam
perangkat memori tertentu atau memori sistem keseluruhan. Sebagai ilustrasi, bayangkan
kita memiliki memori yang dapat menyimpan 4096 20-bit word. Ini menyajikan kapasitas
total dari 81.920 bit. Yang berasal dari 4096 20 bit. Adalah biasa menggunakan istilah “1K”
untuk menyatakan 1024 saat mengacu pada kapasitas memori. Maka, sebuah memori yang
memiliki storage capacity 4K 20 sebenarnya adalah memori 4096 20.
Storage density adalah kapasitas dalam bit yang terkandung dalam satu chip.

TEKNIK OTOMASI INDUSTRI 6


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Static memory
Perangkat memori semikonduktor dimana data tersimpan akan tetap tinggal secara
permanen tersimpan selama daya diaplikasikan, tanpa kebutuhan untuk rewriting data ke
dalam memori secara periodik.

Dynamic Memory
Perangkat memori semikonduktor dimana data tersimpan tidak akan tersimpan secara
permanen, sekalipun daya terpasang, kecuali data ditulis ulang secara periodik ke dalam
memori. Operasi ini disebut sebagai operasi REFRESH.
Volatile memory
Ini mengacu pada setiap jenis memori yang membutuhkan pemakaian daya elektrik dalam
menyimpan informasi. Jika daya elektrik dihilangkan, seluruh informasi tersimpan dalam
memori akan hilang. Beberapa memori semikonduktor adalah volatile.
Non Volatile memory
Mengacu pada setiap jenis memori yang tidak membutuhkan pemakaian daya elektrik dalam
meyimpan informasi. Jika daya elektrik dihilangkan, seluruh informasi tersimpan dalam
memori tidak hilang. Beberapa memori magnetik adalah non-volatile.
Read cycle
Read cycle adalah siklus yang dilakukan dalam operasi read. Operasi Read adalah proses
pengambilan sebuah word dari memori dan pengiriman word ke beberapa tempat yang
dapat digunakan.
Refresh requirement
Sebagian memori memiliki kecenderungan mengubah data misalnya 1, menjadi 0, atau
sebaliknya, dikarenakan adanya proses penuaan fisik. Contohnya, pada beberapa teknologi
memori, bit 1 dinyatakan dengan muatan listrik di dalam kapasitor, jika tidak mengandung
muatan listrik maka akan menjadi bit 0. Setelah beberapa waktu berselang, muatan
cenderung untuk bocor, yang menyebabkan hilangnya informasi jika muatan tidak diisi
kembali. Proses pengisian kembali ini disebut refreshing.
Memori yang membutuhkan refreshing yang periodik disebut dynamic memory, dimana
static memory adalah memori yang tidak membutuhkan refreshing. Hampir seluruh memori
yang menggunakan metoda penyimpanan menggunakan magnetik disebut static memory.
Refreshing pada dynamic memory dapat dilakukan dengan cara yang sama ketika
melakukan penyimpanan data dalam memori DRO. Isi dari setiap lokasi ditransfer secara
periodik ke buffer registers dan dikembalikan, dalam bentuk yang sudah disesuaikan, ke
lokasi awal.
Write cycles
Write cycles adalah siklus yang dilakukan pada write operation. Write operation adalah
proses pengambilan sebuah word yang ditempatkan ke dalam lokasi memori atau perangkat
eksternal.
Access Time
Ini adalah suatu ukuran dari kecepatan operasi perangkat memori. Ini adalah jumlah dari
waktu yang dibutuhkan untuk melakukan suatu operasi read. Lebih spesifik, ada waktu

TEKNIK OTOMASI INDUSTRI 7


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

antara penerimaan memori sebuah sinyal perintah dan data yang dapat diperoleh pada
keluaran memori.

Random Access
Access time adalah sama untuk setiap alamat dalam memori.
Sequential Access
Access time bergantung pada lokasi alamat memori.

2.3 Operasi memori secara umum

Sekalipun setiap tipe memori berbeda dalam operasi internalnya, ada beberapa prinsip
pengoperasian dasar yang sama untuk keseluruhan sistem memori. Suatu pengertian dari
ide-ide dasar akan membantu dalam pelajaran kita mengenai perangkat memori.

Setiap sistem memori membutuhkan beberapa tipe input dan output yang berbeda untuk
melakukan fungsi-fungsi berikut:
1. Memilih alamat dalam memori yang sedang diakses bagi Operasi Read/Write.
2. Memilih apakah Operasi Read atau Write yang akan dilakukan.
3. Menyediakan data input untuk disimpan dalam memori selama operasi Write.
4. Menahan data output yang datang dari memori selama operasi Read.
5. Enable (atau Disable) memori sehingga ia akan (tidak akan) menganggapi input
alamat-alamat dan perintah read/write.

2.4 Teknologi Memori Semikonduktor


Ada dua katagori umum di mana memori semikonduktor di kelompokkan berdasarkan
proses manufaktur atau teknologi. Katagori-katagori ini al: memori bipolar (dibuat dari
transistor bipolar) dan memori MOS (dibuat dengan MOSFETS). Perangkat memori yang
dimanufaktur menggunakan bermacam teknologi akan membedakan karakteristik elektrik
dan fisik, serta kinerja mereka yang biasanya dibandingkan dengan kriteria berikut:
1. Density (kapasitas dalam bit tiap chip).
2. Speed (access time).
3. Power requirements (microwatts atau milliwats per bit).
4. Cost per bit.
5. Noise immunity.
Kedua teknologi ini memiliki kekuatan dan kelemahannya sendiri masing-masing
berdasarkan pada kriteria di atas. Umumnya, sekalipun perangkat bipolar memiliki
keuntungan dengan kecepatan yang lebih tinggi, perangkat memori MOS menang pada
seluruh bidang yang lain.

TEKNIK OTOMASI INDUSTRI 8


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

2.5 Read Only Memories


Tipe memori semikonduktor yang dirancang menahan data yang permanen atau tidak akan
berubah secara berkala. Selama operasi normal, tidak ada data baru dapat dituliskan ke
dalam sebuah ROM, tetapi data dapat dibaca dari ROM. Untuk beberapa ROM data yang
disimpan harus dimasukkan selama proses manufactur ; untuk data ROM dapat dimasukkan
secara elektris. Proses pemasukan data disebut sebagai programming ROM. Beberapa
ROM tidak merubah datanya apabila telah terprogram, yang lain dapat dihapus dan
diprogram ulang sesering mungkin.

ROM biasanya digunakan untuk menyimpan data dan informasi yang tidak akan dirubah
selama operasi sistem. Kegunaan utama ROM adalah menyimpan sebuah program dalam
mikrokomputer. Karena seluruh ROM adalah non volatile, program-program ini tidak akan
hilang apabila komputer dimatikan. Saat komputer dihidupkan, ia dapat segera memulai
pengeksekusian program yang tersimpan di ROM. ROM juga biasanya digunakan untuk
penyimpanan program dan data dalam microprocessor-controlled equipment, seperti
register cash electronic yang canggih.

2.6 Tipe-tipe ROM


Mask-programmed ROM
Tipe ROM seperti ini memiliki lokasi penyimpanan terprogram dari pabrik sesuai dengan
spesifikasi pelanggan. Sebuah negative photographic disebut sebagai mask digunakan
untuk mengendalikan hubungan elektris pada chip. Sebuah mask dibutuhkan untuk setiap
set yang berbeda dari informasi yang akan disimpan dalam ROM. Karena mask sangat
mahal, tipe ROM seperti ini lebih ekonomis.

Programmable ROMs (PROMs)

Suatu mask-programmable ROM sangat mahal dan tidak akan digunakan kecuali dalam
aplikasi volume yang tinggi, karena biayanya dapat disebar pada seluruh unit. Untuk
pemakaian yang lebih rendah, beberapa manufaktur telah mengembangkan fusible-link
PROMs, yang dapat diprogram oleh user.

Erasable Programable ROM (EPROM)


Sebuah EPROM dapat diprogram oleh user, dan dapat dihapus dan diprogram ulang sesuka
hati. Sekali diprogram, EPROM adalah sebuah memori non volatile yang akan menyimpan
data selama jangka waktu yang lama. Proses untuk pemerograman EPROM melibatkan
aplikasi dari level tegangan khusus pada input chip yang sesuai dalam sejumlah waktu.

TEKNIK OTOMASI INDUSTRI 9


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Electrically Erasable Programable ROM (EEPROM)


EPROM memiliki dua kelemahan. Pertama, ia harus di hilangkan dari soketnya agar dapat
dihapus dan diprogram ulang. Kedua, saat dihapus, seluruh isi memori dihapus; diperlukan
pemerograman ulang secara keseluruhan sekalipun hanya satu memory word yang harus
diubah. Electrically erasable PROM (EEPROM) dikembangkan sekitar tahun 1980 sebagai
pengembangan dari EPROM .

EEPROM memiliki keuntungan dari sturuktur floating yang sama seperi EPROM.
Perbedaannya adalah EEPROM memiliki fitur kemampuan menghapus secara elektrik.

2.7 APLIKASI ROM


ROM dapat digunakan dalam aplikasi yang membutuhkan penyimpanan data non volatile di
mana data jarang atau tidak pernah harus diubah.

Microcomputer Program Storage (Firmware)

Ini adalah aplikasi yang paling sering dipakai dari ROM. Mikrokomputer personal dan bisnis
menggunakan ROM untuk menyimpan program sistem operasi dan interpreter bahasa
sendiri sehingga komputer dapat digunakan saat daya dihidupkan.

Program mikrokomputer yang disimpan dalam ROM disebut sebagai firmware karena ia
tidak akan diubah; program yang disimpan dlam RAM disebut sebagai software karena
dapat diganti dengan mudah.

TEKNIK OTOMASI INDUSTRI 10


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Implementing Combinational Logic

Sekali ROM diprogram, hubungan antara address input dan data output sudah tertentu dan
tidak akan diubah. Hubungan ini dapat digambarkan dalam sebuah tabel kebenaran seperti
pada gambar 3.6., yang mana dapat dikatakan sebagai rangkaian logik kombinasi
(Combinational Logic circuit).

Data Tables

ROM biasanya digunakan menyimpan data dalam bentuk tabel yang tidak berubah.
Contohnya tabel trigonometrik.

Contoh:
Misalkan 16  8 ROM menyimpan word berikut pada 4 lokasi pertamanya:
R0 = 1110 0010 R2= 0011 1100
R1= 0101 0111 R3= 1011 1111
Maka dalam Hexadecimal kita dapat memperoleh isi memori tersebut sbb:
R0 = E2H R2 = 3CH
R1= 57H R3= BFH

Generator Karakter
Jika pernah melihat secara lebih detail pda karakter alphanumeric (letters, numbers, dan
lain-lain) dicetak pada display komputer video, kita harus memperhatikan karakter yang
umumnya dibangun dari titik-titik. Bergantung dari karakter yang ditampilkan, beberapa
posisi titik dibuat lebih terang, dan yang lain lebih gelap.

2.8 RAM semikonduktor


RAM adalah random access memory, yang berarti lokasi alamat memori yang dapat diakses
dengan mudah satu dengan yang lainnya.

RAM biasanya digunakan dalam komputer bagi tempat penyimpanan sementara dari
program dan data. Isi lokasi address dapat berubah selama eksekusi program. Ini
membutuhkan waktu siklus (Cycle times) Read dan Write yang cepat agar RAM tidak
membuat lambat operasi komputer.

TEKNIK OTOMASI INDUSTRI 11


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Arsitektur RAM

Sebagaimana ROM, adalah lebih mudah memikirkan yang berisi sejumlah register, setiap
register menyimpan word data tertentu dan memiliki alamat yang unik.

Operasi Read

Kode address memilih salah satu register dalam memori chip untuk membaca atau menulis.
Agar membaca isi dari register terpilih, input Read/Write harus 1. Input CS (Chip Select)
harus diaktifkan (dalam kasus ini 1). Kombinasi ini memungkinkan output buffers sedemikian
sehingga isi dari register terpilih dapat muncul dengan keluaran 4 data. Read/Write = 1
mengakibatkan disable pada input buffers shingga input data tidak mempengaruhi memori
selama operasi Read.

Operasi Write
Untuk menulis sebuah word 4-bit baru dalam register di mana Read/Write = 0 dan CS = 1.
Kombinasi ini meng-enable input buffers sehingga 4-bit word dimasukkan ke data input
akan dimasukkan ke dalam register. Read/Write = 0 men-disable output buffers. Operasi
Write menghancurkan word yang disimpan sebelumnya ke dalam address.

Chip Select
Hampir semua chip memori memiliki satu atau lebih input CS yang digunakan untuk meng-
enable seluruh chip atau men-disable seluruh chip. Dalam mode disable seluruh data input
dan data output adalah disable (high-Z) sehingga tidak ada operasi Read atau Write yang
dilakukan. Dalam mode ini, isi memori tidak terpengaruh. Banyak manufaktur yang
menyebut input ini sebagai Chip Enable (CE).

Static RAM
Static RAM menyimpan data sepanjang daya terpasang pada chip.
Static RAM dapat ditemukan dalam teknologi bipolar dan MOS, sekalipun umumnya yang
dipakai adalah NMOS atau CMOS RAMs.
Gambar berikut menunjukkan konfigurasi pin dari sebuah TTL static RAM yang memiliki
three-state ouputs. RAM 64-bit ini disusun oleh 16 words masing-masing terdiri dari 4 bit.
RAM ini memiliki access time 35 ns. Fungsi masing-masing pin adalah sebagai berikut:

gambar 2-3

TEKNIK OTOMASI INDUSTRI 12


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

 4 bit alamat dapat mengakses 24 = 16 word. Ini menyebabkan 74189 membutuhkan


4 bit alamat untuk memilih lokasi memori yang diinginkan.
 Bit ADDRESS adalah pin 1 (A3), pin 15 (A2), pin 14 (A1), dan pin 13 (A0). Input Data
adalah pin 4 (D3), pin 6 (D2), pin 10 (D1), dan pin 12 (D0). Pada TTL ini data output
adalah pin 5 (D3), pin 7 (D2), pin 9 (D1), dan pin 11 (D0).
 Chip Enable pada pin 2, dan write enable pada pin 3. CE dan WE harus low untuk
operasi write; CE harus low dan WE harus high untuk operasi read, dan CE harus
high agar tidak beroperasi.
 Pin 16 merupakan tempat supply voltage sebesar 5 V, dan pin 8 adalah ground.

Dynamic RAM

Dynamic RAM adalah RAM yang menyimpan data dalam waktu terbatas umumnya 2 ms. Ini
membutuhkan suatu refresh pada data dalam interval waktu tertentu untuk menjaga data
yang tersimpan di dalam memori. Kebutuhan refreshing ini adalah kelemahan pada dynamic
RAM.

3.1 Organisasi CPU sederhana


Unit paling penting pada sebuah sistem komputer disebut sebagai central processing
unit, atau CPU. Beberapa IC mikroprosesor adalam CPU dari sistem. Adalah umum dalam
teknologi komputer untuk menggunakan program memory, data memory, input/output
interfaces, address decoder, dan CPU dengan IC terpisah, seperti yang telah kita lihat pada
gambar sebelemnya. MPU membentuk centrap processing unit pada sistem ini.
Umumnya CPU akan berisi elemen yang disebut sebagai register dan rangkaian
komputasional yang disebut sebagai arithmetic and logic unit (ALU). CPU juga berisi
rangkaian instruction-decoding dan sebuah bagian kendali dan timing. CPU juga memiliki
koneksi input dan ouput yang sesuai.

Fungsi dasar dari sebuah CPU dari mikrokomputer adalah untuk:


1. Fetch, decode, dan execute intruksi program pada urutan yang tepat
2. Mentransfer data ke dan dari memori dan ke dan dari bagian input/output
3. Merespon external interrupts
4. Menjalankan sinyal kendali dan timing bagi seluruh sistem

TEKNIK OTOMASI INDUSTRI 13


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

3. 2 Organisasi dan operasi mikroprosesor 8-bit

Perhatikan gambar CPU (central processing unit) berikut:

gambar 3.1

Sedangkan cara kerja dan deskripsi ALU (arithmetic logic unit) dapat digambarkan sebagai
berikut:

gambar 3.2

TEKNIK OTOMASI INDUSTRI 14


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

ALU (Arithmetic Logic Unit) berisikan sebuah adder dan shifter, dimana hasil
operasinnya dikembalikan ke accumulator melalui internal data bus. Hal yang penting bagi
programmer adalah status register yang berada di dalam ALU. Status register dapat disebut
sebagai condition code register atau flags. Register adalah sebuah grup individual flip-flop
yang dapat di set atau reset beradasarkan kondisi operasi terakhir ALU. Individual flip-flop,
atau flags, mencakup indikator bagi zero, hasil negatif, carry dari MSB, dll. Flags digunakan
bagi pembuatan keputusan saat menggunakan intruksi subsequent branching (percabangan
subsekuensial). Temporary dan accumulator registers pada gambar di atas sering dianggap
sebagai bagian dari ALU. Accumulator biasanya digunakan dalam hampir seluruh operasi
yang dijalankan CPU, ,misalnya transfer data.

Bagian control dan timing adalah bagian paling kompleks dari CPU. Ini
mempengaruhi urutan seluruh events(kejadian) dalam CPU dan seluruh mikrokomputer.
Setiap intruksi program dapat dibagi ke dalam stage fetch, decode, dan execute. Setiap
stage dapat dibagi lebih jauh ke dalam beberapa langkah rinci yang disebut sebagai
microprogram. Microprogram setiap instruksi berada pada bagian instruction-decoding dan
dibawa ke bagian control and timing CPU.
Program counter adalah register 16 bit. Program counter bertanggung jawab untuk
menunjukkan dari alamat instruksi selanjutnya yang akan diambil dari memori. Karena
setiap instruksi program dilakukan secara berurutan, program counter biasanya menghitung
naik kecuali kalau diinstruksikan sebaliknya. Beberapa mikroprosesor memiliki 16-bit
program counter yang mengakses memory words 64K melalui address bus. Eksekusi
normal sekuensial dari instruksi program dapat diganti dengan instruksi branch khusus,
instruksi call atau return, juga interruptsyang dapat membuat program counter melompat ke
suatu bilangan lain bukan ke alamat yang lebih tinggi. Untuk menjalankan sebuah program
setelah power-on, operator komputer harus menginsialisasi program counter pada sebuah
bilangan dimana ini merupakan instruksi awal peogram.
Urutan instruksi fetch-decode-execute adalah mendasar pada operasi komputer.
Instruksi pertama diambil dari memori program yang diasumsikan merupakan op code bagi
instruksi pertama dan ditempatkan pada instruction register oleh bagian kenali control CPU.
Op code kemudian diinterpretasikan dalam instruction decoder. Instruction decoder
kemudian memerintahkan bagian control and timing untuk mengeksekusi instruksi khusus.
Organisasi CPU yang ditunjukkan pada gambar di atas adalah versi sederhana.
Hampir seluruh CPU berisikan paling sedikit 8-bit dan 16-bit register lebih banyak. Banyak
variasi yang ada pada mikroprosesor bergantung pada jumlah dan jenis register pada CPU.

TEKNIK OTOMASI INDUSTRI 15


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

4.1. Mengeksekusi sebuah program spada sistem mikroprosesor 16-bit

Misalkan kita menambahkan bilangan 10 + 5 +18 = 33 10. Sebuah program


mikrokomputer dapat dituliskan untuk menjalnkan tugas ini dengan menggunakan langkah
berikut:

Instruksi 1 LOAD bilangan pertama (1010) ke CPU


Instruksi 2 ADD bilangan kedua (510) pada bilangan pertama
Instruksi 3 ADD bilngan ketiga (1810) ke hasil penjumlahan pertama
Instruksi 4 STORE Jumlah total (3310) ke lokasi memori 200016

Setelah dimasukkan ke dalam program memory, instruksi di atas dapat digambarkan


seperti berikut:

gambar 4-1

TEKNIK OTOMASI INDUSTRI 16


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

gambar 4-2

Perhatikan instruksi pertama dari program dimulai pada address 0000H. Instruksi (LOAD
angka 0AH mengambil 2 byte memori. Byte pertama memori menjalankan bagian operasi
instruksi, sedangakan byte kedua merupakan operand. Op code bagi operasi LOAD
dinyatakan dengan 86H (100001102) bagi mikroprosesor ini. Operand 0AH (000010102)
adalah bilangan pertamayang dimasukkan ke dalam accumulator mikroprosesor.
Asumsikan program diletakkan dalam blok RAM dari mikroprosesor gambar 1-1.
Juga asumsikan CPU mikrokomputer memiliki detail pada gambar 3-1. Kemudian gambar 4-
2 merincikan hasil dari setiap operasi program LOAD-ADD-ADD-STORE.
Operasi LOAD gambar 4-2a, menunjukkan isi memori lokasi 0001H dimasukkan ke
dalam accumulator CPU. Setelah operasi accumulator menyimpan 000010102, yang
merupakan bilangan pertama yang akan dijumlah. Operasi ADD (instruksi kedua)
ditunjukkan pada gambar 4-2b. Isi memori 003H(00000101 2) dijumlahkan ke dalam isi
accumulator (000010102), menghasilkan jumlah 000011112. Jumlah hasil diletakkan pada
accumulator. Perhatikan angka dalam accumulator berubah selama operasi ADD.
Operasi ADD kedua dapat dilihat pada gambar 4-2c. Jumlah akumulasi 00001111 2
ditambhakan ke dalam lokasi memori 0005H. Penjumlahan biner 00001111+00010010 =
00100001. Jumlah akhir 001000012 muncul pada accumulator setalah operasi ADD kedua.
Operasi STORE ditunjukkan pada gambar 4-2d. Isi accumulator (001000012)
ditransfer dan disimpan ke lokasi memory 2000H. Perhatikan bahawa lokasi memori

TEKNIK OTOMASI INDUSTRI 17


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

diidentifikasi dengan 2 byte terpisah (lokasi 0007H dan 0008H). Lokasi program memory
0006H pada gambar 4-1 berisikan B7H, yang merupakan op code dari instruksi STORE.
Tipe instruksi LOAD akan dieksekusi sekitar 2 hingga 6 mikroseconds oleh beberapa
mikrokomputer. Beberapa langkah yang terjadi pada CPU, busses, control lines, dan
memori dapat dilihat pada gambar berikut:

gambar 4-3

Dimulai dari kiri atas pada gambar 4-3, program counter pada CPU diset pada
alamat tertentu. Address 16-bit ditransfer ke address register dan kemudian ke address bus
dan program memory. Untuk mengaktifkan program memory, CPU mengirim siyal membaca
(R/W line) ketika adress decoder membuat chip select memory enable. Kemudian program
counter pada CPU dinaikkan (increment) ke 0001H. Lokasi meori program 0000H diakses
dan dibaca pada data bus. Op code (86H) bagi instruksi LOAD ditransfer ke instruction
register pada CPU. Proses fetch selesai
Op code selanjutnya (86H) yang dijalankan pada instruction register CPU
diinterpretasikan oleh instruction decoder. Pada kasus ini CPU menentukan sebagai
Instruksi LOAD immediate, yang berarti CPU akan memasukkan isi lokasi memori
seketika sesudah op code ke dalam accumulator. Isi program counter (0001H) ditransfer ke
address register, address bus, dan memori. CPU menghasilkan HIGH read pulse, yang akan
bergerak ke input R/W memori. Kondisi LOW dikirim ke CS memory input, yang membuat
memori enable. Pada baris ketiga dari bawah gambar 4-12, program counter diinkremen ke
0002H, untuk bersiap-siap pada instruksi selanjutnya. Lokasi memory 0001H diakses, dan
isi (0AH) dikirik ke data bus dan keudian ke akumulator CPU. Perhatikan baik stage fetch
dan execute dari instruksi ini mirip dengan opaerasi memori kecuali data yang dibaca dari
memori ditansferkan ke register yang berbeda di CPU. Op code pada stage fetch selalu
ditempatkan pada instruction register.

TEKNIK OTOMASI INDUSTRI 18


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

4.2 Karakateristik mikroprosesor umum


Mikroprosesor dapat ditentukan sebagai sebuah chip very large-scale integration
(VLSI) yang menjalankan tugas sebagai CPU dari ebuah mikrokomputer atau sistem kendali
otomatik. Berikut adalah karakteristik utama yang singkat dari sebuah mikroprosesor.

Hubungan daya
Mikroprosesor (kecuali 8080) membutuhkan tegangan daya 5 Vdc

Ukuran Bit
Mikroprosesor umumnya diklasifikasikan sebagai unit 4-, 8-, 16, atau 32-unit. Ukuran
bit sebuah mikroprosesor terkadang dinyatakan dalam ukuran word. Lebar accumulator
register adalah petunjuk yang baik untuk mengetahui ukuran word mikroprosesor.
8080/8085, 6800, 6502, dan Z80 adalah mikroprosesor umum 8-bit. 8086,8088, 68000,
65816, dan Z8000 adalah MPU 16-bit. 80386, 68020, 32000, dan Z 80000 adalah contoh
mikroprosesor 32 bit.

Data lines
Transfer data mikroprosesor antara MPU dan memori ( atau I/O) melalui sebuah ata
bus bidirectional. 6800, 6502, dan 8088 adalah prosesor yang menggunakan data eksternal
8 -bit.

Address lines
Hampir semua mikroprosesor (8080/8085, 6800, 6502) menggunakan 16-bit address
bus yang dapat mengakses hanya 216 atau 64K memori. MPU yang baru dapat memiliki 16-,
2-, atau 23-bit address bus.

Control lines
Hampir semua mikroprosesor memiliki fitur berikut:
1. Clock lines
2. Read/write lines
3. Input/outpu lines.
4. Interrupts lines
5. Reset lines
6. Bus control lines
7. Cycle status lines.

TEKNIK OTOMASI INDUSTRI 19


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Internal Registers
Program Counter(PC). PC adalah register yang menyimpan alamat dari instruksi
selanjutnya. Lebar dari program counter adalah sama dengan lebar dari address bus.
Program counter biasanya berukutran16-bit pada mikroprosesor 8-bit.
Accumulator. Accumulator adalah register yang berhubungan dengan operasi ALU
dan terkadang operasi I/O. Ukurannya sekitar 8, 16, 32 bit. 8080/8085, 6800, dan 6502
adalah
Accumulator 8-bit. Beberapa prosesor (68000 dan Z8000) hanya memiliki general
purpose register yang dapat digunakan sebagai accumulator.
Status Register atau Flags. Status register dapat ditemukan di hampir semua
mikroprosesor. Individual bits pada register disebut flags. Kondisi dari flags umumnya
diasosiasikan dengan operasi ALU dan digunakan oleh subsequent branch dan instruksi
jump untuk pembuatan keputusan.
General-Purpose Registers. General-purpose registers dapat digunakan menyimpan
data sementara atau menyimpan alamat. Register ini tidak ditugaskan untuk melaksanakan
tugas khusus. Pada mikroprosesor 8-bit, general-purpose registers tidak berfungsi sebagai
accumulator pada operasi ALU dan I/O. Biasanya, MPU 16-bit mengizinkan genaral-purpose
registers digunakan sebagai accumulator.
Index Register. Index register digunakan untuk menyimpan alamat sebuah operand
saat indexed register digunakan (8080/8085, 6800, 6502, Z80, 8086). General-purpose
registers digunakan sebagai index registers pada Z8000 dan 68000.
Stack Pointer Register. Stack Pointer (SP) adalah register khusus yang menyimpan
jalur lokasi memori yang dapat digunakan selanjutnya pada stack. Stack adalah daerah
tertentu di mana RAM digunakan sebagai penyimpanan data sementara, return addresses,
dan isi register. Stack digunakan selama subroutine calls dan interrupts.

Mode pengalamatan (addressing mode)

Mode pengalamatan adalah teknik yang digunakan untuk mengambil operand yang
dibutuhkan selama eksekusi instruksi. Mikroprosesor individual tidak menggunakan seluruh
dari mode pengalamatan berikut:
1. Inherent (implied) addressing mode
2. Immediate addressing mode
3. Extended or absolute addressing mode
4. Register addressing mode
5. Register indirect addressing mode
6. Index addressing mode
7. Zero page (direct) addressing mode
8. Relative addressing mode
9. Based addressing mode

TEKNIK OTOMASI INDUSTRI 20


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

10. Based index addressing mode


11. String addressing mode
12. I/O addressing mode
13. Status register addressing mode

4-3 Deskripsi Data sheet

Literatur pada mikroprosesor khusus berisikan beberapa fitur umum. Data sheet
khusus merisikan informasi pada IC packaging, diagram pin, dan fungsi setiap pin IC.
Arsitektur CPU digambarkan, bersama dengan deskripsi fitur utamanya. Diagram timing
muncul pada literatur bersama dengan set instruksi prosesor. Data sheet juga
menggambarkan sistem khusus menggunakan mikroprosesor.
Mikroprosesor biasanya berbentuk 40-pin dula-in-line package integrated circuit (40-
pin DIP IC). Dapat dilihat dalam gambar berikut: 40-pin DIP pada gambar 4-4a diberi kasis
plastik, sementara gambar 4-4b menggunakan keramik. Mikroprosesor keramik cocok untik
operasi temperatur yang lebih tinggi. Mikroprosesor biasanya memiliki 28-, 42-, 50-, dan 68-
pin packages.
Dua cara menentukan nomor pin dapat dilihat pada gambar 4-4c dan d.

gambar 4-4

TEKNIK OTOMASI INDUSTRI 21


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Diagram pin dan fungsi-fungsinya

Di sini kita akan membahas mikroprosesor secara umum. Berikut adalah gambar pin pada
sebuah mikroprosesor umum.

gambar 4-5
MPU terdiri dari 40-pin DIP. IC ini menggunakan +5-V power supply yang terhubung
dengan pin 1 dan 2. Penggunaan sumber daya +5-V adalah sangat lazim pada
mikroprosesor baru.
Pin X1 dan X2 pada atas kanan gamar 4-5a adalah untuk mengatur frekuensi clock
dari MPU. Sekarang umumnya rangkaian clock dibuatkan di dalam mikroprosesor, dimana
sebelumnya desain yang lama membutuhkan rangkaian generator clock yang terpisah.
output CLK (pin 38) adalh sinyal clock yang digunakan pada clock sistem. Frekuensi ouput
CLK biasanya lebih kecil dari frekuensi internal clock.
Address bus sistem akan terhubung pada A0 sampai A15 pada gambar 4-5a. Output
16 alamat ini akan dapat mengakses hingga 65.536 (216) memori dan/atau lokasi
input/output.
Aliran instruksi dan data masuk dan keluar ada pada pin D0 sampai D7 pada IC
gambar 4-5a. Pini ini (21-28) adalah bidirectional dan dapat berfungsi sebagai input ataupun
output, tergantung kebutuhan. Umumnya data pin dirancang pada kondisi three-state (high-
impedance state).

TEKNIK OTOMASI INDUSTRI 22


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Pin 30 dari IC adalah output write control. LOW pada pin WR mengindikasikan data
pada data bus akan dituliskan pada lokasi memori atau I/O. RD adalah read contro output
(pin 31) pada IC. LOW pada pin RD mengindikasikan memori atau perangkat I/O yang dipilih
akan dibaca dan data bus akan dapat digunakan dalam transfer data. Data dibaca dari
memori atau perangkat I/O saat sinyal LOW.
Jika input reset diaktifkan maka MPU akan berhenti bekerja pada program saat itu
dan melompat ke routine yang telah diberikan sebelumnya (initializing routine). Sebuah
sinyal LOW pada RESET akam mengakibatkan MPU mereset program counter pada
bilangan tertentu yang telah ditentukan, contohnya 000016. Saat input RESET dalam kondisi
HIGH, CPU akam memulai mengeksekusi instruksi pada memori baru yang telah ditentukan
sebelumnya. Lokasi memori yang berisikan initializing routine biasnya berada di ROM.
Setiap langkah di mikroprosesor biasanya selaras dengan clock, dan karenaya selalu
sinkron. Input RESET pada MPU adalah asinkron dan dapat menghentikan instruksi yang
sedang berlangsung.;
Input interrupt request ada pada pin 35 gambar 4-5a. Input INTR bekerja pada
komdisi HIGH dari perangkat luar. Gambar 4-6 akan membantu apa yang terjadi jika MPU
mendapatkan sinyal interrupt request. Asumsikan rangkaian input interface gambar 4-6
memiliki 8 bit paralel untuk mentransfer ke MPU. Prosedur yang berlaku adalah sbb:

gambar 4-6

TEKNIK OTOMASI INDUSTRI 23


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

1. Input interface mengirim sinya interrupt request ke MPU. Lihat lingkaran 1 pada
gambar 4-6.
2. MPU menyelesaikan yang sedang dieksekusi (instruksi dari lokasi memori 2006H).
3. Karena kontrol harus kembali ke instruksi 2007H, isi dari program counter (sekarang
2007H) dan sebagian besar isi internal register di masukkan ke dalam daerah RAM
yang disebut sebagai stack. Ini kelak akan dikembalikan ke register CPU dan
program counter
4. MPU sekarang melompat ke address yang telah ditentukan sebelumnya pada
memori program yagn berisi program khusus yang disebut interrupt service routine
(pada address 20D0 pada contoh ini. MPU kemudian mengeksekusi instruksi pada
interrupt service routine, yang dalam kasus ini adalah sebuah operasi input. Pada
alamat 20DE MPU mengakhiri interrupt service routine dan kembali ke program
utama.
5. Sebelum kembali ke program utama, data register dan program counter diambil dari
stack dan dikembalikan ke CPU.
6. Program counter sekarang kembali ke lokasi memori 2007H pada program
utama,dan melanjutkan programnya.

Interrupt adalah metoda yang sangat berguna untuk mengizinkan peripheral device untuk
menghentikan dan membuat MPU mengerjakan sesuatu seketika. Sebagian besar
mikroprosesor memiliki satu atau lebih interrupt. Input interrupts dapat disebut sebagai
resets, restarts, maskable interrupts, atau traps.

4.4 Arsitektur Mikroprosesor

Sebagian besar mikroprosesor memiliki:

1. Arithmetic and logic unit


2. Beberapa register
3. Program counter
4. Rangkaian Instruction-decoding
5. Bagian timing dan control
6. Bus buffers dan latches
7. Internal busses dan conterol lines
8. Beberapa kontrol input dan output

Di samping item ini, sebuah chip mikroprosesor dapat berisikan unit-unit fungsi sbb:
1. Penyimpanan ROM
2. Penyimpana RAM

TEKNIK OTOMASI INDUSTRI 24


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

3. Port serial input/output


4. Programable timers
5. Rangkaian internal clock
6. Rangkaian interrupt priority arbitration
7. I/O communication serial hingga paralel interface logic.
8. Direct memory access control logic

Gambar berikut merupakan penjabaran lebih rinci dari mikroprosesor sebelumnya

Gambar 4-7

Dimulai dengan hubungan eksternal, MPU gambar 4-7 memiliki delapan data bus
bidirectional yang akan masuk ke internal data bus. Di bagian kiri, MPU memiliki 16 address
bus outputs yang akan mengunci alamat dari internal bus. Control outputs yang ditunjukkan
pada kiri bawah adalah write, read, dan clock lines. Dua sinyal input di kanan bawah adalah
reset dan interrupt request lines. MPU ini memiliki rangkaian internal clock yang hanya
membutuhkan external crystal ( atau kapasitor ) untuk membuatnya beroperasi.
Mikroprosesor ini diberikan catu daya +5-V.
Fungsi unit-unti pada MPU ini adalah:
1. Instruction register: Unit ini adalah register 8-bit yang menyimpan byte pertama dari
sebuah instruksi (op code).
2. Instruction decoder: Unit ini menginterpretasikan isi instruction register, menentukan
mikroprogram tertentu yang diikuti dalam mengeksekusi seluruh instruksi, dan
memerintahkan bagian kontrol agar sesuai dengan instruksi.

TEKNIK OTOMASI INDUSTRI 25


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

3. Arithmetic and logic unit: Unit ini menjalankan operasi aritmatik, logik, dan rotasi
yagn akan memperngaruhi status register (flags). Hasil dari bagian ALU ditempatkan
kembali ke accumulator melalui internal bus. Temporary register dan accumulator
sering dianggap sebagai bagian ALU. Kondisi flag diumpan-balik ke unit timing and
control.
4. Accumulator: Unit ini adalah general purpose register 8-bit yang merupakan fokus
dari instruksi aritmatik, logik, load, store dan I/O
5. Program counter: Unit ini merupakan daerah penyimpanan 16-bit yang selalu
menunjukkan instruksi selanjutnya yang akan dieksekusi.
6. Timing and control unit: Unit ini menerima sinyal dari instruction decoder untuk
menentukan sifat instruksi yang akan dieksekusi. Informasi dari status register dapat
diperoleh bagi conditional branching. Sinyal timing and control dikirimkan ke seluruh
bagian mikroprosesor untuk mengkoordinasikan eksekusi instruksi. External control
signals juga dihasilkan.
7. Status register: MPU umum pada gambar 4-7 berisikan flag zero dan carry saja pada
status registernya.

Yang ditambahkan pada unit ini adalah internal clock, interrupt control, stack pointer,
dan multipurpose data/address register.
Rangkaian internal clock, bersama dengan external crystal, menghasilkan sinyal
yang sama seperti gambar 4-8. Rangkaian clock menghasilkan sinyal clock nonoverlapping
bagi penggunaan di MPU. Output CLK dari MPU adalah sama dengan sinyal clock 2 dan
mensinkronkan seluruh langkah pada keseluruhan sistem. Pada gambar 4-8, clock signals
dibagi ke dalam states T (T1, T2, dll) dan pembagian waktu yang lebih panjang yang disebut
machine cycle. States T adalah panjang yang diberikan bergantung jenis mikroprosesornya.
Gambar 4-8 menunjukkan machine cycle yang disusun oleh empat buah T states.

gambar 4-8

TEKNIK OTOMASI INDUSTRI 26


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Hubungan antara T states (T1, T2, etc.) dan machine cycles (M1, M2, dll) ditunjukkan
pada gambara 4-9a. Machine cycles dihubungkan dengan MPU actions seperti, read, write,
fetch, atau execute. Dalam mikroprosesor ini tipe-tipe machine cycles adalah:
1. Read (sebuah op code fetch)
2. Read dari memori atau I/O
3. Write ke memori atau I/O
4. Mengeksekusi operasi internal.
Instruksi store dibagi menjadi empat machine cycles (M1-M4) pada gambar 4-9a.
Yang pertama adalah op code fetch (read); kedua, read program memory; ketiga read
program memory yang lain; keempat adalah operasi write-in memory. Seluruh kombinasi
(read, read, read, dan write) disebut sebagai instruction cycle, seperti yang ditunjukkan pada
gambar 4-9a. Perthatikan tidak seluruh machine cycles membutuhkan waktu yang sama.
Pada gambar 4-9a, machine cycle pertama (M1) membutuhkan waktu empat T states
dimana untuk intruksi hanya membutuhkan tiga T states. Seluruh instruction cycles bagi
instruksi store adalah 13 T states.

gambar 4-9

Timing dari ADD dapat dilihat pada gambar 4-9b. Machine cycle pertama (M 1)adalah
operasi op code fetch (read). Selama T4 dari M1, MPU men-decode instruksi ADD dan
memutuskan ia membutuhkan dua machine cycles untuk menyelesaikan instruksi. Machine
cycle kedua (M2) membaca byte selanjutnya dari program memory sebagai operand dimana
M3 mengeksekusi operasi add pada ALU. Perhatikan pada gambar 4-9 machine cycles tidak
sama panjangya untuk setiap instruction cycles.
Unit interrupt control unit pada gambar 4-7 akan menerima sinyal interrupt dari
perangkat eksternal melalui input INTR. Ini membimbing kerja MPU melalui unit kontrol pada
langkah 2 hingga 6 seperti pada gambar 4-6.
Stack pointer pada gambar 4-7 adalah seperti program counter yang menyimpan
alamat, menaikkan atau menurunkan isinya sendiri, dan dapat diisikan pada alamat baru.
Stack pointer memiliki lebar 16-bit, karenanya ia dapat mengakses 16 address lines.
Data/address register yang ditunjukkan pada gambar 4-7 adalah dua buah register 8-
bit yang dapa digunakan terpisah atau dikombinasikan sebagai pasangan. Dua data/address
register 8-bit diberikan label H dan L (High order byte dan Low order byte). Ini biasanya
disebut register H dan register L jika tidak digunakan sebagai pasangan. Juga biasa disebut
sebagai HL register pair. Register H dan L adalah register general purpose adalah register

TEKNIK OTOMASI INDUSTRI 27


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

yang dapat berfungsi sebagai accumulator, dan juga dapat menyimpan data. Register HL
dapat berfungsi sebagai address register yang dapat menyimpan address tujuanuntuk
menyimpan atau alamat sumber saat memasukkan data. Ringkasnya, register H dan L

dapat digunakan untuk menyimpan dan memanipulasi data atau dapat digunakan sebagai
address pointing.

4.5 Menggunakan RegisterData/Address

Fitur yang menarik apda mikroprosesor ini adalah kegunaan dari padangan HL register
untuk mengalamatkan lokasi memori. Dikatakan paasngan HL register digunakan sebagai
poiner atau address pointer saat ia secara temporer mengambil tugas program utama dalam
menunjuk alamat pada memori atau I/O. Beberapa mikroprosesor umum, seperti 8080/8085
dan Z80, memiliki register tipe ini untuk menunjukkan address. Pasangan register HL dapat
diketahui sebagai address register, data coutner, pointer pada mikroprosesor lain.

Misalkan tugas sederhana dari tiga lokasi memori berurutan dan menyimpan hasinya
pada lokasi memori selanjutnya. Isi memori bagi maslaah ini dirinci pada gamar 5-10.
Program disiksan ke dalam memori 2000H hingga 200AH, ketika tiga bilangan ditambahkan
(0CH+0AH+)7H) dimasukkan ke dalam lokasi memori 2100H hingga 2102H. Program ini
berisi tujuh instruksi, seperti pada gambar 4-10. Ingat pada program ini accumulator selalu
menyimpan hasil penjumlahan, dan register HL akan menyimpan alamat.

gambar 4-10

TEKNIK OTOMASI INDUSTRI 28


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

gambar 4-11

Instruksi pertama (op code 3A) pada gambar 4-10 memerintahkan CPU untuk
memasukkan data memori 2100H ke accumulator. Eksekusi isi accumulator ini digambarkan
secara detail pada gambar 4-11a, dimana isi data lokasi memori 2100H dimasukkan ke
dalam accumulator CPU. Accumulator sekarang menyimpan bilangan pertama yang
ditambahkan (0CH).
Instruksi kedua pada gambar 4-10 memerintahkan CPU untuk memasukkan 2101H
ke dalam register HL. Lokasi ini adalah pada data memory. Ini adalah instruksi
memasukkan register HL secara immediate. Cara loading dari instruksi 2 dapat kita lihat
pada gambar 4-11b. Perhatikan isi dari lokasi memori program pertama (2004H)
dimasukkan ke dalam low-order byte (L) pada register HL. Dan lokasi memori program
selanjutnya dimasukkan ke byte H pada HL (2005H).
Instruksi ketiga pada gambar 4-10 memerintahkan CPU menambahkan isi
accumulator dengan isi lokasi memori yang ditunjukkan oleh register HL. Gambar 4-11c
menggambarkan secara detail proses ini. Register HL menunjuk lokasi memori 2101H, dan
kemudian ALU menambahkan isinya (000010102) ke isi accumulator (00001100 2),
menghasilkan jumlah 000101102, yang kemudian dikirim kembali ke accumulator.
Instruksi keempat pada gambar 4-10 memerintahkan CPU untuk menaikkan (tambah
+1) isi dari register HL. Penaikan ini dapat dilihat pada gambar 4-11d. Perthatikan hanya
byte L saja yang diubah dari register HL.

TEKNIK OTOMASI INDUSTRI 29


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Instruksi kelima gambar 4-10 memerintahkan CPU untuk menambahkan isi accumulator ke
isi dari lokasi memori yang ditunjukkan oleh oleh register HL. Gambar 5-11e menunjukkan
secara rinci bagaimana proses ini berlangsung. Isi dari lokasi memori 2102H

dan accumulator ditambahkan, menghasilkan jumlah 000111012, yang kemudian disimpan


di accumulator.
Instruksi keenam pada gambar 4-10 memerintahkan CPU untuk menaikkan
(increment) register HL. Ini dapat dilihat pada gambar 5-11f.
Instruksi ketujuh gambar 4-10 memerintahkan CPU untuk menyimpan isi dari
accumulator (000111012) pada lokasi memori yang ditunjuk oleh register HL. Gamba 4-11g
menunjukkan bagimana isi accumulator disimpan pada lokasi 2103H.
Instruksi yang digunakan register HL sebagai pointer menggunakan mode
pengalamatan yang disebut sebagai register indirect addressing.

4.6 Menggunakan stack pointer


Mikroprosesor umum pada gambar 4-7 memiliki stack pointer. Stack pointer
adalahregister counter 16-bit yang selalu menyimpan sebuah alamat. Alamat pada stack
pointer adalah lokasi dari sebuah grup khusus lokasi penyimpanan pada memori data yang
disebut sebagai stack. Subroutine adalah program khusus yang digunakan beberapa kali
sepanjang program utama dijalankan.
Stack pada mikroprosesor umum ditentukan di dalam bagian read/write memory.
Programmer memilih sebuah grup lokasi pada RAM untuk dibuat sebagai stack. Stack
pointer dimasukkan dengan alamat yang lebih tinggi satu pada alamat paling tinggi dari
alamat tertinggi stack. Ini dapat dilihat pada gambar 4-12. Stack pointer di letakkan pada
220AH, dimana ini lebih tinggi satu byte dari lokasi pertama stack yaitu 2209H.

gambar 4-12

TEKNIK OTOMASI INDUSTRI 30


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Data dituliskan ke stack dengan menggunakan instruksi PUSH ata CALL. Data dapat
dibaca dari stack dengan menggunakan instruksi POP atau RETURN. Stack bekerja
sebagai sequential-access memory sehingga dat terakhir yang masuk adalah data yang
pertama kali keluar. Ini disebut sebagai last-in-first-out, atau LIFO. Atau dapat disebut juga
sebagai first-in-last-out, FILO, memory.

Instruksi PUSH dapat menghasilkan hasil seperti pada gambar 4-13a. Isi dari register
HL dimasukkan ke dalam stack. Perhatikan isi register HL harus dimasukkan ke dalam dua
lokasi memori. Urutan ini dapat dilihar dari angka yang dilingkari.

Gambar 4-13
1. Stack pointer pada CPU decrement dari 220AH ke 2209H.
2. Stack pointer menunjukkan daerah penyimpanan 2209H ke address bus sistem, dan
hig-order byte (000000002) dimasukkan ke dalam stack.\

TEKNIK OTOMASI INDUSTRI 31


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

3. Stack pointer pada CPU decrement lagi dari 2209H ke 2208H.


4. Stack pointer menunjukkan lokasi penyimpanan 2208H pada address bus sistem,
dan kemudian low-order byte (00001111 2) dari data/address register disimpan ke
dalam stack.
Selanjutnya operasi stack ditunjukkan apda gambar 4-13b. Saat ini, isi dari accumulator
dan status register dimasukkan ke dalam stack. Lalu langkah detaila dapat dilihat pada
gambar 4-13b.
5. Sebelum operasi, stack pointer menunjukkan entri terakhir dari stack. Stack
menunjukkan posisi top of the stack.Stack pointer sekarang diturunkan ke 2207.
6. Lokasi alamat stack pointer 2207H pada stack, dan isi accumulator (01010101 2)
dimasukkan pada stack.
7. Stack pointer diturunkan dari 2207H ke 2206H.
8. Stack pointer menunjuk alamat lokasi 2206H. Isi dari status register (11111111 2)
dimasukkan pada bagian atas stack.

Stack dapat melanjutkan proses ini bergantung alokasi memori yang diberikan dan besarnya
RAM.
Umumnya, setiap untuk setiap PUSH harus ada instruksi POP setelah proses interrupt
berlangsung. Karena stack adalah LIFO (last-in-first-out) memory, data haruslah keluar
dalam urutan terbalik seperti pada gambar 4-13c dan d.
Lihat gambar 4-13c. Accumulator dan status register dimasukkan dengan data yang
dimiliki sebelumnya. Urutan dapat dilihat pada angka yang dilingkari pada gambar 4-13c.
1. Stack mengalamatkan bagian atas dari stack, yaitu lokasi memori 2206H. Isi dari
statur register (111111112) dikeluarkan dari stack dan dikembalikan ke ALU.
2. Stack pointer dinaikkan dari 2206H ke 2207H.
3. Stack pointer mengalamatkan lokasi 2207H pada stack. Bagian atas stack
dimasukkan dan isinya dikembalikan ke accumulator pada CPU.
4. Stack pointer dinaikkan ke 2208H dan sekarang menunjuk lokasi selanjutnya yang
akan dikeluarkan.

Isi status register dan accumulator telah dikembalikan sesuai keadaan sebelumnya.
Isi data/address register kemudian dimasukkan ke stack seperti pada gambar 4-13d.
5. Stack pointer mengalamatkan bagian paling atas dari stack (2208H). Isi dari lokasi ini
dikeluarkan dan dikembalikan ke low-order byter dari register HL.
6. Stack pointer dinaikkan ke 2209H.
7. Stack pointer mengalmatkan bagian atas stack, dimana lokasi adalah 2209H. Isi
(000000002) dikembalikan ke high-order byuter dari register HL.
8. Akhirnya, stack pointer dinaikkan dari 2209H ke 220AH untuk persiapan operasi
push atau call selanjutnya.

TEKNIK OTOMASI INDUSTRI 32


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

4. 7 Pemerograman dengan mikroprosesor

Bahasa mesin (machine) dan bahasa assembly

Pada tingkat dasar, mikroprosesor memahami bahasa pemerograman yang disebut


bahasa mesin. Isi dari memori program pada gambar 6-1a menyajikan sebuah program
dalam kode mesin. Program dimulai pada alamat 2000H dengan op code 00111110 2 dan
berakhir pada alamat 2006H dengan 011101102. Program dalam bentuk ini hampir tidak
mungkin dipahami manusia pada umumnya.

gambar 4-14

Program mesin pada gambar 4-14a dapat dibuat dengan cara lebih mudah bila
bilangan biner dapat disajikan dengan notasi heksadesimal. Program yang sama diulang
denga isi heksadesimal pada gambar 4-14b. Segmen program yang ditunjukkan pada
gmbar 4-14b masih dalam bentuk kode mesin sekalipun bilangan biner telah diubah ke
notasi heksadesimal. Program dalam bentuk ini masih sangat sulit dimengerti.

Pada tingkat manusia, program yang sebelumnya dijabarkan dengan kode mesin
dapat dinyatakan sebagai berikut:
1. Load bilangan biner (10110100) ke dalam accumulator pada mikroprosesor.
2. Complement setiap bit bilangan biner pada accumularor untuk menghasilkan
1s complement.
3. Simpan hasil 1s complement pada lokasi memori data 210016.

TEKNIK OTOMASI INDUSTRI 33


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Program di atas menjelaskan perubahan bilangan 8-bit biner dengan ekuivalen 1s


complement.
Pertanyaan yang muncul adalah: bagaimana memperoleh pemahaman yang dapat
dipahami oleh manusia umum dari kode mesin? Kita dapat menggunakan bahasa assembly.
Bahasa assembly menggunakan words dan prharses untuk menyajikan kode mesin.
Umumnya, satu frasa atau statemen dalam bahasa assembly sama dengan 1 hingga 3 byte
kode mesin. Ide dasar dari dari proses assembling ini dapat dlihat pada gambar 6-2a. Disini,
instruksi kedua disajikan dalam tiga huruf mnemonic yang unik CMA (Complement the
accumulator). Pertama huruf mnemonic ditransfer ke kode ASCII (American Standard Code
for Information Interchange). Ketiga kode ASCII dievaluasi dengan program assembler
tertentu., kemudian hasilnya dari CMA tersebut menjadi 2FH(00101111 2). Mnemonic telah
menghasilkan satu byte dari kode bahasa mesin.

Gambar 4-15

TEKNIK OTOMASI INDUSTRI 34


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

gambar 4-15 (sambungan)

Program assembly language dapat dilihat seperti pada gambar 4-15b. Adalah biasa
untuk membagi statement bahasa assembly ke dalam empat fields: (1) label, (2)
menemonic, (3) operand, dan (4) comments. Label tidak harus selalu digunakan dan
biasanya kosong pada segmen program sederhana. Mnemonic berisikan menemonic yang
diperoleh dari pabrik pembuat mikroprosesor. Bagian ini memberitahukan operasi apa saja
yang dijalankan. Operand berisikan informasi mengenai register, data, atau alamat yang
berhubungan dengan operasi. Dengan menggunakan informasi dari mnemonic dan
operand, program assembly dapat menghasilkan kode bahasa mesin yang tepat. Daerah
comment (komentar) tidak dievaluasi oleh program assembly tapi hanya untuk dicetak.
Setelah program assembly di-assembled, maka kita dapat melihat hasilnya seperti
pada gambar 4-15c. Di sini alamat dan kode mesin ditambahkan. Sederhananya, tugas dari
assembler adalah (1) menerjemahkan mnemonics dan opeands ke kode mesin yang
ekuivalen (2) menugaskan memori yang berurutan untuk setiap op code dan operand.
Tugas mendapatkan bentuk dari gambar 4-15b sampai4-15c dilakukan oleh program
assembly komputer tertentu.
Sebuah program disusun dari statemen simbolik, seperti program pada gambar 4-
15b, disebut sebagai source program. Sesudah source program diterjemahkan ke bentuk
bahasa mesin (oleh compiler atau assembler), hal ini disebut sebagai object program.
Pemerograman bahasa assembly adalah metoda untuk memanusiakan operasi pada
mikroprosesor. Sekalipun bahasa tingkat tinggi yang ada (BASIC, FORTRAN, dll) akam
membuat pemerograman lebih singkat.. Bahasa pemerograman asembly akan digunakan
untuk membantu pemahaman set instruksi dari mikroprosesor dan operasinya.

TEKNIK OTOMASI INDUSTRI 35


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

4.8 Instruction set

Set instruksi yang umum ada pada mikroprosesor memiliki tujuh kategori berikut:

1. Instruksi aritmatik.
2. Instruksi logik
3. Instruksi transfer data
4. Instruksi percabangan
5. Instruksi Subroutine call
6. Instruksi Return
7. Bermacam instruksi lainnya
Sebagai pengenalan pada kesempatan ini kita hanya membahas instruksi operasi
aritmatik.
Instruksi aritmatik antara lain: instruksi add (penjumlahan), substract(pengurangan),
increment (penaikan), decrement (penurunan), dan compare(perbandingan).

gambar 4-16

TEKNIK OTOMASI INDUSTRI 36


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Pertimbangkan instruksi pertama yang berada pada tabel gambar 4-16. Instruksi
"add A immediate" adalah instruksi 2-byte dengan format yang ditunjukkan yang ditunjukkan
seperti pada tabel. Biasanya, op code (C6H dalam kasus ini) muncul pada bute pertama dari
memori program, dengan data ditambahkan ke accumulator pada byte kedua. Instruksi ADI
ditunjukkan pada diagram pada gambar 4-17a. Immediate Data pada memori program
(000100002) ditambahkan pada isi accumulator (000011112). Jumlah (000111112)
dikembalikan ke accumulator setelah operasi.

gambar 4-17

TEKNIK OTOMASI INDUSTRI 37


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Instruksi kedua gambar 4-16 adalah "add register to A" (mnemonic dari ADD L).
Contoh maslah yang menggunakan instruksi register ke register dapat dilihat pada gambar
4-17b. Isi accumulator (000010002) ditambahkan ke isi register L (000000012). Jumlah
(000010012) dimasukkan kembali setelah operasi.
Instruksi ketiga adalah instruksi satu byte"add H to A "(mnemonic ADD H). Ini adalah
instruksi penjumlahan register to register. Sebuah contoh menggunakan perintah ini dapat
dilihat pada gambar 4-17c. Isi dari register A (00101100 2) ditambahkan ke isi register H
(000100112), menghasilkan jumlah 001111112. Jumlah tersebut disimpan ke accumulator
setelah operasi selesai.
Instruksi keempat gambar 4-16 adalah instruksi satu byte "add register indirect"
(mnemonicnya ADD M). Lokasi data ditambahkan dengan cara lebih rumit dengan
menggunakan mode pengalamatan register indirect. Penggunaan mode ini dapat dilihat
pada gambar 4-17d. Register HL memliki 16-bit address. Register HL kemudian
menunjukkan (points)ke lokasi memori data (LOC). Isi (00000011 2) pada lokasi ini
ditambahkan ke isi accumulator (011000002). Hasilnya (011000112) dimasukkan kembali ke
accumulator setelah operasi penjumlahan. Instruksi register indirect menggunakan 16-bit
register sebagai address pointer.
Perhatikan instruksi "add register indirect" (ADD M) pada gambar 4-16. Instruksi itu
dapat diterjemahkan sebagai "tambahkan isi lokasi memori yang ditunjuk register HL ke isi
register A". Ini merupakan mode pengalamatan register indirect. Berdasarkan gambar 4-16
instruksi register indirect adalah instruksi 1-byte. Format instruksi digambarkan seperti byte
instruksi tunggal yang berisikan op code bagi instruksi. Kolom kedua dari kanan pada
gambar 4-16 adalah operasi yang dilakukan oleh CPU. Pernyataan simbolik bagi instuksi
ADD M dirinci seperti pada gambar 4-18. Dengan menggunkan pola yang digunakan Intel
Corporation, statemen simbolik dibaca dari kanan ke kiri. Pada bagian kanan panah,
operand pertama diidentifikasi sebagai isi A (accumulator). Simbol ( ) menyatakan isi. Tanda
+ berarti operasi yang dijalankan, diman saat ini adalah operasi penjumlahan. Tanda (( ))
menyatakan instruksi register indirect. ((H)(L)) berarti isi HL menunjuk pada lokasi memori
operand kedua. Dengan kata lain, operand kedua berada pada lokasi memori yang ditunjuk
oleh isi register HL. Setelah operasi, hasilnya dimasukkan register A (accumulator).

gambar 4-18

Kolom yang paling kanan pada daftar gambar 4-16 adalah flags yang terpengaruh
oleh eksekusi dari instruksi. Contohnya dapat dilihat pada gambar 4-19. Misalkan kita
melakukan penjumlahan seperti yang ditunjukkan gambar 4-19a. Lalu kita dapat melihat

TEKNIK OTOMASI INDUSTRI 38


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

cara bekerja mikroprosesor generik melakukan tugas yang sama dengan menggunakan
instruksi ADD M pada gambar 4-19. Accumulator menyimpan 11111111 2, ketika sebuah
lokasi pada memori data ditunjuk oleh register HL menyimpan bilangan yang akan

ditambahkan (000000012). Setelah operasinya selesai, accumulator menyimpan paling


sedikit 8 bit dari hasil penjumlahan yaitu (00000000 2). Carry flag pada status register di set
1, menyatakan bahwa ada carry dari most significant bit dari accumulator. Zero flag
memrikda isi dari accumulator setelah opearasi dan mendapatkan nilai 000000002. Ketika
menemukan nilai nol tersebut, zero flag diset menjadi 1, menyatakan accumulator bernilai
00000000 setelah operasi penjumlahan.

Gambar 4-19

Sebagai contoh, lihatlah gambar 4-20. Angkar biner 00000001 dikurang 00001001
(09H-01H= 08H). Untuk melihat cara bekerja dengan pensil dan kertas kita dapat melihat
gambar 4-20a. Untuk melakukan operasi pengurangan kita dapat melakukan penjumlahan
dengan menggunakan complement 2s dari pengurang. Untuk kasus ini 00000001 di 2s
complement menjadi bentuk:
00000001 11111110 1s complement
11111110 + 1 = 11111111 2s complement
Bentuk 2s complement (11111111) ini diambahkan ke 00001001, seperti gambar 4-20a.
Angka 1 pada psisi most significant aalah penjumlahan dari sebuah overflow, dan
merupakan bagian dari bagian dari 000010002. Mikroprosesor menggunakan overflow untuk
mempengaruhi flag carry ( atau borrow). Saat mengurangkan CPU mengubah overflow, dan
ini menjadi isi dari carry flag (CY). Pada gambar 4-20a, overflow 1 dibuah dan mereset carry
flag ke 0. Saat carry flag reset pada kasus pengurangan, berarti tidak ada "borrow" yang
muncul artinya jumlah yang dikurang lebih besar dari pengurang.

TEKNIK OTOMASI INDUSTRI 39


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

Misalkan bila bilangan yang dikurang (minuend) lebih kecil dari pengurang
(subtrahend). Misalkan mengurangkan 00000101 dengan 00000110 (05H - 06H = FFH atau
-110). Kita dapat melihat cara mengurangkan dengan pensil dan kertas seperti pada gambar
4-20a. Subtrahend diubah menjadi 2s complement menjadi

00000110 11111001 1s complement


11111001 + 1 = 11111010 2s complement

Gambar 4-20
Minuend (000001012) kemudian dtambahkan dengan 2s complement dari subtrahend
(11111010), menghasilkan 11111111. 11111111 adlah 2s complement dari -110 .Gambar 4-
19a juga menunjukkkan penjumlahan yang mengakibatkan tidak adanya overflow, atau 0
pada register overflow. Ini diinversikan menjadi 1 pada posisi flat CY atau "borrow". Saat flag
CY diset 1 setelah operasi pengurangan, ini berarti isi accumulator adalah lebih kecil dari
bilangan yang berada pada lokasi memori. Carry yang diset 1 berarti bilangan pada
accumulator setelah pengurangan adalah representasi dari 2s complement atau bilangan
negatif. 1111111 pada accumulator gambar 4-20b menyatakan -110.
Set instruksi mikroprosesor generik memiliki empat instruksi compare
(perbandingan). Instruksi compare mengurangkan isi accumulator dari isi memori tapi tidak
mengubah isi dari keduanya (gambar 4-21). Flag dipengaruhi oleh instruksi compare.
Instruksi "compare register L" digunakan pada gambar 4-21. Bilangan yang sama
(000100002) pada accumluator dan register L dibandingkan oleh miroprosesor. Perhatikan
pada gambar 4-21a bahwa tidak ada perubahan pada isi accumularor dan register L
setelah operasi perbandingan. Hanya flag pada register status yang terpengaruh.

TEKNIK OTOMASI INDUSTRI 40


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

gambar 4-21
Sesuai informasi pada kolom gambar 4-16, isi register L dikurangkan dari isi
accumulator A saat menggunakan instruksi "CMP L". Gambar 4-21b menunjukkan proses
dengan metoda pensil dan kertas. Subtrahend ( isi dari register L) diubah ke bentuk 2s
complement dengan prosedur berikut
00010000 11101111 1s complement
11101111+1 = 11110000 2s complement
Minuend (000100002) adalah subtrahend dalam bentuk 2s complement (11110000)
kemudian dijumlahkan, menghasilkan 1 0000 0000. Delapan least significant dievaluasi jika
sama dengan 0. Karena nol, maka flag zero diset 1. Overflow 1 diinvers ke 0 oleh ALU, dan
flag carry bernilai 0 pada contoh ini. CY = 0 berarti isi dari accumulator lebih besar atau
sama dengan isi dari register L.
Ringkasnya, operasi aritmatik dapat dilakukan oleh MPU adalah bergantung dari set
instruksi yang ada. Banyak mikroprosesor yang memiliki lebih banyak instruksi aritmatik
dan beberapa lebih banyak flag pada status register. Flag juga banyak digunakan pada
instruksi conditional branch atau jump.

TEKNIK OTOMASI INDUSTRI 41


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembar Informasi Dasar Sistem Microprosessor

4-9. Contoh pemerograman assembly pada mikroprosesor 8088

ADR1 (First Operand


OP1

ADR2 (Second Operand)


OP2

ADR3 (Result)
RES

gambar 4-22

Penambahan 8-bit (menggunakan mikroprosesor 8088)


Contoh program yang akan kita pelajari adalah penambahan dua bilangan 8-bit OP1
dan OP2 yang disimpan di lokasi memori ADR1 dan ADR2. Hasil operasi yang akan
disimpan di ADR3 disebut RES. Penyimpanan bilangan-bilangan ini diberikan pada gambar
21.
Program penambahan sederhana tersebut dapat dituliskan sebagai berikut:
MOV AL, ADR1 ; letakkan OP1 di AL
ADD AL, ADR3 ; tambahkan AL dengan OP2 di ADR2
MOV ADR3, AL ; hasil di AL disimpan di ADR3
Tiap-tiap baris instruksi diterjemahkan komputer ke object code yang bersangkutan, dan
kemudian CPU akan mengeksekusinya.

1;
2 ; PROGRAM TO ADD TWO 8-BIT NUMBERS
3;

4 ORG 0200H

5;
6 ADR1 EQU 0300H
7 ADR2 EQU 0320H
8 ADR3 EQU 0345H
9;

0200
TEKNIK OTOMASI A00003
INDUSTRI 10 MOV AL,ADRI ;LOAD AL WITH DATA @ ADR1 42
SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
0203 02062003 11 ADD AL,ADR2;ADD AL WITH DATA@ ADR2
0207 A24503 12 MOV ADR3,AL;STORE AL @ ADR3
13;
Lembar Informasi Dasar Sistem Microprosessor

gambar 4-23

Instruksi baris pertama mengatakan bahwa register AL di-load dengan data yang disimpan
di lokasi ADR1. Kita dapat menggunakan register umum lainnya, tidak hanya AL. ADR1
adalah simbol dari alamat sebenarnya pada memori. Alamat sebenarnya didefinisikan di
bagian lain program. ADR1 merupakan offset, sehingga sebelum CPU mengambil data dari
memori, perlu mengkombinasikan ADR1 dengan segmen yang dipakai. Gambar 22
memperlihatkan situasi setelah instruksi baris pertama dieksekusi.
Instruksi baris kedua ADD AL, ADR2 berarti data OP2 yang disimpan di ADR2
dijumlahkan dengan isi register AL (OP1), dan hasilnya disimpan di AL.
Kemudian instruksi baris ketiga akan mentransfer isi register AL (RES) ke lokasi
ADR3.

TEKNIK OTOMASI INDUSTRI 43


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

TUGAS-TUGAS PRAKTEK
PRAKTEK 1

1. ______(MPU, RAM, ROM) merupakan pusat seluruh operasi dan kontrol pada
mikrokomputer.

2._______(address, data) bus adalah jalur satu arah (one-way).

3. Dengan 16 lines, address bus akan dapat mengakses hingga (16.384, 65.536) memori
terpisah dan/atau lokasi input/output.

4. Sebutkan paling sedikit tiga jenis output dari unit mikroprosesor.

5. Sebutkan paling sedikit tiga input dari unit mikroprosesor

AKTIFITAS PRAKTEK 1
1. Sebutkan paling sedikit input pada ROM.

2. Sebutkan output dari ROM.

3. Sebutkan paling sedikit 4 jenis input pada RAM.

4. Sebutkan paling sedikit 4 jenis output pada RAM

5. Sebutkan paling sedikit 5 jenis input ke keyboard interface circuit.

PRAKTEK 2
1. Menulis atau membaca lokasi memori mikrokomputer disebut sebagai…..(acessing,
finding) memory.

2. ROM dan RAM digunakan pada mikroprosesor di sini adalah contoh …..(random,
sequential) access memories.

3. Mengacu pada gambar 2-1. Jika alamat pada address bus adalah 0010 0000 0000 0000,
sebutkan alamat yang diakses dalam heksadesimal.

4. Mengacu pada gambar 2-2. Jika mikrokomputer mengakses lokasi memori 0001H,
(RAM, ROM) akan mengeluarkan ……………..(8 bit)

TEKNIK OTOMASI INDUSTRI 44


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

AKTIFITAS PRAKTEK 2
1. Mengacu pada gambar 2-2. Jika storage device dalam mode write, sebuah ____(byte,
nibble) data dari data bus akan diletakkan di ____(RAM, ROM).

2. Mengacu pada gambar 2-2. Apakah hasil output pada data bus jika mikroprosesor
membaca lokasi penyimpanan FFFFH.

3. Mengacu pada gambar 2-2. Berapa maksimum memori yang dapat diakses dari 16
addresslines?

4. Jika sebuah komputer memiliki storage 512 K, maka ia akan memliki ___ lokasi memori
yang setiap lokasi lebarnya 8 bit.

PRAKTEK 3
1. Apa kepanjangan dari CPU

2. Mengacu pada gambar 1-1. Berada dimanakah CPU pada sistem mikrokomputer ini?

3. Sebuah CPU umumnya memiliki (a) storage devices yang disebut_____, (b)rangkaian
komputasi yagn disebut____, (c) rangkaian _____ , dan (d) sebuah bagian _____ and
timing.

4. Tuliskan empat tugas utama CPU pada mikrokomputer.

AKTIFITAS PRAKTEK 3
1. Apa kepanjangan ALU?

2. Mengacu pada gambar berikut

TEKNIK OTOMASI INDUSTRI 45


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

Apa isi accumulator setelah operasi AND. Tabel kebenaran AND adalah sbb:
Input Output
A B AND
0 0 0
0 1 0
1 0 0
1 1 1

3. Berdasarkan gambar pada soal no 2, flag Zero akan ___(set, reset) sesudah operasi
AND.

4. Status register pada ALU juga disebut sebagai sebuah ________ code register, adan
individual flip-flops disebut sebagai (flags, signs).

PRAKTEK 4
1. Hampir semua mikroprosesor membutuhkan ____-V dc regulated power supply.

2. Prosesor 8080, 8085, 6800, Z80, dan 6502 adalah contoh dari mikroprosesor ____-bit.

3. Register internal yang menyimpan alamat dari instruksi selanjutnya pada MPU adalah
____
4. Sebutkan enam unit fungsional yang terkandung pada hampir semua chip mikroprosesor.

5. Mengacu pada gambar 4-7. Apakah unit fungsional yang berada pada data bus dan
internal data bus pada mikroprosesor?

6. Mengacu pada gambar 4-7. Apakah tiga output control lines yang membantu
mensinkronkan proses pada seluruh bagian sistem berbasis mikroprosesor?

7. Nama lain dari address register adalah ____(data, program) counter.

TEKNIK OTOMASI INDUSTRI 46


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

AKTIFITAS PRAKTEK 4
1. Mengacu pada gambar 4-10. Berapakah jumlah (dalam heksadesimal) yang ditransfer ke
data memory locaton 2103H setelah program dieksekusi.?

2. Mengacu pada gambar 4-10 dan 4-11. Accumulator selalu menyimpan _____(instruction,
sum), dan register HL menyimpan sebuah _____(address, program count).
3. Pada mikroprosesor generik, _______(designer, programmer) menentukan lokasi stack
pada RAM.

4. Mengacu pada gambar 4-12, Lokasi memori _____(dalam heksadesimal) adalah lokasi
stack pertama yang dapat digunakan dengan operasi push atau call.

5. "Pushing the stack" berarti operasi ______(read, write) dalam sebuah LIFO memory.

6.Soal no 12-14 Mengacu pada gambar berikut. Langkah 1 menunjukkan _______


__________didekremen dari 0009 ke 0008H.

7. Langkah 2 menunjukkan high-order byte data/address register di ____(popped,pushed)


ke dlam (L register, stck).
8. Langkah 4 menunjukkan low-order byte data/address register di "pushed" ke dlama lokasi
stack_____(address dalam heksadesimal).

Tugas dan aktivitas mengenai pemerograman

PRAKTEK 5
No 1 dan 2 mengacu pada tabel gambar 4-16

1. "Instruksi "subtract immediate: memiliki mnemonic _______ dan sebuah op code D6H
dan sebuah instruksi ______(angka) -byte.
2. Increment artinya _____ (tambah 1, atau kurang satu dari) is register mikroprosesor.

3. Lihat gambar berikut. Isi accumulator gambar berikut setelah operasi decrement adalah
_____(jawaban dalam 8 bit).
TEKNIK OTOMASI INDUSTRI 47
SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

4. Mengacu pada gambar 4-16. Flag Zero pada gambar soal 3 di atas adalah___(reset, set)
ke ____(0,1) setelah operasi decrement.

5. Mengacu pada gambar 4-16. Bagaimana kondisi flag Carry setelah operasi decrement?

AKTIFITAS PRAKTEK 5
1. Mengacu pada gambar 4-16. Tuliskan isi accumulator dan dua lokasi program memory
setelah operasi "compare immediate" pada gambar berikut:

2. Mengacu pada gambar 4-16. Flag zero pada gambar soal no 1 akan menjadi_____ (reset
ke 0, atau set ke 1) setelah operasi "compare immediate".

3. Mengacu pada gambar 4-16. Flag carry pada soal no 1 akan____ (reset ke 0, set ke 1)
setelah operasi "compare immediate".

4. Mengacu pada gambr 4-16. Isi dari register pair HL pada gambar berikut setelah operasi
increment akan menjadi_____(hex).

5. Mengacu pada gambar 4-16. Apa isi flags pada gambar soal no 4 setelah operasi
increment register HL?
TEKNIK OTOMASI INDUSTRI 48
SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

TEKNIK OTOMASI INDUSTRI 49


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI
Lembaran Praktek Dasar Sistem Microprosessor

TEKNIK OTOMASI INDUSTRI 50


SEKOLAH MENENGAH KEJURUAN NEGERI 1 CIMAHI

Anda mungkin juga menyukai