simple as posible 2 (bag-1) · (pertemuan ke-17) prodi s1 teknik ... organisasi dan arsitektur...

36
Maret 2016 Simple As Posible 2 (bag-1) (Pertemuan ke-17) Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom Disusun ulang oleh: Andrian Rakhmatsyah Diedit ulang oleh: Endro Ariyanto

Upload: lecong

Post on 02-May-2019

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Maret 2016

Simple As Posible – 2 (bag-1) (Pertemuan ke-17)

Prodi S1 Teknik Informatika Fakultas Informatika

Universitas Telkom

Disusun ulang oleh:

Andrian Rakhmatsyah

Diedit ulang oleh:

Endro Ariyanto

Page 2: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #1

Arsitektur SAP-2

Page 3: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2

Accumulator

A

Controller-

Sequencer

Instruction

Register

RAM

16 x 8

Input &

MAR

Program Counter

Adder/Substractor

B

Register

Output

Register

Binary Display

8

8

4

84

8

8

4

8

8Cp

CLK

CLREp

CLK

CE

CLK

CLR

CLK

EA

SU

CLK

CLK

LO

LM

LI

EI

CLK

CLK

CLR

CLR

EU

LB

LA

SAP-1 BLOCK ARCHITECTURE

Arsitektur SAP-2 vs SAP -1

Page 4: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #3

Komponen SAP-2 (1)

HEXADECIMAL KEYBOARD ENCODER Untuk memasukkan instruksi dan data hexadesimal Dihubungkan dengan Input Port 1 Mengirimkan sinyal READY sebagai bit-0 pada port 2 Bit READY ini mengindikasikan data pada port 1 sudah valid INPUT PORT 1 Menerima masukan dari HEXADECIMAL KEYBOARD

ENCODER INPUT PORT 2 Menerima sinyal SERIAL IN dari input port 1 Untuk mengirimkan data ke peripheral

Page 5: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #4

Komponen SAP-2 (2)

PROGRAM COUNTER Menunjukkan alamat instruksi selanjutnya yang akan

dieksekusi Memiliki 16-bit (2 byte): 0000H – FFFFH MAR (MEMORY ADDRESS REGISTER) Menyimpan alamat memori dari instruksi/data Menerima masukan dari PC sebanyak 2 byte

MEMORI Memiliki ukuran 64K x 8 bit. Terbagi menjadi 2 bagian. ROM: Alamat 0000H – 07FFH (=2K) berisi program monitor

(inisialisasi, decode masukan dari keyboard) RAM: Alamat 08FFH – FFFFH (=62K), user program

Page 6: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #5

Komponen SAP-2 (3)

MDR (MEMORY DATA REGISTER) Menyimpan data sementara dari Memori (RAM) Untuk Akses Memori : Akses Baca : Memori MDR Bus Register Akses Tulis : Register Bus MDR Memori

INSTRUCTION REGISTER Register tempat penyimpanan instruction set (decode) Berisi Opcode 8-bit CONTROL UNIT Penghasil word kendali ACCUMULATOR Penyangga data operand atau hasil aritmatika/logik

Page 7: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #6

Komponen SAP-2 (4)

ALU (ARITHMATIC LOGIC UNIT) Unit pemroses aritmatika FLAGS Register yang mengikuti hasil proses Aritmatik/Logika pada

ALU. Berukuran 2-bit. Menyimpan status S (Sign) dan Z (Zero) S = 1 jika Accumulator (A) < 0 dan sebaliknya Z = 1 jika Accumulator (A) = 0 dan sebaliknya

TMP Register, B Register and C Register Penyimpan data operand kedua untuk operasi

aritmatika/Logik

Page 8: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #7

Komponen SAP-2 (5)

OUTPUT PORT 3

Penyimpan data Accumulator yang akan ditampilkan di Hexadesimal Display

HEXADECIMAL DISPLAY

Menampilkan isi Accumulator dari Output Port 3

OUTPUT PORT 4

Pin ke-7 (bit-7) dapat digunakan sebagai ACKNOWLEDGE (ACK) sinyal ke Hexadecimal encoder

Sinyal (bit) ACK dan bit READY ini bagian dari konsep Handshaking

Penyimpan data Accumulator yang akan ditampilkan secara SERIAL (dari pin/bit-0)

Page 9: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #8

Pemrosesan Instruksi

1.Fase Pengambilan (Fetch Cycle), bersifat tetap yaitu 3 pulsa – T1 : Address State

– T2 : Increment State

– T3 : Memory State

2.Fase Eksekusi (Execution Cycle), jumlah pulsa tergantung instruksi

Page 10: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #9

Klasifikasi Instruksi (1)

• Instruksi Beracuan Memori (MRI) – LDA (Load Accumulator) – STA (Store Accumulator) – MVI (Move Immediate)

• Instruksi Register

– MOV (move) – ADD – SUB (substract) – INR (increment) – DCR (decrement)

Page 11: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #10

Klasifikasi Instruksi (2)

• Instruksi Jump dan CALL • Instruksi Logika

• JMP (jump)

• JM (jump if minus)

• JZ (jump if zero)

• JNZ (jump if not zero)

• CALL (call the subroutine)

• RET (return)

– CMA (Complement the Accumulator)

– ANA, (AND the Accumulator)

– ORA, (OR The Accumulator)

– XRA, (XOR the Accumulator)

– ANI (AND immediate)

– ORI (OR immediate)

– XRI (XOR immediate)

Page 12: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #11

Klasifikasi Instruksi (3)

• Instruksi Lain – NOP (No Operation)

– HLT (Halt)

– IN (Input)

– OUT (Output)

– RAL (Rotate the Accumulator Left)

– RAR (Rotate the Accumulator Right)

Page 13: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #12

Klasifikasi Instruksi (4)

Modus Pengalamatan 1. Pengalamatan langsung (Direct Addressing) Contoh : LDA address 2. Pengalamatan Segera (Immediate Addressing) Contoh : MVI A, byte 3. Pengalamatan Register (Register Addressing) Contoh : MOV A, B 4. Pengalamatan Tersirat (Implied Addressing) Contoh : RAL

Page 14: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #13

Instruksi Beracuan Memori (MRI) (1)

Dibagi menjadi 2

1. Operand berupa alamat

Format Dasar : Opcode, address

Contoh : LDA 2000H

2. Operand berupa nilai konstanta (byte)

Format Dasar : Opcode, byte

Contoh : MVI A, 49H

Page 15: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #14

Instruksi Beracuan Memori (MRI) (2)

Format instruksi :

LDA address ; LDA adalah opcodenya

STA address ; STA adalah opcodenya

Contoh

Initial :

AddrMem 2000H = 8AH

LDA 2000H ; A CON(2000H)

STA 7FFFH ; AddrMem 7FFFH CON(A)

Final :

AddrMem 2000H = 8AH

Accumulator (A) = 8AH

AddMem 7FFFH = 8AH

Page 16: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #15

Format instruksi : MVI A, byte ; MVI reg, … adalah opcode MVI B, byte ; byte = nilai dalam ukuran byte MVI C, byte

Contoh Initial : Register A = 8AH; B = 00H; C = 00H MVI A, 00H ; CON(A) 00H MVI B, 8AH ; CON(B) 8AH MVI C, 8AH ; CON(C) 8AH Final : A = 00H B = C = 8AH

Instruksi Beracuan Memori (MRI) (3)

Page 17: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #16

Instruksi Beracuan Memori (MRI) (4)

Instruction Opcode T States Flags Addressing Bytes Arti

LDA address 3AH 13 None Direct 3 A Maddress

STA address 32H 13 None Direct 3 Maddress A

MVI A, byte 3EH 7 None Immediate 2 A byte

MVI B, byte 06H 7 None Immediate 2 B byte

MVI C, byte 0EH 7 None Immediate 2 C byte

Page 18: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #17

Instruksi Beracuan Memori (MRI) (5)

Contoh : Tunjukkan mnemonik dari program untuk, Mengisi akumulator dengan 49H, Mengisi register B dengan 4AH Mengisi register C dengan 4BH, dan kemudian Menyimpan isi Accumulator ke lokasi memori 6285H. Terjemahkan ke dalam bahasa mesin mulailah pada alamat 2000H! Jawab :

MVI A,49H ; A 49H MVI B,4AH ; B 4AH MVI C,4BH ; C 4BH STA 6285H ; CON(6285H) 49H HLT ; Selesai

Page 19: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #18

Instruksi Beracuan Memori (MRI) (6)

Alamat Isi Mnemonik

2000H 3EH MVI A, 49H ; Big Endian

2001H 49H

2002H 06H MVI B, 4AH

2003H 4AH

2004H 0EH MVI C, 4BH

2005H 4BH

2006H 32H STA 6285H

2007H 85H

2008H 62H

2009H 76H HLT

Page 20: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #19

Instruksi Register (1)

Instruction Opcode T Flags Addressing Bytes Arti

ADD B 80H 4 S, Z Register 1 ; A A + B

ADD C 81H 4 S, Z Register 1 ; A A + C

DCR A 3DH 4 S, Z Register 1 ; A A – 1

DCR B 05H 4 S, Z Register 1 ; B B – 1

DCR C 0DH 4 S, Z Register 1 ; C C – 1

INR A 3CH 4 S, Z

Register 1 ; A A + 1

INR B 04H 4 S, Z

Register 1 ; B B + 1

INR C 0CH 4 S, Z

Register 1 ; C C + 1

Page 21: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #20

Instruksi Register (2)

Instruction Opcode T Flags Addressing Bytes Arti

MOV A, B 78H 4 None Register 1 ; A B

MOV A, C 79H 4 None Register 1 ; A C

MOV B, A 47H 4 None Register 1 ; B A

MOV B, C 41H 4 None Register 1 ; B C

MOV C, A 4FH 4 None Register 1 ; C A

MOV C, B 48H 4 None Register 1 ; C B

SUB B 90H 4 S, Z Register 1 ; A A – B

SUB C 91H 4 S, Z Register 1 ; A A - C

Page 22: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #21

Instruksi Register (3)

Contoh, Buatlah Program SAP-2 untuk penjumlahan angka-angka desimal 23 dan 45. Jawabannya disimpan pada lokasi memori 5600H. Kemudian jawaban itu ditambahkan dengan 1 dan disimpan di register C! Jawab

MVI A,17H ; A 23d

MVI B,2DH ; B 45d ADD B ; A 23d + 45d STA 5600H ; M5600H 68d

INR A ; A 68d + 1d MOV C, A ; C 69d HLT ; Selesai

Page 23: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #22

Instruksi Jump dan CALL (1)

SAP-2 memiliki 3 macam instruksi Jump (lompat) Jump tanpa syarat

Jump bersyarat

Subrutin

Instruksi ini mengubah urutan program, program akan berpindah ke bagian program lainnya

Page 24: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #23

Instruksi Jump dan CALL (2)

Instruction Opcode T Flags Addressing Bytes Arti

CALL address CDH 18 None Immediate 3 PC address

JM address FAH 10/7 None Immediate 3 PC address jika S = 1

JMP address C3H 10 None Immediate 3 PC address

JNZ address C2H 10/7 None Immediate 3 PC address jika Z = 0

JZ address CAH 10/7 None Immediate 3 PC address jika Z = 1

RET C9H 10 None Implied 1 PC Return address

Page 25: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #24

Instruksi Jump (1)

Misal, address Instruksi

2005H JMP 3000H

Ilustrasi

2000H …………………

…………………

…………………

2005H JMP 3000H ; PC 2006H

2006H 00H ; PC 2007H

2007H 30H ; PC 3000H 2008H MOV A, B

… …

3000H MOV B, C ; PC 3001H

..................

…………………

Page 26: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #25

Instruksi Jump (2)

Contoh,

Lakukan assembli-tangan pada program di bawah ini dimulai dari lokasi memori 2000H:

MVI C,03H

DCR C

JZ 2009H

JMP 2002H

HLT

Page 27: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #26

Instruksi Jump (3)

Jawab Alamat Isi Simbolik 2000H 0EH MVI C,03H 2001H 03H 2002H 0DH DCR C 2003H CAH JZ 2009H 2004H 09H 2005H 20H 2006H C3H JMP 2002H 2007H 02H 2008H 20H 2009H 76H HLT

Page 28: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #27

Instruksi Jump Bersyarat

Misal, address Instruksi 2005H JM 3000H Ilustrasi 2000H ………………… ………………… ………………… 2005H JM 3000H ; PC 2006H 2006H ; PC 2007H 2007H ; PC 2008H (7T) atau 3000H

(10T) 2008H MOV A, B … … 3000H MOV B, C ; PC 3001H .................. …………………

Page 29: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #28

Contoh (1)

ProMul: Tuliskan program perkalian bilangan desimal 12 dengan 8

Jawab : Label Instruksi Komentar MVI A,00H ; Kosongkan isi A MVI B, 0CH ; Isikan desimal 12 ke B MVI C,08H ; Isikan desimal 8 ke C REPEAT: ADD B ; Tambahkan A dengan B DCR C ; Kurangkan isi C JZ END ; Periksa apakah C = 0

JMP REPEAT ; Ulangi END: HLT ; Berhenti

Page 30: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #29

Contoh (2)

Tuliskan Program ProMul dengan menggunakan JNZ kemudian lakukan assembli-tangan! Alamat Isi Instruksi

2000H 3EH MVI A,00H 2001H 00H 2002H 06H MVI B, 0CH 2003H 0CH 2004H 0EH MVI C,08H 2005H 08H 2006H 80H ADD B 2007H 0DH DCR C 2008H C2H JNZ 2006H 2009H 06H 200AH 20H 200BH 76H

Label Instruksi MVI A,00H MVI B, 0CH MVI C,08H LOOP: ADD B DCR C JNZ LOOP END: HLT

Page 31: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #30

Contoh (3)

Buatlah program untuk menjumlahkan angka desimal: 19 + 21 + 5 * 8 – 58 dengan menggunakan Instruksi JUMP! Alamat Mnemonik Komentar 2000H MVI A,13H ; A 19 2002H MVI B,15H ; B 21 2004H ADD B ; A A + B 2005H MVI B,08H ; B 8 2007H MVI C,05H ; C 5 2009H ADD B ; A A + B 200AH DCR C ; C C - 1 200BH JZ 2011H ; Lompat jika Z = 1 200EH JMP 2009H ; Lompat 2011H MVI B,3AH ; B 58 2013H SUB B ; A A - B 2014H HLT ; Selesai

Page 32: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #31

Contoh (4) Alamat Isi Mnemonik 2000H 3EH MVI A,13H 2001H 13H 2002H 06H MVI B,15H 2003H 15H 2004H 80H ADD B 2005H 06H MVI B,08H 2006H 08H 2007H 0EH MVI C,05H 2008H 05H 2009H 80H ADD B 200AH 0DH DCR C 200BH CAH JZ 2011H 200CH 11H 200DH 20H 200EH C3H JMP 2009H 200FH 09H 2010H 20H 2011H 06H MVI B,3AH 2012H 3AH 2013H 90H SUB B 2014H 76H HLT

Page 33: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #32

CALL & RET (1)

• Subroutine yang disimpan di suatu lokasi memori tertentu untuk digunakan oleh program lain.

• Analogi sebuah fungsi dalam PASCAL, yang dapat menghasilkan keluaran.

• RET digunakan pada setiap akhir sebuah subroutine, artinya memberitahu komputer untuk kembali ke program semula.

• Isi Program Counter akan disimpan secara otomatis dalam 2 lokasi memori yaitu FFFEH & FFFFH pada saat instruksi CALL dieksekusi.

• Setelah selesai dilaksanakan instruksi RET akan memberitahu komputer agar isi pada 2 lokasi memori FFFEH & FFFFH diisikan ke Program Counter untuk mengembalikan kendali ke program semula.

Page 34: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #33

CALL & RET (2)

Buatlah Program pada contoh 6 (di buku) dengan menggunakan CALL dan RET pada proses perkalian 5 * 8 jika lokasi CALL berada di F006H! Alamat Mnemonik 2000H MVI A,13H 2002H MVI B,15H 2004H ADD B 2005H MVI B,08H 2007H MVI C,05H 2009H CALL F006H 200CH MVI B,3AH 200EH SUB B 200FH HLT

Alamat Mnemonik F006H ADD B F007H DCR C F008H JZ F006H F00BH RET

Page 35: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #34

CALL & RET (3) Alamat Isi Simbolik 2000H 3EH MVI A,13H 2001H 13H 2002H 06H MVI B,15H 2003H 15H 2004H 80H ADD B 2005H 06H MVI B,08H 2006H 08H 2007H 0EH MVI C,05H 2008H 05H 2009H CD CALL F006H 200AH 06H 200BH F0H 200CH 06H MVI B,3AH 200DH 3AH 200EH 90H SUB B 200FH 76H HLT

Alamat Isi Simbolik

F006H 80H ADD B

F007H 0DH DCR C

F008H CAH JZ F006H

F009H 06H

F00AH F0H

F00BH C9H RET

Page 36: Simple As Posible 2 (bag-1) · (Pertemuan ke-17) Prodi S1 Teknik ... Organisasi dan Arsitektur Komputer – CSG2G3/2016 #2 A c c umulato r A ... Organisasi dan Arsitektur Komputer

Organisasi dan Arsitektur Komputer – CSG2G3/2016 #35

• Malvino, Albert Paul; Jerald A. Brown. 1999. “Digital Computer Electronics”.3rd edition. McGraw-Hill. New York

Referensi