JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister...

29
PERTEMUAN : 3 ARSITEKTUR SISTEM JurusanTeknik Informatika STT – PLN [email protected] Riki Ruli S - http://blogriki.wordpress.com

Transcript of JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister...

Page 1: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

PERTEMUAN : 3

ARSITEKTUR SISTEMARSITEKTUR SISTEM

Jurusan Teknik Informatika

STT – PLN

[email protected]

Riki Ruli S - http://blogriki.wordpress.com

Page 2: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Mikrokomputer menggunakan CPU tunggal meskipundalam kenyataannya terdapat banyak chip yang mendukung PC, yang paling nampak adalah 80x87 co-prosesor matematika, tapi CPU masih menjadipengatur utamanya.

• Tugas yang paling mendasar yang ditangani oleh CPU

CPU (Central Processing Unit)

• Tugas yang paling mendasar yang ditangani oleh CPU adalah :– Menemukan dan load/menempatkan instruksi berikutnya

– Mengeksekusi instruksi :• Fetch data dari memori/register

• Menyimpan data dalam memori/register

• Melaksanakan penghitungan dan perbandingan

• Memperbaharui penunjuk instruksi (pencabangan)

Page 3: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• CPU dibagi menjadi dua bagian : Arithmetic Logic Unit (ALU) danControl Unit (CU).

• ALU melaksanakan operasi aritmetik, logic, dan penggeseran

• Control Unit mengambil data dan instruksi dan menerjemahkankode (decode) alamat untuk ALU.

• Bus data. Bus adalah kabel parallel yang mengirimkan data antaraberbagai bagian CPU.

CPU (Central Processing Unit)

• Bus data. Bus adalah kabel parallel yang mengirimkan data antaraberbagai bagian CPU.

• Register. Berada dalam CPU yaitu area penyimpan kecepatan tinggi, yang langsung terhubung ke unit kendali dan ALU.

• Clock. Setiap operasi yang dilakukan di CPU harus disinkronkan olehclock. Unit waktu paling dasar untuk instruksi mesin yang disebutsiklus mesin (machine cycle). Instruksi mesin dalam prosesor Intel umumnya dilaksanakan antara 3 dan 20 clock.

Page 4: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

CPU (Central Processing Unit)

• Register berada dalam CPU. Ketika sesuatu diambil dari memori, alamatnya dihitung oleh unit kendali dan dikirim melalui bus alamat. Nilai

dari memori (baik instruksi atau data) dikirim balik ke CPU melalui bus data. Clock melakukan sinkronisasi setiap operasi CPU.

Page 5: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Register merupakan sebagian memori darimikroprosesor yang dapat diakses dengankecepatan yang sangat tinggi. Dalam melakukanpekerjaannya mikroprosesor selalu menggunakanregister-register sebagai perantaranya, jadiregister dapat diibaratkan sebagai kaki dan

REGISTER

register-register sebagai perantaranya, jadiregister dapat diibaratkan sebagai kaki dantangannya mikroprosesor.

• Register memiliki panjang 16 bit.

• Pengaksesan 4 register data dibagi dua bagianyaitu setengah bagian atasnya dan setengahbagian bawah.

Page 6: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Register merupakan sebagian memori darimikroprosesor yang dapat diakses dengankecepatan yang sangat tinggi. Dalam melakukanpekerjaannya mikroprosesor selalu menggunakanregister-register sebagai perantaranya, jadiregister dapat diibaratkan sebagai kaki dan

REGISTER

register-register sebagai perantaranya, jadiregister dapat diibaratkan sebagai kaki dantangannya mikroprosesor.

• Register memiliki panjang 16 bit.

• Pengaksesan 4 register data dibagi dua bagianyaitu setengah bagian atasnya dan setengahbagian bawah.

Page 7: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

REGISTER

Page 8: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Register Data

Register 16 bit ( satuan word )

AX, BX, CX, dan DX

REGISTER

Register 8 bit ( satuan byte )

AL, AH, BL, BH, CL, CH, DL, dan DH

– L = Low ( 8 bit pertama )

– H = High ( 8 bit kedua )

Page 9: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Register Data

• Register data digunakan untuk perhitunganaritmatik dan pemindahan data.

• Perhitungan setiap register dapat dialamatisebagai nilai 16-bit atau 8 bit.

REGISTER

sebagai nilai 16-bit atau 8 bit.

• Contoh register AX adalah register 16-bit, 8 bit atasnya disebut AH dan 8 bit bawahnya dinamaiAL.

• Posisi bit selalu diberi nomor dari kanan ke kiridimulai dari nol.

Page 10: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• AX (akumulator)AX disebut register akumulator karena digunakan oleh CPU untuk operasi

aritmatik. Operasi-operasi lain juga sedkit lebih efisien denganmenggunakan AX.

• BX (basis)Seperti register tujuan umum lainnya, register BX dapat melaksanakan

operasi aritmetik dan perpindahan data dan BX memiliki kemampuan

REGISTER DATA

operasi aritmetik dan perpindahan data dan BX memiliki kemampuanpengalamatan khusus. Dia dapat menyimpan alamat memori yang menunjuk pada variabel lain. Tiga register lain yang memiliki kemampuanini adalah SI, DI dan BP.

• CX (counter)Register CX bekerja sebagai counter untuk instruksi pengulangan atau

looping. Instruksi-instruksi tersebut secara otomatis mengulang danmengurangi CX dan keluar ketika CX sama dengan 0.

• DX (data)Register DX mempunyai peranan khusus dalam operasi perkalian dan

pembagian. Pada saat perkalian, contohnya, DX menyimpan 16 bit perkalian.

Page 11: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Register SegmenCPU mengandung 4 register segmen, digunakan sebagai lokasi basis untuk

instruksi program, data dan stack. Register segmen sebagai berikut :

• CS (code segment)

Register CS menyimpan lokasi basis semua instruksi yang dapat dieksekusi

REGISTER

Register CS menyimpan lokasi basis semua instruksi yang dapat dieksekusi

dalam program.

• DS (data segment)

Register DS adalah lokasi basis default untuk variabel variabel CPU

menghitung lokasi variabel-variabel menggunakan nilai segmen dalam DS.

• SS (stack segment)

Register SS mengandung lokasi basis stack.

• ES (extra segment)

Register ES adalah lokasi basis tambahan untuk variabel-variabel memori.

Page 12: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Register index mengandung offset variabel.

• Istilah offset mengacu pada jarak variabel, label atau instruksi dari segmen

basisnya.

• Register index mempercepat pemrosesan string array dan struktur data

lain yang mengandung banyak elemen.

Register-register index adalah :

REGISTER INDEX

Register-register index adalah :

• SI (source index)

Register ini mengambil nama dari instruksi pemindahan string, yang mana

string sumber ditunjuk oleh register SI. SI biasanya mengandung nilai

offset dari register DS.

• DI (destination index)

Register DI bekerja sebagai tujuan instruksi pemindahan string. Biasanya

mengandung offset dari register ES, BP (base pointer).

Page 13: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Register khusus sebagai berikut :

• IP (instruction pointer)

Register IP selalu mengandung offset instruksi berikutnya yang

akan dieksekusi. CS dan IP digabung untuk melaksanakan

alamat komplit instruksi berikutnya yang akan dieksekusi.

REGISTER KHUSUS

alamat komplit instruksi berikutnya yang akan dieksekusi.

• SP (stack pointer)

Register SP mengandung offset atau jarak dari awal stack ke

puncak stack. Register SS dan SP bersama melakukan alamat

lengkap puncak stack.

Page 14: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Register flag adalah register 16-bit khusus dengan

posisi bit sendiri dibuat untuk menunjukan status

CPU atau hasil operasi aritmetik.

• Setiap posisi bit yang relevan diberi nama, posisi lain

tidak didefinisikan.

REGISTER FLAG

tidak didefinisikan.

Page 15: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Debug � berasal dari istilah bahasa Inggris “bug”

yang berati kutu atau binatang kecil

• Mencari atau melacak kesalahan

• Debug = sebuah program yang digunakan untuk

melihat, mengedit dan menyimpan data kedalam

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

melihat, mengedit dan menyimpan data kedalam

memori atau disk.

• Bisa digunakan untuk membuat program COM dan

EXE. Dan bisa dijadikan sebagai alat bantu dalam

perancangan peralatan berbasis mikroprosesor.

Page 16: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Program DEBUG dapat digunakan untuk

mengeksplorasi keluarga prosesor 8086 termasuk

PENTIUM pada PC

• Program DEBUG telah disertakan setiap kali user

melakukan instalasi WINDOWS

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

melakukan instalasi WINDOWS

• Untuk menjalankan DEBUG, click Start-Run,

kemudian ketik CMD dan click OK sehingga muncul

pada layar prompt DOS.

Page 17: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Dari prompt DOS ketikDEBUG:

C:>DEBUG diikuti ENTER

• Prompt DEBUG ditandai dengan tanda minus dikuti

kursor berkedip : -_

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

• Terdapat 19 menu DEBUG, untuk melihatnya ketik -?

diikuti ENTER

Page 18: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Melihat isi register, ketik -R diikuti ENTER, maka akan

muncul dilayar :

• Hal itu menandakan bahwa isi register AX=0000 atau

AH=00 dan AL=00, BX=0000 atau BH=00 dan BL=00,

CX=0000 atau CH=00 dan CL=00, DX=0000 atau

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

CX=0000 atau CH=00 dan CL=00, DX=0000 atau

DH=00 dan DL=00

• Keadaan set dan reset register flag pada DEBUG

dinyatakan dengan singkatan NV, UP, EI, PL, NZ, NA,

PO, NC

Page 19: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Flag Status

• Bendera overflow:

OV (Overflow atau OF=1=set)

NV (No Overflow atau OF=0=reset)

• Bendera sign:

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

NG (Negative atau SF=1=set)

PL (Plus atau SF=0=reset)

• Bendera zero:

ZR (Zero atau ZF=1=set)

NZ (No Zero atau ZF=0=reset)

• Bendera auxiliary carry:

NA (No Auxiliary carry atau AF=0=reset)

AC (Auxiliary carry atau AF=1=set)

Page 20: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Flag Status

• Bendera paritas:

PO (Parity Odd = paritas ganjil atau PF=0=reset)

PE (Parity Even = paritas genap atau PF=1=set)

• Bendera Carry:

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

NC (No Carry atau CF=0=reset)

CY (carry atau CF=1=set)

• Contoh jika DEBUG menampilkan keadaan flag :

NV UP EI PL NZ NA PO NC

Artinya : hasil perhitungan ALU tidak overflow (NV), bernilai positif (PL),

tidak bernilai 0 (NZ), tidak ada carry pada penjumlahan bit ke-3 (NA),

berparitas ganjil(PO) dan tidak ada carry (NC)

Page 21: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Example Analyze • Analisis :

Misal kita menulis program assembly dengan perintah A dan

menjalankannya baris demi baris dengan perintah T (trace) :

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

Page 22: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Example Analyze

• Perintah diatas yakni:

MOV AL,3

ADD AL,2

ketika baris pertama dijalankan, isi AL=03 dan setelah baris

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

ketika baris pertama dijalankan, isi AL=03 dan setelah baris

kedua dijalankan isi AL menjadi AL=05 heksadesimal. Hal itu

menunjukkan bahwa instruksi pertama MOV AL,3

menyebabkan akumulator AL terisi 3 heksadesimal, baris

kedua menyebabkan isi AL ditambah dengan 2 heksadesimal

sehingga menjadi 5 heksadesimal. Pada akhir pelaksanaan

kedua perintah tersebut, DEBUG menghasilkan keadaan

register flag sebagai berikut :

NV UP EI PL NZ NA PE NC

Page 23: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

Page 24: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Dalam bahasa Assembly mempunyai 3 tipe intruksi

dasar yaitu : mnemonic, operan1 dan 2 serta

komentar

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

Page 25: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Contoh Perintah debug :

• A : Address � A 100

• C : Compare � C 0100 L10 0200

• D : Dump � D CS:80

• E : Enter � E 100

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

• E : Enter � E 100

• F : Fill � F 0100 L1 41

• G : Go �

• H : Penjumlahan 2 bilangan heksa

• I : Input � 3FD

• R : register

• RAX � Rubah Nilai AX

• RBX � Rubah Nilai BX

Page 26: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Contoh Perintah debug :

• T = Menjalankan baris program Asembly

• U = Melihat program yang sedang aktif

• W = Menyimpan data ke disk

• ? = Menampilkan layar Help versi debug

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

• ? = Menampilkan layar Help versi debug

Page 27: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Prosedur Percobaan

• Klik menu start pada computer

• Pilih All Programs dan pilih accessories

• Pilih command prompt

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

• Pilih command prompt

• Lalu anda ketika debug pada bagian c prompt dan

tekan Enter

Page 28: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

• Prosedur Percobaan

• Klik menu start pada computer

• Pilih All Programs dan pilih accessories

• Pilih command prompt

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

• Pilih command prompt

• Lalu anda ketika debug pada bagian c prompt dan

tekan Enter

• Kemudian anda ketikan Huruf A 100 dan tekan Enter

• Kenapa A 100 ? � Merupakan segment awal debug

(Program Segmen Prefix)

Page 29: JurusanTeknikInformatika STT –PLN · •AX (akumulator) AX disebutregister akumulatorkarenadigunakanolehCPU untukoperasi aritmatik.Operasi-operasilain juga sedkitlebihefisiendengan

Lalu ketikan program dibawah ini :

mov ah,02

mov dl, 41

int 21

int 20

EKSPLORASI PROSESOR 8086 DENGAN DEBUG

int 20