4-sap 2.pptx

32
Pengantar Arsitektur Komputer SAP-2

Upload: rifan-alvaro

Post on 12-Jul-2016

238 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: 4-SAP 2.pptx

Pengantar Arsitektur Komputer

SAP-2

Page 2: 4-SAP 2.pptx

SAP – 2 Evolusi ke Komputer Modern Arsitektur lebih lengkap dibanding

SAP-1 Instruksi lebih banyak termasuk

jump (Lompat) Menggunakan Register dua Arah Persamaan fundamental SAP-1 dan

SAP-2 lebar data ALU sebesar 8 bit

Page 3: 4-SAP 2.pptx

PC (Program Counter ) Memiliki saluran 16-bit PC=0000 0000 0000 0000 Sampai : PC=1111 1111 1111 1111

Atau PC=0000 H – FFFF H Instruksi selalu mulai :

0000 H 0000 H Instruksi pertama 0001 H Instruksi kedua 0002 H Instruksi ketiga

dst

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

07

Ready

Serial OutAck

07

Page 4: 4-SAP 2.pptx

MAR & Memori Menerima alamat 16-bit Keluaran 2-state ke memori

ROM 2KB berisi program Monitor Inisialisasi saat dinyalakan

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

07

Ready

Serial OutAck

07

ROM

RAM

0000 H07FF H0800 H

FFFF H

Page 5: 4-SAP 2.pptx

MDR (Memory Data Register) Keluaran MDR aktifkan

RAM. Menerima data dari bus,

sblm operasi menulis ke RAM

Mengirim data ke bus, stlh operasi membaca dari RAM

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

07

Ready

Serial OutAck

07

Page 6: 4-SAP 2.pptx

Register Instruksi ( IR ) IR 8-bit mampu menampung 2^8

= 256 Instruksi. SAP-2 hanya 42 Instruksi Kompatibel dengan 8080 /

8085

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 7: 4-SAP 2.pptx

Pengendali-Pengurut Menghasilkan kata kendali

atau mikroinstruksi SAP-2 lebih banyak

Instruksi, pengendali lebih rumit.

Kata CON lebih panjang

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 8: 4-SAP 2.pptx

Akumulator Register 2 Arah Keluaran 3-state ke bus W Terus menerus

menggerakkan ALU

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 9: 4-SAP 2.pptx

ALU & FLAG SAP-2 mengandung

operasi Aritmatik & Logika

FLAG Untuk mengawasi /

mengikuti perubahan keadaan selama beroperasi.

Sign Flag : aktif bila A berubah menjadi negatif

Zero Flag : aktif bila A menjadi nol.

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 10: 4-SAP 2.pptx

Register TMP, B dan C TMP : pengganti

register B Register B dan C

berfungsi sama untuk menyimpan data sementara selama operasi dilakukan.

Input Port SAP-2 mempunyai 2

Input Port. Encoder keyboard Hexa

ke Input Port 1 Serial data ke Input

Port 2 line 7

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 11: 4-SAP 2.pptx

Output Port Mempunyai 2 Output Port Output Port 3 ke Peraga

Hexa Output Port 4 ke Serial Out

line 0

Encoder Hexa

In Port 1

In Port 2

PC

MAR

A

ALU

TEMP

B

C

8

8 8

88

16

Bus W

Memori

MDR

IR

CON

Out Port 3

Out Port 4

16

8

8

8

8

816

8

8

8

8

8

8

Hexa Disp

Flag

8

2

Serial In

Ack

0

7

Ready

Serial OutAck

07

Page 12: 4-SAP 2.pptx

Perangkat Instruksi (Instruction Set)

Operasi dasar yang dapat dilakukan dengan perintah / program.

LDA (Load Data Accumulator) Isi Akumulator dengan isi dari lokasi memori Contoh : LDA 2000H ; /* Isikan Akumulator dengan isi

alamat 2000H */

STA (Store Accumulator) Simpan Isi Akumulator ke lokasi memori yang ditunjuk Contoh : STA 7FFFH ; /* Simpan Isi Akumulator ke

alamat 7FFFH */

OperanOperasi

Page 13: 4-SAP 2.pptx

Perangkat Instruksi (Instruction Set)

MVI < Move immediate > Pindahkan Segera Mengisi Register dengan bilangan yang mengikutinya

Contoh : MVI A, 37H ; /* Isikan Akumulator dengan bilangan

37H */ Jika eksekusi perintah ini, maka : A =0011 0111

Format Instruksi :MVI A, byteMVI B, byteMVI C, byte

Page 14: 4-SAP 2.pptx

ADD BADD CANA BANA CANI byteCALL alamatCMADCR ADCR BDCR CHLTIN byteINR AINR BINR CJM alamatJMP alamatJNZ alamatJZ alamatLDA alamatMOV A,BMOV A,C

8081A0A1E6CD2F3D050D76DB3C040CFAC3C2CA3A7879

MOV B,AMOV B,CMOV C,AMOV C,BMVI A, byteMVI B, byteMVI C, byteNOPORA BORA CORI byteOUT byteRALRARRETSTA alamatSUB BSUB CXRA BXRA CXRI byte

47414F483E060E00B0B1F6D3171FC9329091A8A9EE

INSTRUKSI INSTRUKSIOP CODE OP CODE

Page 15: 4-SAP 2.pptx

Contoh : Bahasa Mesin 8080/8085 Alamat Isi Mnemonik Jumlah2000H 3EH MVI A, 49H 2-byte2001H 49H2002H 06H MVI B, 4AH 2-byte2003H 4AH2004H 0EH MVI C, 4BH 2-byte2005H 4BH2005H 32H STA 6285H 3-byte2006H 85H2007H 62H2009H 76H HLT 1-byte

Page 16: 4-SAP 2.pptx

Instruksi-Instruksi Register

MRI=Memory Reference Instruction Lebih lambat karena memerlukan lebih dari 1 operasi akses memori.

Sedangkan Instruksi Register memindahkan data dari Register ke Register yang lain

MOV Memindahkan data dari satu register ke register

yang lain. Contoh : MOV A, B. /* Pindahkan data dalam

Register B ke Akumulator */

Page 17: 4-SAP 2.pptx

Instruksi-Instruksi Register

ADD Tambahkan isi Register dengan Isi Akumulator Contoh : ADD B Jika : A = 04 H dan B = 02 H, maka eksekusi

ADD B menghasilkan :A = 06 H SUB Kurangkan isi Register dengan Isi Akumulator Jika : C = 03 H, maka eksekusi SUB C diperoleh A = 03 H

Page 18: 4-SAP 2.pptx

Instruksi-Instruksi Register

INR Penambahan isi Register dengan satu angka Contoh : INR B Jika : B = 09 H, maka eksekusi INR B

menghasilkan : B = 0A H DCR Pengurangan isi Register dengan satu angka Jika : C = 03 H, maka eksekusi DCR C diperoleh C = 02 H

Page 19: 4-SAP 2.pptx

CONTOH : Tambahkan bilangan 25 dan 55, simpan hasilnya

pada lokasi memori 5000 H dan tambahkan hasilnya dengan 1, serta simpan di register B.

MVI A, 19 H ; Isikan Accumulator dengan 25 MVI B, 37 H ; Isikan Register B dengan 55ADD B ; Tambahkan Register B dengan AccSTA 5000H ; Simpan Acc pada alamat 5000HINR A ; Tambahkan Isi Acc dengan 1MOV B,A ; Simpan Isi Acc pada Register BHLT ; Berhenti

Page 20: 4-SAP 2.pptx

INSTRUKSI JUMP DAN CALL

JMP Mengambil Instruksi berikutnya pada Alamat yang

ditunjuk Selalu diikuti Alamat yang diisikan ke Pencacah Program Tanpa syarat

JM Jump if Minus < Lompat ke Alamat yang ditunjuk Jika A

bernilai Minus > SAP-2 mempunyai Zero Flag (Z) dan Sign Flag (S) S = 0 jika A >= 0 dan S = 1 jika A < 0 Lompat dengan Syarat jika S = 1

Page 21: 4-SAP 2.pptx

INSTRUKSI JUMP DAN CALL

JZ Jump if Zero < lompat ke Alamat yang ditunjuk Jika A

bernilai Nol > Z = 1 jika A = 0 dan Z = 0 jika A~= 0 Lompat dengan Syarat Z = 1

JNZ Jump if Not Zero < Lompat ke Alamat yang ditunjuk Jika

A tidak sama dengan Nol > Lompat dengan Syarat jika Z = 0

Page 22: 4-SAP 2.pptx

ILUSTRASI :2000 H -----------

-----------2005 H JMP 3000 H2006 H ----------- -----------

-----------3000 H -----------

-----------

ILUSTRASI :2000 H -----------

-----------2005 H JM 3000 H2006 H ----------- -----------

-----------3000 H -----------

-----------

Tanpa Syarat Jika S = 1

Page 23: 4-SAP 2.pptx

ILUSTRASI :2000 H -----------

-----------2005 H JZ 3000 H2006 H ----------- -----------

-----------3000 H -----------

-----------

ILUSTRASI :2000 H -----------

-----------2005 H JNZ 3000 H2006 H ----------- -----------

-----------3000 H -----------

-----------

Jika Z = 1 Jika Z = 0

Page 24: 4-SAP 2.pptx

ILUSTRASI :2000 H -----------

-----------2005 H CALL 5000 H2006 H ----------- -----------

-----------5000 H -----------

----------- -----------

RET

ILUSTRASI : Alamat Isi Simbol

2000 H 0E H MVI C,03 H2001 H 03 H 2002 H 0D H DCR C2003 H CA H JZ 2009 H2004 H 09 H 2005 H 20 H2006 H C3 H JMP 2002H2007 H 02 H2008 H 20 H2009 H 76 H HLT

Page 25: 4-SAP 2.pptx

LOOP DAN LABEL LOOP < Simpal >

Bagian dari Program yang diulang-ulang Lihat Ilustrasi

LABEL Tanda bantu yang digunakan untuk instruksi

lompat dan panggil Diakhiri dengan : < titik dua > Terdiri dari 1 – 6 karakter, yang pertama

selalau huruf.

Page 26: 4-SAP 2.pptx

INSTRUKSI LOGIKA

ILUSTRASI :Label Mnemonik Komentar

MVI A,00 H ; Kosongkan AkumulatorMVI B,0C H ; Isikan desimal 12 ke BMVI C,08 H ; Preset C dengan 8

REPEAT : ADD B ; Tambahkan dengan 12DCR C ; Kurangi isi C dengan 1JZ DONE ; Lompat ke DONEJMP REPEAT ; Ulangi / Lompat

DONE : HLT ; Berhenti

Page 27: 4-SAP 2.pptx

INSTRUKSI LOGIKA CMA

Complement the Accumulator (Komplemenkan isi Akumulator)

Melakukan komplemen-1 pada Isi Akumulator ANA

AND-kan Isi Akumulator dengan isi Register tertentu Contoh : ANA B ; AND-kan Isi Akumulator dengan isi

Register B Jika : A = 1110 1010

B = 1000 0101 Maka Eksekusi dari ANA B menghasilkan :

A = 1000 0000

Page 28: 4-SAP 2.pptx

INSTRUKSI LOGIKA ORA

OR –kan Isi Akumulator dengan Isi Register tertentu Jika : A = 1110 1010 B = 1000 0101 ; maka Eksekusi ORA B menghasilkan A = 1110 1111

XRA XOR-kan Isi Akumulator dengan isi Register tertentu Contoh : XRA B ; AND-kan Isi Akumulator dengan isi

Register B Jika : A = 1110 1010B = 1000 0101 ; Maka Eksekusi XRA B menghasilkan :A = 0110 1111

Page 29: 4-SAP 2.pptx

INSTRUKSI LOGIKA ANI

AND –kan segera Isi Akumulator dengan Byte tertentu Jika : A = 1110 1010, Maka Eksekusi ANI C7 H

menghasilkan : = 1100 0111 < C7 H > A = 1100 0010

ORI OR-kan Segera Isi Akumulator dengan Byte tertentu Eksekusi ORI C7 H menghasilkan : A = 1100 0111

XRI XOR-kan Segera Isi Akumulator dengan Byte Tertentu

Page 30: 4-SAP 2.pptx

INSTRUKSI LAINNYA NOP

No Operation ( tidak ada oprasi ) Untuk pengaturan waktu atau Waktu tunda Jika 1 NOP = 4 T, maka 100 NOP menunggu 400 T

IN Instruksi untuk memberi masukan Memindahkan data dari Input Port ke Akumulator Contoh : IN 02 H ; Memindahkan data dari Port 2 ke

Akumulator OUT

Memindahkan Isi Akumulator ke Output Port Contoh : OUT 03 H ; Pindahkan Isi Akumulator ke Output

Port 3

Page 31: 4-SAP 2.pptx

INSTRUKSI LAINNYA RAL

Rotate the Accumulator Left < Putar akumulator ke kiri >

RAR Rotate the Accumulator Right < Putar akumulator ke

kanan > Jika A = 0100 1001, maka Eksekusi : RAL A = 1001 0010 RAR A = 1010 0100

MSB LSB MSB LSB

Page 32: 4-SAP 2.pptx

ILUSTRASI :Label Mnemonik WaktuMVI A,00 H ; 1 x 7 x TMVI B,0C H ; 1 x 7 x TMVI C,08 H ; 1 x 7 x TREPEAT : ADD B ; 4 x 8 x TDCR C ; 4 x 8 x TJZ DONE ; 7 x 7 x T (tanpa Lompatan); 10 x 1 x T (dengan Lompatan) JMP REPEAT; 10 x 7 x T (dengan Lompatan) DONE: HLT ; 5 x 1 x T